From 6d8a361b83be10127c3b46c02173bbc622324bd8 Mon Sep 17 00:00:00 2001 From: Greg Wilson Date: Tue, 25 Feb 2025 10:55:53 -0500 Subject: [PATCH 1/5] feat: remove detailed description of font options and regenerate schema Removing this text here ensures it won't be present when plotly.py code is generated, which reduces bundle size. --- src/plots/font_attributes.js | 12 +- test/plot-schema.json | 562 +++++++++++++++++------------------ 2 files changed, 284 insertions(+), 290 deletions(-) diff --git a/src/plots/font_attributes.js b/src/plots/font_attributes.js index 892b6aa0bd6..14b9f8efbea 100644 --- a/src/plots/font_attributes.js +++ b/src/plots/font_attributes.js @@ -49,15 +49,9 @@ module.exports = function(opts) { editType: editType, description: [ 'HTML font family - the typeface that will be applied by the web browser.', - 'The web browser will only be able to apply a font if it is available on the system', - 'which it operates. Provide multiple font families, separated by commas, to indicate', - 'the preference in which to apply fonts if they aren\'t available on the system.', - 'The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server,', - 'where only a select number of', - 'fonts are installed and supported.', - 'These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*,', - '*Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*,', - '*PT Sans Narrow*, *Raleway*, *Times New Roman*.' + 'The web browser can only apply a font if it is available on the system where', + 'it runs. Provide multiple font families, separated by commas, to indicate', + 'the order in which to apply fonts if they aren\'t available.', ].join(' ') }, size: { diff --git a/test/plot-schema.json b/test/plot-schema.json index 6aa77cf3338..a34d163e309 100644 --- a/test/plot-schema.json +++ b/test/plot-schema.json @@ -761,7 +761,7 @@ "description": "Sets the annotation text font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -869,7 +869,7 @@ "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -1415,7 +1415,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -1661,7 +1661,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -2000,7 +2000,7 @@ "description": "Sets the global font. Note that fonts used in traces and other layout components inherit from the global font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "\"Open Sans\", verdana, arial, sans-serif", "editType": "calc", "noBlank": true, @@ -2840,7 +2840,7 @@ "description": "Sets the default hover label font used by all traces on the graph.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Arial, sans-serif", "editType": "none", "noBlank": true, @@ -2931,7 +2931,7 @@ "description": "Sets the font for group titles in hover (unified modes). Defaults to `hoverlabel.font`.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -3216,7 +3216,7 @@ "description": "Sets the font used to text the legend items.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "legend", "noBlank": true, "strict": true, @@ -3315,7 +3315,7 @@ "description": "Sets the font for group titles in legend. Defaults to `legend.font` with its size increased about 10%.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "legend", "noBlank": true, "strict": true, @@ -3463,7 +3463,7 @@ "description": "Sets this legend's title font. Defaults to `legend.font` with its size increased about 20%.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "legend", "noBlank": true, "strict": true, @@ -3933,7 +3933,7 @@ "description": "Sets the icon text font (color=map.layer.paint.text-color, size=map.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "plot", "noBlank": true, @@ -4339,7 +4339,7 @@ "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "plot", "noBlank": true, @@ -4675,7 +4675,7 @@ "description": "Sets the new shape label text font.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -4857,7 +4857,7 @@ "description": "Sets this legend group's title font.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -5306,7 +5306,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -6028,7 +6028,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -6245,7 +6245,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -6494,7 +6494,7 @@ "description": "Sets the annotation text font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -6602,7 +6602,7 @@ "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -7460,7 +7460,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -7670,7 +7670,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -8199,7 +8199,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -8409,7 +8409,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -8938,7 +8938,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -9148,7 +9148,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -9443,7 +9443,7 @@ "description": "Sets the shape label text font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -9625,7 +9625,7 @@ "description": "Sets this legend group's title font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -9964,7 +9964,7 @@ "description": "Sets the font of the current value label text.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -10089,7 +10089,7 @@ "description": "Sets the font of the slider step labels.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -10633,7 +10633,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -10916,7 +10916,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -11281,7 +11281,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -11498,7 +11498,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -11794,7 +11794,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12011,7 +12011,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12313,7 +12313,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12530,7 +12530,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12719,7 +12719,7 @@ "description": "Sets the title font.", "editType": "layoutstyle", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "layoutstyle", "noBlank": true, "strict": true, @@ -12840,7 +12840,7 @@ "description": "Sets the subtitle font.", "editType": "layoutstyle", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "layoutstyle", "noBlank": true, "strict": true, @@ -13228,7 +13228,7 @@ "description": "Sets the font of the update menu button text.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -14139,7 +14139,7 @@ "description": "Sets the font of the range selector button text.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -14540,7 +14540,7 @@ "description": "Sets the tick font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -14829,7 +14829,7 @@ "description": "Sets this axis' title font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -15774,7 +15774,7 @@ "description": "Sets the tick font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -16063,7 +16063,7 @@ "description": "Sets this axis' title font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -16528,7 +16528,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -16732,7 +16732,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -16882,7 +16882,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -17233,7 +17233,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -17479,7 +17479,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -17939,7 +17939,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -18154,7 +18154,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -18716,7 +18716,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -18915,7 +18915,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -19266,7 +19266,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -19512,7 +19512,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -20287,7 +20287,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -20503,7 +20503,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -21824,7 +21824,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -22043,7 +22043,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -22775,7 +22775,7 @@ "description": "Sets the tick font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -22959,7 +22959,7 @@ "description": "Sets this axis' title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -23446,7 +23446,7 @@ "description": "Sets the tick font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -23630,7 +23630,7 @@ "description": "Sets this axis' title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -23791,7 +23791,7 @@ "description": "The default font used for axis & tick labels on this carpet", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "\"Open Sans\", verdana, arial, sans-serif", "editType": "calc", "noBlank": true, @@ -23901,7 +23901,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -24336,7 +24336,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -24582,7 +24582,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -24860,7 +24860,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -25059,7 +25059,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -25623,7 +25623,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -25869,7 +25869,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -26141,7 +26141,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -26340,7 +26340,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -26900,7 +26900,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -27146,7 +27146,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -27418,7 +27418,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -27617,7 +27617,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -28216,7 +28216,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -28462,7 +28462,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -28728,7 +28728,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -28927,7 +28927,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -29561,7 +29561,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -29807,7 +29807,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -30019,7 +30019,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -30289,7 +30289,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -30492,7 +30492,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -30712,7 +30712,7 @@ "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -31378,7 +31378,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -31624,7 +31624,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -31830,7 +31830,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -32062,7 +32062,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -32604,7 +32604,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -32850,7 +32850,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -33112,7 +33112,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -33321,7 +33321,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -33819,7 +33819,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -34065,7 +34065,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -34327,7 +34327,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -34536,7 +34536,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -34992,7 +34992,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -35195,7 +35195,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -35345,7 +35345,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -35696,7 +35696,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -35942,7 +35942,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -36298,7 +36298,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -36484,7 +36484,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -37020,7 +37020,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -37212,7 +37212,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -37378,7 +37378,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -37690,7 +37690,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -37882,7 +37882,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -38309,7 +38309,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -38555,7 +38555,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -38840,7 +38840,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -39043,7 +39043,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -39219,7 +39219,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -40001,7 +40001,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -40197,7 +40197,7 @@ "description": "Sets the font used for `text` lying inside the bar.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -40300,7 +40300,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -40651,7 +40651,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -40897,7 +40897,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -41351,7 +41351,7 @@ "description": "Sets the font used for `text` lying outside the bar.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -41512,7 +41512,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -42097,7 +42097,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -42343,7 +42343,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -42631,7 +42631,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -42818,7 +42818,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -43017,7 +43017,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -43595,7 +43595,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -43841,7 +43841,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -44048,7 +44048,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -44321,7 +44321,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -44508,7 +44508,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -44752,7 +44752,7 @@ "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -45247,7 +45247,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -45440,7 +45440,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -45605,7 +45605,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -45956,7 +45956,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -46202,7 +46202,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -46566,7 +46566,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -46745,7 +46745,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -46941,7 +46941,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -47322,7 +47322,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -47513,7 +47513,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -47851,7 +47851,7 @@ "description": "Set the font used to display the delta", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -48191,7 +48191,7 @@ "description": "Sets the color bar's tick label font", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -48600,7 +48600,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -48738,7 +48738,7 @@ "description": "Set the font used to display main number", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -48878,7 +48878,7 @@ "description": "Set the font used to display the title", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -49310,7 +49310,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -49556,7 +49556,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -49848,7 +49848,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -50057,7 +50057,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -50830,7 +50830,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -51076,7 +51076,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -51389,7 +51389,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -51638,7 +51638,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -52216,7 +52216,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -52444,7 +52444,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -52990,7 +52990,7 @@ "description": "Sets the font for the `dimension` labels.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -53081,7 +53081,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -53426,7 +53426,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -53672,7 +53672,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -53933,7 +53933,7 @@ "description": "Sets the font for the `category` labels.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -54251,7 +54251,7 @@ "description": "Sets the font for the `dimension` labels.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -54358,7 +54358,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -54709,7 +54709,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -54955,7 +54955,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -55240,7 +55240,7 @@ "description": "Sets the font for the `dimension` range values.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -55348,7 +55348,7 @@ "description": "Sets the font for the `dimension` tick values.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -55672,7 +55672,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -55864,7 +55864,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -56042,7 +56042,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -56318,7 +56318,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -56523,7 +56523,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -56717,7 +56717,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -57091,7 +57091,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -57260,7 +57260,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -57525,7 +57525,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -57890,7 +57890,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -58167,7 +58167,7 @@ "description": "Sets the font for node labels", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -58754,7 +58754,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -58963,7 +58963,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -59412,7 +59412,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -59658,7 +59658,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -60700,7 +60700,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -61492,7 +61492,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -61691,7 +61691,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -62042,7 +62042,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -62288,7 +62288,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -62751,7 +62751,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -62997,7 +62997,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -63528,7 +63528,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -63936,7 +63936,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -64144,7 +64144,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -64578,7 +64578,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -64824,7 +64824,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -65831,7 +65831,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -66220,7 +66220,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -66429,7 +66429,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -66865,7 +66865,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -67111,7 +67111,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -68111,7 +68111,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -68662,7 +68662,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -68861,7 +68861,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -69267,7 +69267,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -69513,7 +69513,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -70466,7 +70466,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -70985,7 +70985,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -71194,7 +71194,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -71589,7 +71589,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -71835,7 +71835,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -72203,7 +72203,7 @@ "description": "Sets the icon text font (color=map.layer.paint.text-color, size=map.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "calc", "noBlank": true, @@ -72522,7 +72522,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -72731,7 +72731,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -73126,7 +73126,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -73372,7 +73372,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -73740,7 +73740,7 @@ "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "calc", "noBlank": true, @@ -74004,7 +74004,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -74212,7 +74212,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -74646,7 +74646,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -74892,7 +74892,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -75920,7 +75920,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -76314,7 +76314,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -76513,7 +76513,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -76906,7 +76906,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -77152,7 +77152,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -78127,7 +78127,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -78458,7 +78458,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -78676,7 +78676,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -79110,7 +79110,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -79356,7 +79356,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -80378,7 +80378,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -80767,7 +80767,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -80975,7 +80975,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -81409,7 +81409,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -81655,7 +81655,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -82675,7 +82675,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -83077,7 +83077,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -83276,7 +83276,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -83639,7 +83639,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -83885,7 +83885,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85160,7 +85160,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85406,7 +85406,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85673,7 +85673,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -85866,7 +85866,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -86484,7 +86484,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -86677,7 +86677,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -86854,7 +86854,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -87205,7 +87205,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -87451,7 +87451,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -87815,7 +87815,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -88014,7 +88014,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -88475,7 +88475,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -88721,7 +88721,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -89272,7 +89272,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -89471,7 +89471,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -89944,7 +89944,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -90299,7 +90299,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -90587,7 +90587,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -90756,7 +90756,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -91103,7 +91103,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -91296,7 +91296,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -91450,7 +91450,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -91801,7 +91801,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -92047,7 +92047,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -92456,7 +92456,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -92635,7 +92635,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -92831,7 +92831,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -93253,7 +93253,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -93473,7 +93473,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -94829,7 +94829,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -95075,7 +95075,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -95367,7 +95367,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -95576,7 +95576,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -96318,7 +96318,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -96553,7 +96553,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -96703,7 +96703,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -96881,7 +96881,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -97067,7 +97067,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, From ffe2a7df82a015804dbdbdd1cc1dc2e821d8ceae Mon Sep 17 00:00:00 2001 From: Cameron DeCoster Date: Wed, 23 Jul 2025 17:36:27 -0600 Subject: [PATCH 2/5] Update version, date in documentation --- CITATION.cff | 4 ++-- README.md | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index ced5a1c1324..f0778d81958 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -9,7 +9,7 @@ authors: - family-names: "Samimi" given-names: "Mojtaba" title: "Open source Plotly charting library" -version: 3.0.2 +version: 3.0.3 doi: 10.5281/zenodo.13964707 -date-released: 2025-07-22 +date-released: 2025-07-23 url: "https://github.com/plotly/plotly.js" diff --git a/README.md b/README.md index d75781e8d9e..56ed22e2477 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ You may also consider using [`plotly.js-dist`](https://www.npmjs.com/package/plo ```html - +
@@ -79,7 +79,7 @@ You may also consider using [`plotly.js-dist`](https://www.npmjs.com/package/plo Alternatively you may consider using [native ES6 import](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) in the script tag. ```html ``` @@ -89,7 +89,7 @@ Fastly supports Plotly.js with free CDN service. Read more at + ``` > Please note that as of v2 the "plotly-latest" outputs (e.g. https://cdn.plot.ly/plotly-latest.min.js) will no longer be updated on the CDN, and will stay at the last v1 patch v1.58.5. Therefore, to use the CDN with plotly.js v2 and higher, you must specify an exact plotly.js version. From d08587959301d4466736a7f8d7804b6666078ca4 Mon Sep 17 00:00:00 2001 From: Cameron DeCoster Date: Wed, 23 Jul 2025 17:48:45 -0600 Subject: [PATCH 3/5] Update changelog --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4bff743c1a..928bc014055 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,11 @@ To see all merged commits on the master branch that will be part of the next plo where X.Y.Z is the semver of most recent plotly.js release. +## [3.0.3] -- 2025-07-23 + +### Removed + - Remove detailed description of font options [[7348](https://github.com/plotly/plotly.js/pull/7348)] + ## [3.0.2] -- 2025-07-22 ### Fixed From 2bb6513d465e00de47bda96f292c3d2086c750e1 Mon Sep 17 00:00:00 2001 From: Cameron DeCoster Date: Wed, 23 Jul 2025 17:49:26 -0600 Subject: [PATCH 4/5] 3.0.3 --- dist/README.md | 36 +-- dist/plot-schema.json | 562 +++++++++++++++++------------------ dist/plotly-basic.js | 4 +- dist/plotly-basic.min.js | 4 +- dist/plotly-cartesian.js | 4 +- dist/plotly-cartesian.min.js | 4 +- dist/plotly-finance.js | 4 +- dist/plotly-finance.min.js | 4 +- dist/plotly-geo-assets.js | 4 +- dist/plotly-geo.js | 4 +- dist/plotly-geo.min.js | 4 +- dist/plotly-gl2d.js | 4 +- dist/plotly-gl2d.min.js | 4 +- dist/plotly-gl3d.js | 4 +- dist/plotly-gl3d.min.js | 4 +- dist/plotly-mapbox.js | 4 +- dist/plotly-mapbox.min.js | 4 +- dist/plotly-strict.js | 4 +- dist/plotly-strict.min.js | 4 +- dist/plotly-with-meta.js | 16 +- dist/plotly.js | 4 +- dist/plotly.min.js | 4 +- package-lock.json | 4 +- package.json | 2 +- src/version.js | 2 +- 25 files changed, 346 insertions(+), 352 deletions(-) diff --git a/dist/README.md b/dist/README.md index eac38a19edf..f08de756866 100644 --- a/dist/README.md +++ b/dist/README.md @@ -46,9 +46,9 @@ The main plotly.js bundles weight in at: | 10.3 MB | 4.4 MB | 1.4 MB | 10.6 MB | #### CDN links -> https://cdn.plot.ly/plotly-3.0.2.js +> https://cdn.plot.ly/plotly-3.0.3.js -> https://cdn.plot.ly/plotly-3.0.2.min.js +> https://cdn.plot.ly/plotly-3.0.3.min.js #### npm packages @@ -94,9 +94,9 @@ The `basic` partial bundle contains trace modules `bar`, `pie` and `scatter`. | 2.6 MB | 1008.6 kB | 349.4 kB | #### CDN links -> https://cdn.plot.ly/plotly-basic-3.0.2.js +> https://cdn.plot.ly/plotly-basic-3.0.3.js -> https://cdn.plot.ly/plotly-basic-3.0.2.min.js +> https://cdn.plot.ly/plotly-basic-3.0.3.min.js #### npm packages @@ -117,9 +117,9 @@ The `cartesian` partial bundle contains trace modules `bar`, `box`, `contour`, ` | 3.3 MB | 1.3 MB | 447.2 kB | #### CDN links -> https://cdn.plot.ly/plotly-cartesian-3.0.2.js +> https://cdn.plot.ly/plotly-cartesian-3.0.3.js -> https://cdn.plot.ly/plotly-cartesian-3.0.2.min.js +> https://cdn.plot.ly/plotly-cartesian-3.0.3.min.js #### npm packages @@ -140,9 +140,9 @@ The `geo` partial bundle contains trace modules `choropleth`, `scatter` and `sca | 2.9 MB | 1.1 MB | 398.7 kB | #### CDN links -> https://cdn.plot.ly/plotly-geo-3.0.2.js +> https://cdn.plot.ly/plotly-geo-3.0.3.js -> https://cdn.plot.ly/plotly-geo-3.0.2.min.js +> https://cdn.plot.ly/plotly-geo-3.0.3.min.js #### npm packages @@ -163,9 +163,9 @@ The `gl3d` partial bundle contains trace modules `cone`, `isosurface`, `mesh3d`, | 4.1 MB | 1.5 MB | 513.6 kB | #### CDN links -> https://cdn.plot.ly/plotly-gl3d-3.0.2.js +> https://cdn.plot.ly/plotly-gl3d-3.0.3.js -> https://cdn.plot.ly/plotly-gl3d-3.0.2.min.js +> https://cdn.plot.ly/plotly-gl3d-3.0.3.min.js #### npm packages @@ -186,9 +186,9 @@ The `gl2d` partial bundle contains trace modules `parcoords`, `scatter`, `scatte | 3.4 MB | 1.3 MB | 471.2 kB | #### CDN links -> https://cdn.plot.ly/plotly-gl2d-3.0.2.js +> https://cdn.plot.ly/plotly-gl2d-3.0.3.js -> https://cdn.plot.ly/plotly-gl2d-3.0.2.min.js +> https://cdn.plot.ly/plotly-gl2d-3.0.3.min.js #### npm packages @@ -209,9 +209,9 @@ The `mapbox` partial bundle contains trace modules `choroplethmapbox`, `densitym | 4.4 MB | 1.8 MB | 564.5 kB | #### CDN links -> https://cdn.plot.ly/plotly-mapbox-3.0.2.js +> https://cdn.plot.ly/plotly-mapbox-3.0.3.js -> https://cdn.plot.ly/plotly-mapbox-3.0.2.min.js +> https://cdn.plot.ly/plotly-mapbox-3.0.3.min.js #### npm packages @@ -232,9 +232,9 @@ The `finance` partial bundle contains trace modules `bar`, `candlestick`, `funne | 2.8 MB | 1.1 MB | 383 kB | #### CDN links -> https://cdn.plot.ly/plotly-finance-3.0.2.js +> https://cdn.plot.ly/plotly-finance-3.0.3.js -> https://cdn.plot.ly/plotly-finance-3.0.2.min.js +> https://cdn.plot.ly/plotly-finance-3.0.3.min.js #### npm packages @@ -255,9 +255,9 @@ The `strict` partial bundle contains trace modules `bar`, `barpolar`, `box`, `ca | 11.1 MB | 4.8 MB | 1.5 MB | #### CDN links -> https://cdn.plot.ly/plotly-strict-3.0.2.js +> https://cdn.plot.ly/plotly-strict-3.0.3.js -> https://cdn.plot.ly/plotly-strict-3.0.2.min.js +> https://cdn.plot.ly/plotly-strict-3.0.3.min.js #### npm packages diff --git a/dist/plot-schema.json b/dist/plot-schema.json index 6aa77cf3338..a34d163e309 100644 --- a/dist/plot-schema.json +++ b/dist/plot-schema.json @@ -761,7 +761,7 @@ "description": "Sets the annotation text font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -869,7 +869,7 @@ "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -1415,7 +1415,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -1661,7 +1661,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -2000,7 +2000,7 @@ "description": "Sets the global font. Note that fonts used in traces and other layout components inherit from the global font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "\"Open Sans\", verdana, arial, sans-serif", "editType": "calc", "noBlank": true, @@ -2840,7 +2840,7 @@ "description": "Sets the default hover label font used by all traces on the graph.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Arial, sans-serif", "editType": "none", "noBlank": true, @@ -2931,7 +2931,7 @@ "description": "Sets the font for group titles in hover (unified modes). Defaults to `hoverlabel.font`.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -3216,7 +3216,7 @@ "description": "Sets the font used to text the legend items.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "legend", "noBlank": true, "strict": true, @@ -3315,7 +3315,7 @@ "description": "Sets the font for group titles in legend. Defaults to `legend.font` with its size increased about 10%.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "legend", "noBlank": true, "strict": true, @@ -3463,7 +3463,7 @@ "description": "Sets this legend's title font. Defaults to `legend.font` with its size increased about 20%.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "legend", "noBlank": true, "strict": true, @@ -3933,7 +3933,7 @@ "description": "Sets the icon text font (color=map.layer.paint.text-color, size=map.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "plot", "noBlank": true, @@ -4339,7 +4339,7 @@ "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "plot", "noBlank": true, @@ -4675,7 +4675,7 @@ "description": "Sets the new shape label text font.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -4857,7 +4857,7 @@ "description": "Sets this legend group's title font.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -5306,7 +5306,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -6028,7 +6028,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -6245,7 +6245,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -6494,7 +6494,7 @@ "description": "Sets the annotation text font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -6602,7 +6602,7 @@ "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -7460,7 +7460,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -7670,7 +7670,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -8199,7 +8199,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -8409,7 +8409,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -8938,7 +8938,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -9148,7 +9148,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -9443,7 +9443,7 @@ "description": "Sets the shape label text font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -9625,7 +9625,7 @@ "description": "Sets this legend group's title font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -9964,7 +9964,7 @@ "description": "Sets the font of the current value label text.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -10089,7 +10089,7 @@ "description": "Sets the font of the slider step labels.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -10633,7 +10633,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -10916,7 +10916,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -11281,7 +11281,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -11498,7 +11498,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -11794,7 +11794,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12011,7 +12011,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12313,7 +12313,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12530,7 +12530,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -12719,7 +12719,7 @@ "description": "Sets the title font.", "editType": "layoutstyle", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "layoutstyle", "noBlank": true, "strict": true, @@ -12840,7 +12840,7 @@ "description": "Sets the subtitle font.", "editType": "layoutstyle", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "layoutstyle", "noBlank": true, "strict": true, @@ -13228,7 +13228,7 @@ "description": "Sets the font of the update menu button text.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -14139,7 +14139,7 @@ "description": "Sets the font of the range selector button text.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -14540,7 +14540,7 @@ "description": "Sets the tick font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -14829,7 +14829,7 @@ "description": "Sets this axis' title font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -15774,7 +15774,7 @@ "description": "Sets the tick font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -16063,7 +16063,7 @@ "description": "Sets this axis' title font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "ticks", "noBlank": true, "strict": true, @@ -16528,7 +16528,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -16732,7 +16732,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -16882,7 +16882,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -17233,7 +17233,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -17479,7 +17479,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -17939,7 +17939,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -18154,7 +18154,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -18716,7 +18716,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -18915,7 +18915,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -19266,7 +19266,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -19512,7 +19512,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -20287,7 +20287,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -20503,7 +20503,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -21824,7 +21824,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -22043,7 +22043,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -22775,7 +22775,7 @@ "description": "Sets the tick font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -22959,7 +22959,7 @@ "description": "Sets this axis' title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -23446,7 +23446,7 @@ "description": "Sets the tick font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -23630,7 +23630,7 @@ "description": "Sets this axis' title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -23791,7 +23791,7 @@ "description": "The default font used for axis & tick labels on this carpet", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "\"Open Sans\", verdana, arial, sans-serif", "editType": "calc", "noBlank": true, @@ -23901,7 +23901,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -24336,7 +24336,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -24582,7 +24582,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -24860,7 +24860,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -25059,7 +25059,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -25623,7 +25623,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -25869,7 +25869,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -26141,7 +26141,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -26340,7 +26340,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -26900,7 +26900,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -27146,7 +27146,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -27418,7 +27418,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -27617,7 +27617,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -28216,7 +28216,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -28462,7 +28462,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -28728,7 +28728,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -28927,7 +28927,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -29561,7 +29561,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -29807,7 +29807,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -30019,7 +30019,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -30289,7 +30289,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -30492,7 +30492,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -30712,7 +30712,7 @@ "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -31378,7 +31378,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -31624,7 +31624,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -31830,7 +31830,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -32062,7 +32062,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -32604,7 +32604,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -32850,7 +32850,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -33112,7 +33112,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -33321,7 +33321,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -33819,7 +33819,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -34065,7 +34065,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -34327,7 +34327,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -34536,7 +34536,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -34992,7 +34992,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -35195,7 +35195,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -35345,7 +35345,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -35696,7 +35696,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -35942,7 +35942,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -36298,7 +36298,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -36484,7 +36484,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -37020,7 +37020,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -37212,7 +37212,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -37378,7 +37378,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -37690,7 +37690,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -37882,7 +37882,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -38309,7 +38309,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -38555,7 +38555,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -38840,7 +38840,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -39043,7 +39043,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -39219,7 +39219,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -40001,7 +40001,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -40197,7 +40197,7 @@ "description": "Sets the font used for `text` lying inside the bar.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -40300,7 +40300,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -40651,7 +40651,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -40897,7 +40897,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -41351,7 +41351,7 @@ "description": "Sets the font used for `text` lying outside the bar.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -41512,7 +41512,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -42097,7 +42097,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -42343,7 +42343,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -42631,7 +42631,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -42818,7 +42818,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -43017,7 +43017,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -43595,7 +43595,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -43841,7 +43841,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -44048,7 +44048,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -44321,7 +44321,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -44508,7 +44508,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -44752,7 +44752,7 @@ "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -45247,7 +45247,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -45440,7 +45440,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -45605,7 +45605,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -45956,7 +45956,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -46202,7 +46202,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -46566,7 +46566,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -46745,7 +46745,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -46941,7 +46941,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -47322,7 +47322,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -47513,7 +47513,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -47851,7 +47851,7 @@ "description": "Set the font used to display the delta", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -48191,7 +48191,7 @@ "description": "Sets the color bar's tick label font", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -48600,7 +48600,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -48738,7 +48738,7 @@ "description": "Set the font used to display main number", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -48878,7 +48878,7 @@ "description": "Set the font used to display the title", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -49310,7 +49310,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -49556,7 +49556,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -49848,7 +49848,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -50057,7 +50057,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -50830,7 +50830,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -51076,7 +51076,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -51389,7 +51389,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -51638,7 +51638,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -52216,7 +52216,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -52444,7 +52444,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -52990,7 +52990,7 @@ "description": "Sets the font for the `dimension` labels.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -53081,7 +53081,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -53426,7 +53426,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -53672,7 +53672,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -53933,7 +53933,7 @@ "description": "Sets the font for the `category` labels.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -54251,7 +54251,7 @@ "description": "Sets the font for the `dimension` labels.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -54358,7 +54358,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -54709,7 +54709,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -54955,7 +54955,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -55240,7 +55240,7 @@ "description": "Sets the font for the `dimension` range values.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -55348,7 +55348,7 @@ "description": "Sets the font for the `dimension` tick values.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -55672,7 +55672,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -55864,7 +55864,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -56042,7 +56042,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -56318,7 +56318,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -56523,7 +56523,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -56717,7 +56717,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -57091,7 +57091,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -57260,7 +57260,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -57525,7 +57525,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -57890,7 +57890,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -58167,7 +58167,7 @@ "description": "Sets the font for node labels", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -58754,7 +58754,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -58963,7 +58963,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -59412,7 +59412,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -59658,7 +59658,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -60700,7 +60700,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -61492,7 +61492,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -61691,7 +61691,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -62042,7 +62042,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -62288,7 +62288,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -62751,7 +62751,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -62997,7 +62997,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -63528,7 +63528,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -63936,7 +63936,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -64144,7 +64144,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -64578,7 +64578,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -64824,7 +64824,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -65831,7 +65831,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -66220,7 +66220,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -66429,7 +66429,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -66865,7 +66865,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -67111,7 +67111,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -68111,7 +68111,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -68662,7 +68662,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -68861,7 +68861,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -69267,7 +69267,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -69513,7 +69513,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -70466,7 +70466,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -70985,7 +70985,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -71194,7 +71194,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -71589,7 +71589,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -71835,7 +71835,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -72203,7 +72203,7 @@ "description": "Sets the icon text font (color=map.layer.paint.text-color, size=map.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "calc", "noBlank": true, @@ -72522,7 +72522,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -72731,7 +72731,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -73126,7 +73126,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -73372,7 +73372,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -73740,7 +73740,7 @@ "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "calc", "noBlank": true, @@ -74004,7 +74004,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -74212,7 +74212,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -74646,7 +74646,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -74892,7 +74892,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -75920,7 +75920,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -76314,7 +76314,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -76513,7 +76513,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -76906,7 +76906,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -77152,7 +77152,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -78127,7 +78127,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -78458,7 +78458,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -78676,7 +78676,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -79110,7 +79110,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -79356,7 +79356,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -80378,7 +80378,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -80767,7 +80767,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -80975,7 +80975,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -81409,7 +81409,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -81655,7 +81655,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -82675,7 +82675,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -83077,7 +83077,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -83276,7 +83276,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -83639,7 +83639,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -83885,7 +83885,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85160,7 +85160,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85406,7 +85406,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85673,7 +85673,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -85866,7 +85866,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -86484,7 +86484,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -86677,7 +86677,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -86854,7 +86854,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -87205,7 +87205,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -87451,7 +87451,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -87815,7 +87815,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -88014,7 +88014,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -88475,7 +88475,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -88721,7 +88721,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -89272,7 +89272,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -89471,7 +89471,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -89944,7 +89944,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -90299,7 +90299,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -90587,7 +90587,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -90756,7 +90756,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -91103,7 +91103,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -91296,7 +91296,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -91450,7 +91450,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -91801,7 +91801,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -92047,7 +92047,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -92456,7 +92456,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -92635,7 +92635,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -92831,7 +92831,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "plot", "noBlank": true, "strict": true, @@ -93253,7 +93253,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -93473,7 +93473,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -94829,7 +94829,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -95075,7 +95075,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -95367,7 +95367,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -95576,7 +95576,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -96318,7 +96318,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "none", "noBlank": true, "strict": true, @@ -96553,7 +96553,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -96703,7 +96703,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "style", "noBlank": true, "strict": true, @@ -96881,7 +96881,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, @@ -97067,7 +97067,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", "editType": "calc", "noBlank": true, "strict": true, diff --git a/dist/plotly-basic.js b/dist/plotly-basic.js index da020fcfc14..930153cae75 100644 --- a/dist/plotly-basic.js +++ b/dist/plotly-basic.js @@ -1,5 +1,5 @@ /** -* plotly.js (basic) v3.0.2 +* plotly.js (basic) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-basic.min.js b/dist/plotly-basic.min.js index f54ccfbf2cb..5184429b487 100644 --- a/dist/plotly-basic.min.js +++ b/dist/plotly-basic.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (basic - minified) v3.0.2 +* plotly.js (basic - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var nb=Object.defineProperty;var eI=Object.getOwnPropertyDescriptor;var rI=Object.getOwnPropertyNames;var tI=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var Z=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var aI=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of rI(r))!tI.call(e,n)&&n!==t&&nb(e,n,{get:()=>r[n],enumerable:!(a=eI(r,n))||a.enumerable});return e};var nI=e=>aI(nb({},"__esModule",{value:!0}),e);var tv=Z(lb=>{"use strict";lb.version="3.0.2"});var sb=Z((ob,av)=>{(function(r,t,a){t[r]=t[r]||a(),typeof av!="undefined"&&av.exports&&(av.exports=t[r])})("Promise",typeof window!="undefined"?window:ob,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(w){return setImmediate(w)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(w,T,b,A){return Object.defineProperty(w,T,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(T,b,A){return T[b]=A,T}}a=function(){var w,T,b;function A(S,k){this.fn=S,this.self=k,this.next=void 0}return{add:function(k,q){b=new A(k,q),T?T.next=b:w=b,T=b,b=void 0},drain:function(){var k=w;for(w=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(_,w){a.add(_,w),t||(t=i(a.drain))}function o(_){var w,T=typeof _;return _!=null&&(T=="object"||T=="function")&&(w=_.then),typeof w=="function"?w:!1}function s(){for(var _=0;_0&&l(s,T))}catch(b){v.call(new d(T),b)}}}function v(_){var w=this;w.triggered||(w.triggered=!0,w.def&&(w=w.def),w.msg=_,w.state=2,w.chain.length>0&&l(s,w))}function h(_,w,T,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},a=self.document;function n(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(c){t=function(p){for(var x=p.length,M=new Array(x);x--;)M[x]=p[x];return M}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(p,x){o.call(this,p,x+"")},l.setAttributeNS=function(p,x,M){s.call(this,p,x,M+"")},u.setProperty=function(p,x,M){f.call(this,p,x+"",M)}}e.ascending=v;function v(c,p){return cp?1:c>=p?0:NaN}e.descending=function(c,p){return pc?1:p>=c?0:NaN},e.min=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xL&&(C=L)}else{for(;++x=L){C=L;break}for(;++xL&&(C=L)}return C},e.max=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xC&&(C=L)}else{for(;++x=L){C=L;break}for(;++xC&&(C=L)}return C},e.extent=function(c,p){var x=-1,M=c.length,C,L,P;if(arguments.length===1){for(;++x=L){C=P=L;break}for(;++xL&&(C=L),P=L){C=P=L;break}for(;++xL&&(C=L),P1)return P/(F-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)<0?M=L+1:C=L}return M},right:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)>0?C=L:M=L+1}return M}}}var g=m(v);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(c){return m(c.length===1?function(p,x){return v(c(p),x)}:c)},e.shuffle=function(c,p,x){(M=arguments.length)<3&&(x=c.length,M<2&&(p=0));for(var M=x-p,C,L;M;)L=Math.random()*M--|0,C=c[M+p],c[M+p]=c[L+p],c[L+p]=C;return c},e.permute=function(c,p){for(var x=p.length,M=new Array(x);x--;)M[x]=c[p[x]];return M},e.pairs=function(c){for(var p=0,x=c.length-1,M,C=c[0],L=new Array(x<0?0:x);p=0;)for(P=c[p],x=P.length;--x>=0;)L[--C]=P[x];return L};var _=Math.abs;e.range=function(c,p,x){if(arguments.length<3&&(x=1,arguments.length<2&&(p=c,c=0)),(p-c)/x===1/0)throw new Error("infinite range");var M=[],C=w(_(x)),L=-1,P;if(c*=C,p*=C,x*=C,x<0)for(;(P=c+x*++L)>p;)M.push(P/C);else for(;(P=c+x*++L)=p.length)return C?C.call(c,F):M?F.sort(M):F;for(var W=-1,$=F.length,ee=p[G++],he,we,te,le=new b,ue;++W<$;)(ue=le.get(he=ee(we=F[W])))?ue.push(we):le.set(he,[we]);return E?(we=E(),te=function(xe,Te){we.set(xe,L(E,Te,G))}):(we={},te=function(xe,Te){we[xe]=L(E,Te,G)}),le.forEach(te),we}function P(E,F){if(F>=p.length)return E;var G=[],W=x[F++];return E.forEach(function($,ee){G.push({key:$,values:P(ee,F)})}),W?G.sort(function($,ee){return W($.key,ee.key)}):G}return c.map=function(E,F){return L(F,E,0)},c.entries=function(E){return P(L(e.map,E,0),0)},c.key=function(E){return p.push(E),c},c.sortKeys=function(E){return x[p.length-1]=E,c},c.sortValues=function(E){return M=E,c},c.rollup=function(E){return C=E,c},c},e.set=function(c){var p=new O;if(c)for(var x=0,M=c.length;x=0&&(M=c.slice(x+1),c=c.slice(0,x)),c)return arguments.length<2?this[c].on(M):this[c].on(M,p);if(arguments.length===2){if(p==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(M,null);return this}};function Q(c){var p=[],x=new b;function M(){for(var C=p,L=-1,P=C.length,E;++L=0&&(x=c.slice(0,p))!=="xmlns"&&(c=c.slice(p+1)),de.hasOwnProperty(x)?{space:de[x],local:c}:c}},Ae.attr=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node();return c=e.ns.qualify(c),c.local?x.getAttributeNS(c.space,c.local):x.getAttribute(c)}for(p in c)this.each(be(p,c[p]));return this}return this.each(be(c,p))};function be(c,p){c=e.ns.qualify(c);function x(){this.removeAttribute(c)}function M(){this.removeAttributeNS(c.space,c.local)}function C(){this.setAttribute(c,p)}function L(){this.setAttributeNS(c.space,c.local,p)}function P(){var F=p.apply(this,arguments);F==null?this.removeAttribute(c):this.setAttribute(c,F)}function E(){var F=p.apply(this,arguments);F==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,F)}return p==null?c.local?M:x:typeof p=="function"?c.local?E:P:c.local?L:C}function ye(c){return c.trim().replace(/\s+/g," ")}Ae.classed=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node(),M=(c=Re(c)).length,C=-1;if(p=x.classList){for(;++C=0;)(L=x[M])&&(C&&C!==L.nextSibling&&C.parentNode.insertBefore(L,C),C=L);return this},Ae.sort=function(c){c=Me.apply(this,arguments);for(var p=-1,x=this.length;++p=p&&(p=C+1);!(F=P[p])&&++p0&&(c=c.slice(0,C));var P=Ye.get(c);P&&(c=P,L=Ue);function E(){var W=this[M];W&&(this.removeEventListener(c,W,W.$),delete this[M])}function F(){var W=L(p,t(arguments));E.call(this),this.addEventListener(c,this[M]=W,W.$=x),W._=p}function G(){var W=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),$;for(var ee in this)if($=ee.match(W)){var he=this[ee];this.removeEventListener($[1],he,he.$),delete this[ee]}}return C?p?F:E:p?V:G}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(c){"on"+c in a&&Ye.remove(c)});function Ze(c,p){return function(x){var M=e.event;e.event=x,p[0]=this.__data__;try{c.apply(this,p)}finally{e.event=M}}}function Ue(c,p){var x=Ze(c,p);return function(M){var C=this,L=M.relatedTarget;(!L||L!==C&&!(L.compareDocumentPosition(C)&8))&&x.call(C,M)}}var Oe,Ke=0;function fr(c){var p=".dragsuppress-"+ ++Ke,x="click"+p,M=e.select(i(c)).on("touchmove"+p,ie).on("dragstart"+p,ie).on("selectstart"+p,ie);if(Oe==null&&(Oe="onselectstart"in c?!1:B(c.style,"userSelect")),Oe){var C=n(c).style,L=C[Oe];C[Oe]="none"}return function(P){if(M.on(p,null),Oe&&(C[Oe]=L),P){var E=function(){M.on(x,null)};M.on(x,function(){ie(),E()},!0),setTimeout(E,0)}}}e.mouse=function(c){return ze(c,me())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ze(c,p){p.changedTouches&&(p=p.changedTouches[0]);var x=c.ownerSVGElement||c;if(x.createSVGPoint){var M=x.createSVGPoint();if(lr<0){var C=i(c);if(C.scrollX||C.scrollY){x=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=x[0][0].getScreenCTM();lr=!(L.f||L.e),x.remove()}}return lr?(M.x=p.pageX,M.y=p.pageY):(M.x=p.clientX,M.y=p.clientY),M=M.matrixTransform(c.getScreenCTM().inverse()),[M.x,M.y]}var P=c.getBoundingClientRect();return[p.clientX-P.left-c.clientLeft,p.clientY-P.top-c.clientTop]}e.touch=function(c,p,x){if(arguments.length<3&&(x=p,p=me().changedTouches),p){for(var M=0,C=p.length,L;M0?1:c<0?-1:0}function Vr(c,p,x){return(p[0]-c[0])*(x[1]-c[1])-(p[1]-c[1])*(x[0]-c[0])}function St(c){return c>1?0:c<-1?ke:Math.acos(c)}function ea(c){return c>1?sr:c<-1?-sr:Math.asin(c)}function ka(c){return((c=Math.exp(c))-1/c)/2}function ra(c){return((c=Math.exp(c))+1/c)/2}function pn(c){return((c=Math.exp(2*c))-1)/(c+1)}function Ia(c){return(c=Math.sin(c/2))*c}var ta=Math.SQRT2,Ha=2,yr=4;e.interpolateZoom=function(c,p){var x=c[0],M=c[1],C=c[2],L=p[0],P=p[1],E=p[2],F=L-x,G=P-M,W=F*F+G*G,$,ee;if(W0&&(er=er.transition().duration(P)),er.call(Te.event)}function hr(){le&&le.domain(te.range().map(function(er){return(er-c.x)/c.k}).map(te.invert)),xe&&xe.domain(ue.range().map(function(er){return(er-c.y)/c.k}).map(ue.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function pr(er){--E||(er({type:"zoomend"}),x=null)}function Tr(){var er=this,Lr=we.of(er,arguments),qr=0,Kr=e.select(i(er)).on(G,ca).on(W,La),_t=ce(e.mouse(er)),Ot=fr(er);$c.call(er),dr(Lr);function ca(){qr=1,or(e.mouse(er),_t),Sr(Lr)}function La(){Kr.on(G,null).on(W,null),Ot(qr),pr(Lr)}}function Jr(){var er=this,Lr=we.of(er,arguments),qr={},Kr=0,_t,Ot=".zoom-"+e.event.changedTouches[0].identifier,ca="touchmove"+Ot,La="touchend"+Ot,Oa=[],qa=e.select(er),Ga=fr(er);Va(),dr(Lr),qa.on(F,null).on(ee,Va);function ba(){var Yn=e.touches(er);return _t=c.k,Yn.forEach(function(va){va.identifier in qr&&(qr[va.identifier]=ce(va))}),Yn}function Va(){var Yn=e.event.target;e.select(Yn).on(ca,Jl).on(La,jF),Oa.push(Yn);for(var va=e.event.changedTouches,yn=0,vi=va.length;yn1){var Kl=gn[0],al=gn[1],rv=Kl[0]-al[0],ab=Kl[1]-al[1];Kr=rv*rv+ab*ab}}function Jl(){var Yn=e.touches(er),va,yn,vi,gn;$c.call(er);for(var ls=0,Kl=Yn.length;ls1?1:p,x=x<0?0:x>1?1:x,C=x<=.5?x*(1+p):x+p-x*p,M=2*x-C;function L(E){return E>360?E-=360:E<0&&(E+=360),E<60?M+(C-M)*E/60:E<180?C:E<240?M+(C-M)*(240-E)/60:M}function P(E){return Math.round(L(E)*255)}return new Sa(P(c+120),P(c),P(c-120))}e.hcl=aa;function aa(c,p,x){return this instanceof aa?(this.h=+c,this.c=+p,void(this.l=+x)):arguments.length<2?c instanceof aa?new aa(c.h,c.c,c.l):c instanceof Zt?Dc(c.l,c.a,c.b):Dc((c=nr((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new aa(c,p,x)}var In=aa.prototype=new Tt;In.brighter=function(c){return new aa(this.h,this.c,Math.min(100,this.l+at*(arguments.length?c:1)))},In.darker=function(c){return new aa(this.h,this.c,Math.max(0,this.l-at*(arguments.length?c:1)))},In.rgb=function(){return Hn(this.h,this.c,this.l).rgb()};function Hn(c,p,x){return isNaN(c)&&(c=0),isNaN(p)&&(p=0),new Zt(x,Math.cos(c*=Mr)*p,Math.sin(c)*p)}e.lab=Zt;function Zt(c,p,x){return this instanceof Zt?(this.l=+c,this.a=+p,void(this.b=+x)):arguments.length<2?c instanceof Zt?new Zt(c.l,c.a,c.b):c instanceof aa?Hn(c.h,c.c,c.l):nr((c=Sa(c)).r,c.g,c.b):new Zt(c,p,x)}var at=18,sa=.95047,Ul=1,Gl=1.08883,rl=Zt.prototype=new Tt;rl.brighter=function(c){return new Zt(Math.min(100,this.l+at*(arguments.length?c:1)),this.a,this.b)},rl.darker=function(c){return new Zt(Math.max(0,this.l-at*(arguments.length?c:1)),this.a,this.b)},rl.rgb=function(){return qc(this.l,this.a,this.b)};function qc(c,p,x){var M=(c+16)/116,C=M+p/500,L=M-x/200;return C=ku(C)*sa,M=ku(M)*Ul,L=ku(L)*Gl,new Sa(Su(3.2404542*C-1.5371385*M-.4985314*L),Su(-.969266*C+1.8760108*M+.041556*L),Su(.0556434*C-.2040259*M+1.0572252*L))}function Dc(c,p,x){return c>0?new aa(Math.atan2(x,p)*Ur,Math.sqrt(p*p+x*x),c):new aa(NaN,NaN,c)}function ku(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function Cu(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Su(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Sa;function Sa(c,p,x){return this instanceof Sa?(this.r=~~c,this.g=~~p,void(this.b=~~x)):arguments.length<2?c instanceof Sa?new Sa(c.r,c.g,c.b):Zr(""+c,Sa,Ca):new Sa(c,p,x)}function Ec(c){return new Sa(c>>16,c>>8&255,c&255)}function $o(c){return Ec(c)+""}var jo=Sa.prototype=new Tt;jo.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var p=this.r,x=this.g,M=this.b,C=30;return!p&&!x&&!M?new Sa(C,C,C):(p&&p>4,M=M>>4|M,C=F&240,C=C>>4|C,L=F&15,L=L<<4|L):c.length===7&&(M=(F&16711680)>>16,C=(F&65280)>>8,L=F&255)),p(M,C,L))}function jr(c,p,x){var M=Math.min(c/=255,p/=255,x/=255),C=Math.max(c,p,x),L=C-M,P,E,F=(C+M)/2;return L?(E=F<.5?L/(C+M):L/(2-C-M),c==C?P=(p-x)/L+(p0&&F<1?0:P),new ot(P,E,F)}function nr(c,p,x){c=ua(c),p=ua(p),x=ua(x);var M=Cu((.4124564*c+.3575761*p+.1804375*x)/sa),C=Cu((.2126729*c+.7151522*p+.072175*x)/Ul),L=Cu((.0193339*c+.119192*p+.9503041*x)/Gl);return Zt(116*C-16,500*(M-C),200*(C-L))}function ua(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function st(c){var p=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(p*2.55):p}var fa=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});fa.forEach(function(c,p){fa.set(c,Ec(p))});function Rr(c){return typeof c=="function"?c:function(){return c}}e.functor=Rr,e.xhr=On(J);function On(c){return function(p,x,M){return arguments.length===2&&typeof x=="function"&&(M=x,x=null),Vl(p,x,c,M)}}function Vl(c,p,x,M){var C={},L=e.dispatch("beforesend","progress","load","error"),P={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(c)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=G:E.onreadystatechange=function(){E.readyState>3&&G()};function G(){var W=E.status,$;if(!W&&rN(E)||W>=200&&W<300||W===304){try{$=x.call(C,E)}catch(ee){L.error.call(C,ee);return}L.load.call(C,$)}else L.error.call(C,E)}return E.onprogress=function(W){var $=e.event;e.event=W;try{L.progress.call(C,E)}finally{e.event=$}},C.header=function(W,$){return W=(W+"").toLowerCase(),arguments.length<2?P[W]:($==null?delete P[W]:P[W]=$+"",C)},C.mimeType=function(W){return arguments.length?(p=W==null?null:W+"",C):p},C.responseType=function(W){return arguments.length?(F=W,C):F},C.response=function(W){return x=W,C},["get","post"].forEach(function(W){C[W]=function(){return C.send.apply(C,[W].concat(t(arguments)))}}),C.send=function(W,$,ee){if(arguments.length===2&&typeof $=="function"&&(ee=$,$=null),E.open(W,c,!0),p!=null&&!("accept"in P)&&(P.accept=p+",*/*"),E.setRequestHeader)for(var he in P)E.setRequestHeader(he,P[he]);return p!=null&&E.overrideMimeType&&E.overrideMimeType(p),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(we){ee(null,we)}),L.beforesend.call(C,E),E.send($==null?null:$),C},C.abort=function(){return E.abort(),C},e.rebind(C,L,"on"),M==null?C:C.get(eN(M))}function eN(c){return c.length===1?function(p,x){c(p==null?x:null)}:c}function rN(c){var p=c.responseType;return p&&p!=="text"?c.response:c.responseText}e.dsv=function(c,p){var x=new RegExp('["'+c+` +"use strict";var Plotly=(()=>{var nb=Object.defineProperty;var eI=Object.getOwnPropertyDescriptor;var rI=Object.getOwnPropertyNames;var tI=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var Z=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var aI=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of rI(r))!tI.call(e,n)&&n!==t&&nb(e,n,{get:()=>r[n],enumerable:!(a=eI(r,n))||a.enumerable});return e};var nI=e=>aI(nb({},"__esModule",{value:!0}),e);var tv=Z(lb=>{"use strict";lb.version="3.0.3"});var sb=Z((ob,av)=>{(function(r,t,a){t[r]=t[r]||a(),typeof av!="undefined"&&av.exports&&(av.exports=t[r])})("Promise",typeof window!="undefined"?window:ob,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(w){return setImmediate(w)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(w,T,b,A){return Object.defineProperty(w,T,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(T,b,A){return T[b]=A,T}}a=function(){var w,T,b;function A(S,k){this.fn=S,this.self=k,this.next=void 0}return{add:function(k,q){b=new A(k,q),T?T.next=b:w=b,T=b,b=void 0},drain:function(){var k=w;for(w=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(_,w){a.add(_,w),t||(t=i(a.drain))}function o(_){var w,T=typeof _;return _!=null&&(T=="object"||T=="function")&&(w=_.then),typeof w=="function"?w:!1}function s(){for(var _=0;_0&&l(s,T))}catch(b){v.call(new d(T),b)}}}function v(_){var w=this;w.triggered||(w.triggered=!0,w.def&&(w=w.def),w.msg=_,w.state=2,w.chain.length>0&&l(s,w))}function h(_,w,T,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},a=self.document;function n(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(c){t=function(p){for(var x=p.length,M=new Array(x);x--;)M[x]=p[x];return M}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(p,x){o.call(this,p,x+"")},l.setAttributeNS=function(p,x,M){s.call(this,p,x,M+"")},u.setProperty=function(p,x,M){f.call(this,p,x+"",M)}}e.ascending=v;function v(c,p){return cp?1:c>=p?0:NaN}e.descending=function(c,p){return pc?1:p>=c?0:NaN},e.min=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xL&&(C=L)}else{for(;++x=L){C=L;break}for(;++xL&&(C=L)}return C},e.max=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xC&&(C=L)}else{for(;++x=L){C=L;break}for(;++xC&&(C=L)}return C},e.extent=function(c,p){var x=-1,M=c.length,C,L,P;if(arguments.length===1){for(;++x=L){C=P=L;break}for(;++xL&&(C=L),P=L){C=P=L;break}for(;++xL&&(C=L),P1)return P/(F-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)<0?M=L+1:C=L}return M},right:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)>0?C=L:M=L+1}return M}}}var g=m(v);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(c){return m(c.length===1?function(p,x){return v(c(p),x)}:c)},e.shuffle=function(c,p,x){(M=arguments.length)<3&&(x=c.length,M<2&&(p=0));for(var M=x-p,C,L;M;)L=Math.random()*M--|0,C=c[M+p],c[M+p]=c[L+p],c[L+p]=C;return c},e.permute=function(c,p){for(var x=p.length,M=new Array(x);x--;)M[x]=c[p[x]];return M},e.pairs=function(c){for(var p=0,x=c.length-1,M,C=c[0],L=new Array(x<0?0:x);p=0;)for(P=c[p],x=P.length;--x>=0;)L[--C]=P[x];return L};var _=Math.abs;e.range=function(c,p,x){if(arguments.length<3&&(x=1,arguments.length<2&&(p=c,c=0)),(p-c)/x===1/0)throw new Error("infinite range");var M=[],C=w(_(x)),L=-1,P;if(c*=C,p*=C,x*=C,x<0)for(;(P=c+x*++L)>p;)M.push(P/C);else for(;(P=c+x*++L)=p.length)return C?C.call(c,F):M?F.sort(M):F;for(var W=-1,$=F.length,ee=p[G++],he,we,te,le=new b,ue;++W<$;)(ue=le.get(he=ee(we=F[W])))?ue.push(we):le.set(he,[we]);return E?(we=E(),te=function(xe,Te){we.set(xe,L(E,Te,G))}):(we={},te=function(xe,Te){we[xe]=L(E,Te,G)}),le.forEach(te),we}function P(E,F){if(F>=p.length)return E;var G=[],W=x[F++];return E.forEach(function($,ee){G.push({key:$,values:P(ee,F)})}),W?G.sort(function($,ee){return W($.key,ee.key)}):G}return c.map=function(E,F){return L(F,E,0)},c.entries=function(E){return P(L(e.map,E,0),0)},c.key=function(E){return p.push(E),c},c.sortKeys=function(E){return x[p.length-1]=E,c},c.sortValues=function(E){return M=E,c},c.rollup=function(E){return C=E,c},c},e.set=function(c){var p=new O;if(c)for(var x=0,M=c.length;x=0&&(M=c.slice(x+1),c=c.slice(0,x)),c)return arguments.length<2?this[c].on(M):this[c].on(M,p);if(arguments.length===2){if(p==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(M,null);return this}};function Q(c){var p=[],x=new b;function M(){for(var C=p,L=-1,P=C.length,E;++L=0&&(x=c.slice(0,p))!=="xmlns"&&(c=c.slice(p+1)),de.hasOwnProperty(x)?{space:de[x],local:c}:c}},Ae.attr=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node();return c=e.ns.qualify(c),c.local?x.getAttributeNS(c.space,c.local):x.getAttribute(c)}for(p in c)this.each(be(p,c[p]));return this}return this.each(be(c,p))};function be(c,p){c=e.ns.qualify(c);function x(){this.removeAttribute(c)}function M(){this.removeAttributeNS(c.space,c.local)}function C(){this.setAttribute(c,p)}function L(){this.setAttributeNS(c.space,c.local,p)}function P(){var F=p.apply(this,arguments);F==null?this.removeAttribute(c):this.setAttribute(c,F)}function E(){var F=p.apply(this,arguments);F==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,F)}return p==null?c.local?M:x:typeof p=="function"?c.local?E:P:c.local?L:C}function ye(c){return c.trim().replace(/\s+/g," ")}Ae.classed=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node(),M=(c=Re(c)).length,C=-1;if(p=x.classList){for(;++C=0;)(L=x[M])&&(C&&C!==L.nextSibling&&C.parentNode.insertBefore(L,C),C=L);return this},Ae.sort=function(c){c=Me.apply(this,arguments);for(var p=-1,x=this.length;++p=p&&(p=C+1);!(F=P[p])&&++p0&&(c=c.slice(0,C));var P=Ye.get(c);P&&(c=P,L=Ue);function E(){var W=this[M];W&&(this.removeEventListener(c,W,W.$),delete this[M])}function F(){var W=L(p,t(arguments));E.call(this),this.addEventListener(c,this[M]=W,W.$=x),W._=p}function G(){var W=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),$;for(var ee in this)if($=ee.match(W)){var he=this[ee];this.removeEventListener($[1],he,he.$),delete this[ee]}}return C?p?F:E:p?V:G}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(c){"on"+c in a&&Ye.remove(c)});function Ze(c,p){return function(x){var M=e.event;e.event=x,p[0]=this.__data__;try{c.apply(this,p)}finally{e.event=M}}}function Ue(c,p){var x=Ze(c,p);return function(M){var C=this,L=M.relatedTarget;(!L||L!==C&&!(L.compareDocumentPosition(C)&8))&&x.call(C,M)}}var Oe,Ke=0;function fr(c){var p=".dragsuppress-"+ ++Ke,x="click"+p,M=e.select(i(c)).on("touchmove"+p,ie).on("dragstart"+p,ie).on("selectstart"+p,ie);if(Oe==null&&(Oe="onselectstart"in c?!1:B(c.style,"userSelect")),Oe){var C=n(c).style,L=C[Oe];C[Oe]="none"}return function(P){if(M.on(p,null),Oe&&(C[Oe]=L),P){var E=function(){M.on(x,null)};M.on(x,function(){ie(),E()},!0),setTimeout(E,0)}}}e.mouse=function(c){return ze(c,me())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ze(c,p){p.changedTouches&&(p=p.changedTouches[0]);var x=c.ownerSVGElement||c;if(x.createSVGPoint){var M=x.createSVGPoint();if(lr<0){var C=i(c);if(C.scrollX||C.scrollY){x=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=x[0][0].getScreenCTM();lr=!(L.f||L.e),x.remove()}}return lr?(M.x=p.pageX,M.y=p.pageY):(M.x=p.clientX,M.y=p.clientY),M=M.matrixTransform(c.getScreenCTM().inverse()),[M.x,M.y]}var P=c.getBoundingClientRect();return[p.clientX-P.left-c.clientLeft,p.clientY-P.top-c.clientTop]}e.touch=function(c,p,x){if(arguments.length<3&&(x=p,p=me().changedTouches),p){for(var M=0,C=p.length,L;M0?1:c<0?-1:0}function Vr(c,p,x){return(p[0]-c[0])*(x[1]-c[1])-(p[1]-c[1])*(x[0]-c[0])}function St(c){return c>1?0:c<-1?ke:Math.acos(c)}function ea(c){return c>1?sr:c<-1?-sr:Math.asin(c)}function ka(c){return((c=Math.exp(c))-1/c)/2}function ra(c){return((c=Math.exp(c))+1/c)/2}function pn(c){return((c=Math.exp(2*c))-1)/(c+1)}function Ia(c){return(c=Math.sin(c/2))*c}var ta=Math.SQRT2,Ha=2,yr=4;e.interpolateZoom=function(c,p){var x=c[0],M=c[1],C=c[2],L=p[0],P=p[1],E=p[2],F=L-x,G=P-M,W=F*F+G*G,$,ee;if(W0&&(er=er.transition().duration(P)),er.call(Te.event)}function hr(){le&&le.domain(te.range().map(function(er){return(er-c.x)/c.k}).map(te.invert)),xe&&xe.domain(ue.range().map(function(er){return(er-c.y)/c.k}).map(ue.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function pr(er){--E||(er({type:"zoomend"}),x=null)}function Tr(){var er=this,Lr=we.of(er,arguments),qr=0,Kr=e.select(i(er)).on(G,ca).on(W,La),_t=ce(e.mouse(er)),Ot=fr(er);$c.call(er),dr(Lr);function ca(){qr=1,or(e.mouse(er),_t),Sr(Lr)}function La(){Kr.on(G,null).on(W,null),Ot(qr),pr(Lr)}}function Jr(){var er=this,Lr=we.of(er,arguments),qr={},Kr=0,_t,Ot=".zoom-"+e.event.changedTouches[0].identifier,ca="touchmove"+Ot,La="touchend"+Ot,Oa=[],qa=e.select(er),Ga=fr(er);Va(),dr(Lr),qa.on(F,null).on(ee,Va);function ba(){var Yn=e.touches(er);return _t=c.k,Yn.forEach(function(va){va.identifier in qr&&(qr[va.identifier]=ce(va))}),Yn}function Va(){var Yn=e.event.target;e.select(Yn).on(ca,Jl).on(La,jF),Oa.push(Yn);for(var va=e.event.changedTouches,yn=0,vi=va.length;yn1){var Kl=gn[0],al=gn[1],rv=Kl[0]-al[0],ab=Kl[1]-al[1];Kr=rv*rv+ab*ab}}function Jl(){var Yn=e.touches(er),va,yn,vi,gn;$c.call(er);for(var ls=0,Kl=Yn.length;ls1?1:p,x=x<0?0:x>1?1:x,C=x<=.5?x*(1+p):x+p-x*p,M=2*x-C;function L(E){return E>360?E-=360:E<0&&(E+=360),E<60?M+(C-M)*E/60:E<180?C:E<240?M+(C-M)*(240-E)/60:M}function P(E){return Math.round(L(E)*255)}return new Sa(P(c+120),P(c),P(c-120))}e.hcl=aa;function aa(c,p,x){return this instanceof aa?(this.h=+c,this.c=+p,void(this.l=+x)):arguments.length<2?c instanceof aa?new aa(c.h,c.c,c.l):c instanceof Zt?Dc(c.l,c.a,c.b):Dc((c=nr((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new aa(c,p,x)}var In=aa.prototype=new Tt;In.brighter=function(c){return new aa(this.h,this.c,Math.min(100,this.l+at*(arguments.length?c:1)))},In.darker=function(c){return new aa(this.h,this.c,Math.max(0,this.l-at*(arguments.length?c:1)))},In.rgb=function(){return Hn(this.h,this.c,this.l).rgb()};function Hn(c,p,x){return isNaN(c)&&(c=0),isNaN(p)&&(p=0),new Zt(x,Math.cos(c*=Mr)*p,Math.sin(c)*p)}e.lab=Zt;function Zt(c,p,x){return this instanceof Zt?(this.l=+c,this.a=+p,void(this.b=+x)):arguments.length<2?c instanceof Zt?new Zt(c.l,c.a,c.b):c instanceof aa?Hn(c.h,c.c,c.l):nr((c=Sa(c)).r,c.g,c.b):new Zt(c,p,x)}var at=18,sa=.95047,Ul=1,Gl=1.08883,rl=Zt.prototype=new Tt;rl.brighter=function(c){return new Zt(Math.min(100,this.l+at*(arguments.length?c:1)),this.a,this.b)},rl.darker=function(c){return new Zt(Math.max(0,this.l-at*(arguments.length?c:1)),this.a,this.b)},rl.rgb=function(){return qc(this.l,this.a,this.b)};function qc(c,p,x){var M=(c+16)/116,C=M+p/500,L=M-x/200;return C=ku(C)*sa,M=ku(M)*Ul,L=ku(L)*Gl,new Sa(Su(3.2404542*C-1.5371385*M-.4985314*L),Su(-.969266*C+1.8760108*M+.041556*L),Su(.0556434*C-.2040259*M+1.0572252*L))}function Dc(c,p,x){return c>0?new aa(Math.atan2(x,p)*Ur,Math.sqrt(p*p+x*x),c):new aa(NaN,NaN,c)}function ku(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function Cu(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Su(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Sa;function Sa(c,p,x){return this instanceof Sa?(this.r=~~c,this.g=~~p,void(this.b=~~x)):arguments.length<2?c instanceof Sa?new Sa(c.r,c.g,c.b):Zr(""+c,Sa,Ca):new Sa(c,p,x)}function Ec(c){return new Sa(c>>16,c>>8&255,c&255)}function $o(c){return Ec(c)+""}var jo=Sa.prototype=new Tt;jo.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var p=this.r,x=this.g,M=this.b,C=30;return!p&&!x&&!M?new Sa(C,C,C):(p&&p>4,M=M>>4|M,C=F&240,C=C>>4|C,L=F&15,L=L<<4|L):c.length===7&&(M=(F&16711680)>>16,C=(F&65280)>>8,L=F&255)),p(M,C,L))}function jr(c,p,x){var M=Math.min(c/=255,p/=255,x/=255),C=Math.max(c,p,x),L=C-M,P,E,F=(C+M)/2;return L?(E=F<.5?L/(C+M):L/(2-C-M),c==C?P=(p-x)/L+(p0&&F<1?0:P),new ot(P,E,F)}function nr(c,p,x){c=ua(c),p=ua(p),x=ua(x);var M=Cu((.4124564*c+.3575761*p+.1804375*x)/sa),C=Cu((.2126729*c+.7151522*p+.072175*x)/Ul),L=Cu((.0193339*c+.119192*p+.9503041*x)/Gl);return Zt(116*C-16,500*(M-C),200*(C-L))}function ua(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function st(c){var p=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(p*2.55):p}var fa=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});fa.forEach(function(c,p){fa.set(c,Ec(p))});function Rr(c){return typeof c=="function"?c:function(){return c}}e.functor=Rr,e.xhr=On(J);function On(c){return function(p,x,M){return arguments.length===2&&typeof x=="function"&&(M=x,x=null),Vl(p,x,c,M)}}function Vl(c,p,x,M){var C={},L=e.dispatch("beforesend","progress","load","error"),P={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(c)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=G:E.onreadystatechange=function(){E.readyState>3&&G()};function G(){var W=E.status,$;if(!W&&rN(E)||W>=200&&W<300||W===304){try{$=x.call(C,E)}catch(ee){L.error.call(C,ee);return}L.load.call(C,$)}else L.error.call(C,E)}return E.onprogress=function(W){var $=e.event;e.event=W;try{L.progress.call(C,E)}finally{e.event=$}},C.header=function(W,$){return W=(W+"").toLowerCase(),arguments.length<2?P[W]:($==null?delete P[W]:P[W]=$+"",C)},C.mimeType=function(W){return arguments.length?(p=W==null?null:W+"",C):p},C.responseType=function(W){return arguments.length?(F=W,C):F},C.response=function(W){return x=W,C},["get","post"].forEach(function(W){C[W]=function(){return C.send.apply(C,[W].concat(t(arguments)))}}),C.send=function(W,$,ee){if(arguments.length===2&&typeof $=="function"&&(ee=$,$=null),E.open(W,c,!0),p!=null&&!("accept"in P)&&(P.accept=p+",*/*"),E.setRequestHeader)for(var he in P)E.setRequestHeader(he,P[he]);return p!=null&&E.overrideMimeType&&E.overrideMimeType(p),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(we){ee(null,we)}),L.beforesend.call(C,E),E.send($==null?null:$),C},C.abort=function(){return E.abort(),C},e.rebind(C,L,"on"),M==null?C:C.get(eN(M))}function eN(c){return c.length===1?function(p,x){c(p==null?x:null)}:c}function rN(c){var p=c.responseType;return p&&p!=="text"?c.response:c.responseText}e.dsv=function(c,p){var x=new RegExp('["'+c+` ]`),M=c.charCodeAt(0);function C(G,W,$){arguments.length<3&&($=W,W=null);var ee=Vl(G,p,W==null?L:P(W),$);return ee.row=function(he){return arguments.length?ee.response((W=he)==null?L:P(he)):W},ee}function L(G){return C.parse(G.responseText)}function P(G){return function(W){return C.parse(W.responseText,G)}}C.parse=function(G,W){var $;return C.parseRows(G,function(ee,he){if($)return $(ee,he-1);var we=function(te){for(var le={},ue=ee.length,xe=0;xe=we)return ee;if(xe)return xe=!1,$;var Ge=te;if(G.charCodeAt(Ge)===34){for(var rr=Ge;rr++24?(isFinite(p)&&(clearTimeout(Nc),Nc=setTimeout(v1,p)),zc=0):(zc=1,U3(v1))}e.timer.flush=function(){G3(),V3()};function G3(){for(var c=Date.now(),p=Pc;p;)c>=p.t&&p.c(c-p.t)&&(p.c=null),p=p.n;return c}function V3(){for(var c,p=Pc,x=1/0;p;)p.c?(p.t=0;--E)te.push(C[G[$[E]][2]]);for(E=+he;E1&&Vr(c[x[M-2]],c[x[M-1]],c[C])<=0;)--M;x[M++]=C}return x.slice(0,M)}function tN(c,p){return c[0]-p[0]||c[1]-p[1]}e.geom.polygon=function(c){return j(c,Ic),c};var Ic=e.geom.polygon.prototype=[];Ic.area=function(){for(var c=-1,p=this.length,x,M=this[p-1],C=0;++coe)E=E.L;else if(P=p-lN(E,x),P>oe){if(!E.R){M=E;break}E=E.R}else{L>-oe?(M=E.P,C=E):P>-oe?(M=E,C=E.N):M=C=E;break}var F=K3(c);if(ts.insert(M,F),!(!M&&!C)){if(M===C){ns(M),C=K3(M.site),ts.insert(F,C),F.edge=C.edge=Du(M.site,F.site),as(M),as(C);return}if(!C){F.edge=Du(M.site,F.site);return}ns(M),ns(C);var G=M.site,W=G.x,$=G.y,ee=c.x-W,he=c.y-$,we=C.site,te=we.x-W,le=we.y-$,ue=2*(ee*le-he*te),xe=ee*ee+he*he,Te=te*te+le*le,ce={x:(le*xe-he*Te)/ue+W,y:(ee*Te-te*xe)/ue+$};Hc(C.edge,G,we,ce),F.edge=Du(G,c,null,ce),C.edge=Du(c,we,null,ce),as(M),as(C)}}function Q3(c,p){var x=c.site,M=x.x,C=x.y,L=C-p;if(!L)return M;var P=c.P;if(!P)return-1/0;x=P.site;var E=x.x,F=x.y,G=F-p;if(!G)return E;var W=E-M,$=1/L-1/G,ee=W/G;return $?(-ee+Math.sqrt(ee*ee-2*$*(W*W/(-2*G)-F+G/2+C-L/2)))/$+M:(M+E)/2}function lN(c,p){var x=c.N;if(x)return Q3(x,p);var M=c.site;return M.y===p?M.x:1/0}function $3(c){this.site=c,this.edges=[]}$3.prototype.prepare=function(){for(var c=this.edges,p=c.length,x;p--;)x=c[p].edge,(!x.b||!x.a)&&c.splice(p,1);return c.sort(j3),c.length};function oN(c){for(var p=c[0][0],x=c[1][0],M=c[0][1],C=c[1][1],L,P,E,F,G=Wl,W=G.length,$,ee,he,we,te,le;W--;)if($=G[W],!(!$||!$.prepare()))for(he=$.edges,we=he.length,ee=0;eeoe||_(F-P)>oe)&&(he.splice(ee,0,new Oc(vN($.site,le,_(E-p)oe?{x:p,y:_(L-p)oe?{x:_(P-C)oe?{x,y:_(L-x)oe?{x:_(P-M)=-qe)){var ee=F*F+G*G,he=W*W+le*le,we=(le*ee-G*he)/$,te=(F*he-W*ee)/$,le=te+E,ue=J3.pop()||new sN;ue.arc=c,ue.site=C,ue.x=we+P,ue.y=le+Math.sqrt(we*we+te*te),ue.cy=le,c.circle=ue;for(var xe=null,Te=qu._;Te;)if(ue.y0)){if(te/=he,he<0){if(te<$)return;te0){if(te>ee)return;te>$&&($=te)}if(te=x-E,!(!he&&te<0)){if(te/=he,he<0){if(te>ee)return;te>$&&($=te)}else if(he>0){if(te<$)return;te0)){if(te/=we,we<0){if(te<$)return;te0){if(te>ee)return;te>$&&($=te)}if(te=M-F,!(!we&&te<0)){if(te/=we,we<0){if(te>ee)return;te>$&&($=te)}else if(we>0){if(te<$)return;te0&&(C.a={x:E+$*he,y:F+$*we}),ee<1&&(C.b={x:E+ee*he,y:F+ee*we}),C}}}}}}function fN(c){for(var p=rs,x=uN(c[0][0],c[0][1],c[1][0],c[1][1]),M=p.length,C;M--;)C=p[M],(!cN(C,c)||!x(C)||_(C.a.x-C.b.x)=L)return;if(W>ee){if(!M)M={x:we,y:P};else if(M.y>=E)return;x={x:we,y:E}}else{if(!M)M={x:we,y:E};else if(M.y1)if(W>ee){if(!M)M={x:(P-ue)/le,y:P};else if(M.y>=E)return;x={x:(E-ue)/le,y:E}}else{if(!M)M={x:(E-ue)/le,y:E};else if(M.y=L)return;x={x:L,y:le*L+ue}}else{if(!M)M={x:L,y:le*L+ue};else if(M.x=W&&ue.x<=ee&&ue.y>=$&&ue.y<=he?[[W,he],[ee,he],[ee,$],[W,$]]:[];xe.point=F[te]}),G}function E(F){return F.map(function(G,W){return{x:Math.round(M(G,W)/oe)*oe,y:Math.round(C(G,W)/oe)*oe,i:W}})}return P.links=function(F){return g1(E(F)).edges.filter(function(G){return G.l&&G.r}).map(function(G){return{source:F[G.l.i],target:F[G.r.i]}})},P.triangles=function(F){var G=[];return g1(E(F)).cells.forEach(function(W,$){for(var ee=W.site,he=W.edges.sort(j3),we=-1,te=he.length,le,ue,xe=he[te-1].edge,Te=xe.l===ee?xe.r:xe.l;++weTe&&(Te=W.x),W.y>ce&&(ce=W.y),he.push(W.x),we.push(W.y);else for(te=0;teTe&&(Te=Ge),rr>ce&&(ce=rr),he.push(Ge),we.push(rr)}var or=Te-ue,ar=ce-xe;or>ar?ce=xe+or:Te=ue+ar;function hr(pr,Tr,Jr,Lt,rt,er,Lr,qr){if(!(isNaN(Jr)||isNaN(Lt)))if(pr.leaf){var Kr=pr.x,_t=pr.y;if(Kr!=null)if(_(Kr-Jr)+_(_t-Lt)<.01)dr(pr,Tr,Jr,Lt,rt,er,Lr,qr);else{var Ot=pr.point;pr.x=pr.y=pr.point=null,dr(pr,Ot,Kr,_t,rt,er,Lr,qr),dr(pr,Tr,Jr,Lt,rt,er,Lr,qr)}else pr.x=Jr,pr.y=Lt,pr.point=Tr}else dr(pr,Tr,Jr,Lt,rt,er,Lr,qr)}function dr(pr,Tr,Jr,Lt,rt,er,Lr,qr){var Kr=(rt+Lr)*.5,_t=(er+qr)*.5,Ot=Jr>=Kr,ca=Lt>=_t,La=ca<<1|Ot;pr.leaf=!1,pr=pr.nodes[La]||(pr.nodes[La]=t5()),Ot?rt=Kr:Lr=Kr,ca?er=_t:qr=_t,hr(pr,Tr,Jr,Lt,rt,er,Lr,qr)}var Sr=t5();if(Sr.add=function(pr){hr(Sr,pr,+$(pr,++te),+ee(pr,te),ue,xe,Te,ce)},Sr.visit=function(pr){Ru(pr,Sr,ue,xe,Te,ce)},Sr.find=function(pr){return yN(Sr,pr[0],pr[1],ue,xe,Te,ce)},te=-1,p==null){for(;++teL||ee>P||he=Ge,ar=x>=rr,hr=ar<<1|or,dr=hr+4;hrx&&(L=p.slice(x,L),E[P]?E[P]+=L:E[++P]=L),(M=M[0])===(C=C[0])?E[P]?E[P]+=C:E[++P]=C:(E[++P]=null,F.push({i:P,x:Ri(M,C)})),x=_1.lastIndex;return x=0&&!(M=e.interpolators[x](c,p)););return M}e.interpolators=[function(c,p){var x=typeof p;return(x==="string"?fa.has(p.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(p)?b1:n5:p instanceof Tt?b1:Array.isArray(p)?Uc:x==="object"&&isNaN(p)?a5:Ri)(c,p)}],e.interpolateArray=Uc;function Uc(c,p){var x=[],M=[],C=c.length,L=p.length,P=Math.min(c.length,p.length),E;for(E=0;E=0?c.slice(0,p):c,M=p>=0?c.slice(p+1):"in";return x=gN.get(x)||i5,M=bN.get(M)||J,xN(M(x.apply(null,r.call(arguments,1))))};function xN(c){return function(p){return p<=0?0:p>=1?1:c(p)}}function l5(c){return function(p){return 1-c(1-p)}}function o5(c){return function(p){return .5*(p<.5?c(2*p):2-c(2-2*p))}}function _N(c){return c*c}function wN(c){return c*c*c}function TN(c){if(c<=0)return 0;if(c>=1)return 1;var p=c*c,x=p*c;return 4*(c<.5?x:3*(c-p)+x-.75)}function MN(c){return function(p){return Math.pow(p,c)}}function AN(c){return 1-Math.cos(c*sr)}function kN(c){return Math.pow(2,10*(c-1))}function CN(c){return 1-Math.sqrt(1-c*c)}function SN(c,p){var x;return arguments.length<2&&(p=.45),arguments.length?x=p/ir*Math.asin(1/c):(c=1,x=p/4),function(M){return 1+c*Math.pow(2,-10*M)*Math.sin((M-x)*ir/p)}}function LN(c){return c||(c=1.70158),function(p){return p*p*((c+1)*p-c)}}function qN(c){return c<1/2.75?7.5625*c*c:c<2/2.75?7.5625*(c-=1.5/2.75)*c+.75:c<2.5/2.75?7.5625*(c-=2.25/2.75)*c+.9375:7.5625*(c-=2.625/2.75)*c+.984375}e.interpolateHcl=DN;function DN(c,p){c=e.hcl(c),p=e.hcl(p);var x=c.h,M=c.c,C=c.l,L=p.h-x,P=p.c-M,E=p.l-C;return isNaN(P)&&(P=0,M=isNaN(M)?p.c:M),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(F){return Hn(x+L*F,M+P*F,C+E*F)+""}}e.interpolateHsl=EN;function EN(c,p){c=e.hsl(c),p=e.hsl(p);var x=c.h,M=c.s,C=c.l,L=p.h-x,P=p.s-M,E=p.l-C;return isNaN(P)&&(P=0,M=isNaN(M)?p.s:M),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(F){return Ca(x+L*F,M+P*F,C+E*F)+""}}e.interpolateLab=PN;function PN(c,p){c=e.lab(c),p=e.lab(p);var x=c.l,M=c.a,C=c.b,L=p.l-x,P=p.a-M,E=p.b-C;return function(F){return qc(x+L*F,M+P*F,C+E*F)+""}}e.interpolateRound=s5;function s5(c,p){return p-=c,function(x){return Math.round(c+p*x)}}e.transform=function(c){var p=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(x){if(x!=null){p.setAttribute("transform",x);var M=p.transform.baseVal.consolidate()}return new u5(M?M.matrix:zN)})(c)};function u5(c){var p=[c.a,c.b],x=[c.c,c.d],M=c5(p),C=f5(p,x),L=c5(RN(x,p,-C))||0;p[0]*x[1]180?p+=360:p-c>180&&(c+=360),M.push({i:x.push(is(x)+"rotate(",null,")")-2,x:Ri(c,p)})):p&&x.push(is(x)+"rotate("+p+")")}function IN(c,p,x,M){c!==p?M.push({i:x.push(is(x)+"skewX(",null,")")-2,x:Ri(c,p)}):p&&x.push(is(x)+"skewX("+p+")")}function HN(c,p,x,M){if(c[0]!==p[0]||c[1]!==p[1]){var C=x.push(is(x)+"scale(",null,",",null,")");M.push({i:C-4,x:Ri(c[0],p[0])},{i:C-2,x:Ri(c[1],p[1])})}else(p[0]!==1||p[1]!==1)&&x.push(is(x)+"scale("+p+")")}function v5(c,p){var x=[],M=[];return c=e.transform(c),p=e.transform(p),NN(c.translate,p.translate,x,M),FN(c.rotate,p.rotate,x,M),IN(c.skew,p.skew,x,M),HN(c.scale,p.scale,x,M),c=p=null,function(C){for(var L=-1,P=M.length,E;++L0?L=ce:(x.c=null,x.t=NaN,x=null,p.end({type:"end",alpha:L=0})):ce>0&&(p.start({type:"start",alpha:L=ce}),x=Fc(c.tick)),c):L},c.start=function(){var ce,Ge=he.length,rr=we.length,or=M[0],ar=M[1],hr,dr;for(ce=0;ce=0;)L.push(W=G[F]),W.parent=E,W.depth=E.depth+1;x&&(E.value=0),E.children=G}else x&&(E.value=+x.call(M,E,E.depth)||0),delete E.children;return ci(C,function($){var ee,he;c&&(ee=$.children)&&ee.sort(c),x&&(he=$.parent)&&(he.value+=$.value)}),P}return M.sort=function(C){return arguments.length?(c=C,M):c},M.children=function(C){return arguments.length?(p=C,M):p},M.value=function(C){return arguments.length?(x=C,M):x},M.revalue=function(C){return x&&(Nu(C,function(L){L.children&&(L.value=0)}),ci(C,function(L){var P;L.children||(L.value=+x.call(M,L,L.depth)||0),(P=L.parent)&&(P.value+=L.value)})),C},M};function zu(c,p){return e.rebind(c,p,"sort","children","value"),c.nodes=c,c.links=eF,c}function Nu(c,p){for(var x=[c];(c=x.pop())!=null;)if(p(c),(C=c.children)&&(M=C.length))for(var M,C;--M>=0;)x.push(C[M])}function ci(c,p){for(var x=[c],M=[];(c=x.pop())!=null;)if(M.push(c),(P=c.children)&&(L=P.length))for(var C=-1,L,P;++CC&&(C=E),M.push(E)}for(P=0;PM&&(x=p,M=C);return x}function oF(c){return c.reduce(sF,0)}function sF(c,p){return c+p[1]}e.layout.histogram=function(){var c=!0,p=Number,x=fF,M=uF;function C(L,ee){for(var E=[],F=L.map(p,this),G=x.call(this,F,ee),W=M.call(this,G,F,ee),$,ee=-1,he=F.length,we=W.length-1,te=c?1:1/he,le;++ee0)for(ee=-1;++ee=G[0]&&le<=G[1]&&($=E[e.bisect(W,le,1,we)-1],$.y+=te,$.push(L[ee]));return E}return C.value=function(L){return arguments.length?(p=L,C):p},C.range=function(L){return arguments.length?(x=Rr(L),C):x},C.bins=function(L){return arguments.length?(M=typeof L=="number"?function(P){return m5(P,L)}:Rr(L),C):M},C.frequency=function(L){return arguments.length?(c=!!L,C):c},C};function uF(c,p){return m5(c,Math.ceil(Math.log(p.length)/Math.LN2+1))}function m5(c,p){for(var x=-1,M=+c[0],C=(c[1]-M)/p,L=[];++x<=p;)L[x]=C*x+M;return L}function fF(c){return[e.min(c),e.max(c)]}e.layout.pack=function(){var c=e.layout.hierarchy().sort(cF),p=0,x=[1,1],M;function C(L,P){var E=c.call(this,L,P),F=E[0],G=x[0],W=x[1],$=M==null?Math.sqrt:typeof M=="function"?M:function(){return M};if(F.x=F.y=0,ci(F,function(he){he.r=+$(he.value)}),ci(F,b5),p){var ee=p*(M?1:Math.max(2*F.r/G,2*F.r/W))/2;ci(F,function(he){he.r+=ee}),ci(F,b5),ci(F,function(he){he.r-=ee})}return x5(F,G/2,W/2,M?1:1/Math.max(2*F.r/G,2*F.r/W)),E}return C.size=function(L){return arguments.length?(x=L,C):x},C.radius=function(L){return arguments.length?(M=L==null||typeof L=="function"?L:+L,C):M},C.padding=function(L){return arguments.length?(p=+L,C):p},zu(C,c)};function cF(c,p){return c.value-p.value}function M1(c,p){var x=c._pack_next;c._pack_next=p,p._pack_prev=c,p._pack_next=x,x._pack_prev=p}function y5(c,p){c._pack_next=p,p._pack_prev=c}function g5(c,p){var x=p.x-c.x,M=p.y-c.y,C=c.r+p.r;return .999*C*C>x*x+M*M}function b5(c){if(!(p=c.children)||!(ee=p.length))return;var p,x=1/0,M=-1/0,C=1/0,L=-1/0,P,E,F,G,W,$,ee;function he(ce){x=Math.min(ce.x-ce.r,x),M=Math.max(ce.x+ce.r,M),C=Math.min(ce.y-ce.r,C),L=Math.max(ce.y+ce.r,L)}if(p.forEach(vF),P=p[0],P.x=-P.r,P.y=0,he(P),ee>1&&(E=p[1],E.x=E.r,E.y=0,he(E),ee>2))for(F=p[2],_5(P,E,F),he(F),M1(P,F),P._pack_prev=F,M1(F,E),E=P._pack_next,G=3;Gle.x&&(le=Ge),Ge.depth>ue.depth&&(ue=Ge)});var xe=p(te,le)/2-te.x,Te=x[0]/(le.x+p(le,te)/2+xe),ce=x[1]/(ue.depth||1);Nu(he,function(Ge){Ge.x=(Ge.x+xe)*Te,Ge.y=Ge.depth*ce})}return ee}function L(W){for(var $={A:null,children:[W]},ee=[$],he;(he=ee.pop())!=null;)for(var we=he.children,te,le=0,ue=we.length;le0&&(dF(mF(te,W,ee),W,Ge),ue+=Ge,xe+=Ge),Te+=te.m,ue+=he.m,ce+=le.m,xe+=we.m;te&&!k1(we)&&(we.t=te,we.m+=Te-xe),he&&!A1(le)&&(le.t=he,le.m+=ue-ce,ee=W)}return ee}function G(W){W.x*=x[0],W.y=W.depth*x[1]}return C.separation=function(W){return arguments.length?(p=W,C):p},C.size=function(W){return arguments.length?(M=(x=W)==null?G:null,C):M?null:x},C.nodeSize=function(W){return arguments.length?(M=(x=W)==null?null:G,C):M?x:null},zu(C,c)};function w5(c,p){return c.parent==p.parent?1:2}function A1(c){var p=c.children;return p.length?p[0]:c.t}function k1(c){var p=c.children,x;return(x=p.length)?p[x-1]:c.t}function dF(c,p,x){var M=x/(p.i-c.i);p.c-=M,p.s+=x,c.c+=M,p.z+=x,p.m+=x}function pF(c){for(var p=0,x=0,M=c.children,C=M.length,L;--C>=0;)L=M[C],L.z+=p,L.m+=p,p+=L.s+(x+=L.c)}function mF(c,p,x){return c.a.parent===p.parent?c.a:x}e.layout.cluster=function(){var c=e.layout.hierarchy().sort(null).value(null),p=w5,x=[1,1],M=!1;function C(L,P){var E=c.call(this,L,P),F=E[0],G,W=0;ci(F,function(te){var le=te.children;le&&le.length?(te.x=gF(le),te.y=yF(le)):(te.x=G?W+=p(te,G):0,te.y=0,G=te)});var $=T5(F),ee=M5(F),he=$.x-p($,ee)/2,we=ee.x+p(ee,$)/2;return ci(F,M?function(te){te.x=(te.x-F.x)*x[0],te.y=(F.y-te.y)*x[1]}:function(te){te.x=(te.x-he)/(we-he)*x[0],te.y=(1-(F.y?te.y/F.y:1))*x[1]}),E}return C.separation=function(L){return arguments.length?(p=L,C):p},C.size=function(L){return arguments.length?(M=(x=L)==null,C):M?null:x},C.nodeSize=function(L){return arguments.length?(M=(x=L)!=null,C):M?x:null},zu(C,c)};function yF(c){return 1+e.max(c,function(p){return p.y})}function gF(c){return c.reduce(function(p,x){return p+x.x},0)/c.length}function T5(c){var p=c.children;return p&&p.length?T5(p[0]):c}function M5(c){var p=c.children,x;return p&&(x=p.length)?M5(p[x-1]):c}e.layout.treemap=function(){var c=e.layout.hierarchy(),p=Math.round,x=[1,1],M=null,C=C1,L=!1,P,E="squarify",F=.5*(1+Math.sqrt(5));function G(te,le){for(var ue=-1,xe=te.length,Te,ce;++ue0;)xe.push(ce=Te[ar-1]),xe.area+=ce.area,E!=="squarify"||(rr=ee(xe,or))<=Ge?(Te.pop(),Ge=rr):(xe.area-=xe.pop().area,he(xe,or,ue,!1),or=Math.min(ue.dx,ue.dy),xe.length=xe.area=0,Ge=1/0);xe.length&&(he(xe,or,ue,!0),xe.length=xe.area=0),le.forEach(W)}}function $(te){var le=te.children;if(le&&le.length){var ue=C(te),xe=le.slice(),Te,ce=[];for(G(xe,ue.dx*ue.dy/te.value),ce.area=0;Te=xe.pop();)ce.push(Te),ce.area+=Te.area,Te.z!=null&&(he(ce,Te.z?ue.dx:ue.dy,ue,!xe.length),ce.length=ce.area=0);le.forEach($)}}function ee(te,le){for(var ue=te.area,xe,Te=0,ce=1/0,Ge=-1,rr=te.length;++GeTe&&(Te=xe));return ue*=ue,le*=le,ue?Math.max(le*Te*F/ue,ue/(le*ce*F)):1/0}function he(te,le,ue,xe){var Te=-1,ce=te.length,Ge=ue.x,rr=ue.y,or=le?p(te.area/le):0,ar;if(le==ue.dx){for((xe||or>ue.dy)&&(or=ue.dy);++Teue.dx)&&(or=ue.dx);++Te1);return c+p*M*Math.sqrt(-2*Math.log(L)/L)}},logNormal:function(){var c=e.random.normal.apply(e,arguments);return function(){return Math.exp(c())}},bates:function(c){var p=e.random.irwinHall(c);return function(){return p()/c}},irwinHall:function(c){return function(){for(var p=0,x=0;x2?_F:bF,G=M?BN:ON;return C=F(c,p,G,x),L=F(p,c,G,Zl),E}function E(F){return C(F)}return E.invert=function(F){return L(F)},E.domain=function(F){return arguments.length?(c=F.map(Number),P()):c},E.range=function(F){return arguments.length?(p=F,P()):p},E.rangeRound=function(F){return E.range(F).interpolate(s5)},E.clamp=function(F){return arguments.length?(M=F,P()):M},E.interpolate=function(F){return arguments.length?(x=F,P()):x},E.ticks=function(F){return q1(c,F)},E.tickFormat=function(F,G){return d3_scale_linearTickFormat(c,F,G)},E.nice=function(F){return L5(c,F),P()},E.copy=function(){return C5(c,p,x,M)},P()}function S5(c,p){return e.rebind(c,p,"range","rangeRound","interpolate","clamp")}function L5(c,p){return S1(c,k5(L1(c,p)[2])),S1(c,k5(L1(c,p)[2])),c}function L1(c,p){p==null&&(p=10);var x=Gc(c),M=x[1]-x[0],C=Math.pow(10,Math.floor(Math.log(M/p)/Math.LN10)),L=p/M*C;return L<=.15?C*=10:L<=.35?C*=5:L<=.75&&(C*=2),x[0]=Math.ceil(x[0]/C)*C,x[1]=Math.floor(x[1]/C)*C+C*.5,x[2]=C,x}function q1(c,p){return e.range.apply(e,L1(c,p))}var wF={s:1,g:1,p:1,r:1,e:1};function q5(c){return-Math.floor(Math.log(c)/Math.LN10+.01)}function lie(c,p){var x=q5(p[2]);return c in wF?Math.abs(x-q5(Math.max(_(p[0]),_(p[1]))))+ +(c!=="e"):x-(c==="%")*2}e.scale.log=function(){return D5(e.scale.linear().domain([0,1]),10,!0,[1,10])};function D5(c,p,x,M){function C(E){return(x?Math.log(E<0?0:E):-Math.log(E>0?0:-E))/Math.log(p)}function L(E){return x?Math.pow(p,E):-Math.pow(p,-E)}function P(E){return c(C(E))}return P.invert=function(E){return L(c.invert(E))},P.domain=function(E){return arguments.length?(x=E[0]>=0,c.domain((M=E.map(Number)).map(C)),P):M},P.base=function(E){return arguments.length?(p=+E,c.domain(M.map(C)),P):p},P.nice=function(){var E=S1(M.map(C),x?Math:TF);return c.domain(E),M=E.map(L),P},P.ticks=function(){var E=Gc(M),F=[],G=E[0],W=E[1],$=Math.floor(C(G)),ee=Math.ceil(C(W)),he=p%1?2:p;if(isFinite(ee-$)){if(x){for(;$0;we--)F.push(L($)*we);for($=0;F[$]W;ee--);F=F.slice($,ee)}return F},P.copy=function(){return D5(c.copy(),p,x,M)},S5(P,c)}var TF={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return E5(e.scale.linear(),1,[0,1])};function E5(c,p,x){var M=Wc(p),C=Wc(1/p);function L(P){return c(M(P))}return L.invert=function(P){return C(c.invert(P))},L.domain=function(P){return arguments.length?(c.domain((x=P.map(Number)).map(M)),L):x},L.ticks=function(P){return q1(x,P)},L.tickFormat=function(P,E){return d3_scale_linearTickFormat(x,P,E)},L.nice=function(P){return L.domain(L5(x,P))},L.exponent=function(P){return arguments.length?(M=Wc(p=P),C=Wc(1/p),c.domain(x.map(M)),L):p},L.copy=function(){return E5(c.copy(),p,x)},S5(L,c)}function Wc(c){return function(p){return p<0?-Math.pow(-p,c):Math.pow(p,c)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return P5([],{t:"range",a:[[]]})};function P5(c,p){var x,M,C;function L(E){return M[((x.get(E)||(p.t==="range"?x.set(E,c.push(E)):NaN))-1)%M.length]}function P(E,F){return e.range(c.length).map(function(G){return E+F*G})}return L.domain=function(E){if(!arguments.length)return c;c=[],x=new b;for(var F=-1,G=E.length,W;++F0?x[L-1]:c[0],Lee?0:1;if(W=vr)return F(W,we)+(G?F(G,1-we):"")+"Z";var te,le,ue,xe,Te=0,ce=0,Ge,rr,or,ar,hr,dr,Sr,pr,Tr=[];if((xe=(+P.apply(this,arguments)||0)/2)&&(ue=M===Zc?Math.sqrt(G*G+W*W):+M.apply(this,arguments),we||(ce*=-1),W&&(ce=ea(ue/W*Math.sin(xe))),G&&(Te=ea(ue/G*Math.sin(xe)))),W){Ge=W*Math.cos($+ce),rr=W*Math.sin($+ce),or=W*Math.cos(ee-ce),ar=W*Math.sin(ee-ce);var Jr=Math.abs(ee-$-2*ce)<=ke?0:1;if(ce&&Xc(Ge,rr,or,ar)===we^Jr){var Lt=($+ee)/2;Ge=W*Math.cos(Lt),rr=W*Math.sin(Lt),or=ar=null}}else Ge=rr=0;if(G){hr=G*Math.cos(ee-Te),dr=G*Math.sin(ee-Te),Sr=G*Math.cos($+Te),pr=G*Math.sin($+Te);var rt=Math.abs($-ee+2*Te)<=ke?0:1;if(Te&&Xc(hr,dr,Sr,pr)===1-we^rt){var er=($+ee)/2;hr=G*Math.cos(er),dr=G*Math.sin(er),Sr=pr=null}}else hr=dr=0;if(he>oe&&(te=Math.min(Math.abs(W-G)/2,+x.apply(this,arguments)))>.001){le=G0?0:1}function Jc(c,p,x,M,C){var L=c[0]-p[0],P=c[1]-p[1],E=(C?M:-M)/Math.sqrt(L*L+P*P),F=E*P,G=-E*L,W=c[0]+F,$=c[1]+G,ee=p[0]+F,he=p[1]+G,we=(W+ee)/2,te=($+he)/2,le=ee-W,ue=he-$,xe=le*le+ue*ue,Te=x-M,ce=W*he-ee*$,Ge=(ue<0?-1:1)*Math.sqrt(Math.max(0,Te*Te*xe-ce*ce)),rr=(ce*ue-le*Ge)/xe,or=(-ce*le-ue*Ge)/xe,ar=(ce*ue+le*Ge)/xe,hr=(-ce*le+ue*Ge)/xe,dr=rr-we,Sr=or-te,pr=ar-we,Tr=hr-te;return dr*dr+Sr*Sr>pr*pr+Tr*Tr&&(rr=ar,or=hr),[[rr-F,or-G],[rr*x/Te,or*x/Te]]}function O5(){return!0}function B5(c){var p=es,x=Lu,M=O5,C=Bn,L=C.key,P=.7;function E(F){var G=[],W=[],$=-1,ee=F.length,he,we=Rr(p),te=Rr(x);function le(){G.push("M",C(c(W),P))}for(;++$1?c.join("L"):c+"Z"}function Y5(c){return c.join("L")+"Z"}function EF(c){for(var p=0,x=c.length,M=c[0],C=[M[0],",",M[1]];++p1&&C.push("H",M[0]),C.join("")}function E1(c){for(var p=0,x=c.length,M=c[0],C=[M[0],",",M[1]];++p1){E=p[1],L=c[F],F++,M+="C"+(C[0]+P[0])+","+(C[1]+P[1])+","+(L[0]-E[0])+","+(L[1]-E[1])+","+L[0]+","+L[1];for(var G=2;G9&&(L=x*3/Math.sqrt(L),P[E]=L*M,P[E+1]=L*C));for(E=-1;++E<=F;)L=(c[Math.min(F,E+1)][0]-c[Math.max(0,E-1)][0])/(6*(1+P[E]*P[E])),p.push([L||0,P[E]*L||0]);return p}function BF(c){return c.length<3?Bn(c):c[0]+Kc(c,OF(c))}e.svg.line.radial=function(){var c=B5(W5);return c.radius=c.x,delete c.x,c.angle=c.y,delete c.y,c};function W5(c){for(var p,x=-1,M=c.length,C,L;++xke)+",1 "+$}function G(W,$,ee,he){return"Q 0,0 "+he}return L.radius=function(W){return arguments.length?(x=Rr(W),L):x},L.source=function(W){return arguments.length?(c=Rr(W),L):c},L.target=function(W){return arguments.length?(p=Rr(W),L):p},L.startAngle=function(W){return arguments.length?(M=Rr(W),L):M},L.endAngle=function(W){return arguments.length?(C=Rr(W),L):C},L};function YF(c){return c.radius}e.svg.diagonal=function(){var c=X5,p=J5,x=K5;function M(C,L){var P=c.call(this,C,L),E=p.call(this,C,L),F=(P.y+E.y)/2,G=[P,{x:P.x,y:F},{x:E.x,y:F},E];return G=G.map(x),"M"+G[0]+"C"+G[1]+" "+G[2]+" "+G[3]}return M.source=function(C){return arguments.length?(c=Rr(C),M):c},M.target=function(C){return arguments.length?(p=Rr(C),M):p},M.projection=function(C){return arguments.length?(x=C,M):x},M};function K5(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),p=K5,x=c.projection;return c.projection=function(M){return arguments.length?x(UF(p=M)):p},c};function UF(c){return function(){var p=c.apply(this,arguments),x=p[0],M=p[1]-sr;return[x*Math.cos(M),x*Math.sin(M)]}}e.svg.symbol=function(){var c=VF,p=GF;function x(M,C){return($5.get(c.call(this,M,C))||Q5)(p.call(this,M,C))}return x.type=function(M){return arguments.length?(c=Rr(M),x):c},x.size=function(M){return arguments.length?(p=Rr(M),x):p},x};function GF(){return 64}function VF(){return"circle"}function Q5(c){var p=Math.sqrt(c/ke);return"M0,"+p+"A"+p+","+p+" 0 1,1 0,"+-p+"A"+p+","+p+" 0 1,1 0,"+p+"Z"}var $5=e.map({circle:Q5,cross:function(c){var p=Math.sqrt(c/5)/2;return"M"+-3*p+","+-p+"H"+-p+"V"+-3*p+"H"+p+"V"+-p+"H"+3*p+"V"+p+"H"+p+"V"+3*p+"H"+-p+"V"+p+"H"+-3*p+"Z"},diamond:function(c){var p=Math.sqrt(c/(2*j5)),x=p*j5;return"M0,"+-p+"L"+x+",0 0,"+p+" "+-x+",0Z"},square:function(c){var p=Math.sqrt(c)/2;return"M"+-p+","+-p+"L"+p+","+-p+" "+p+","+p+" "+-p+","+p+"Z"},"triangle-down":function(c){var p=Math.sqrt(c/Qc),x=p*Qc/2;return"M0,"+x+"L"+p+","+-x+" "+-p+","+-x+"Z"},"triangle-up":function(c){var p=Math.sqrt(c/Qc),x=p*Qc/2;return"M0,"+-x+"L"+p+","+x+" "+-p+","+x+"Z"}});e.svg.symbolTypes=$5.keys();var Qc=Math.sqrt(3),j5=Math.tan(30*Mr);Ae.transition=function(c){for(var p=Xl||++rb,x=I1(c),M=[],C,L,P=jc||{time:Date.now(),ease:TN,delay:0,duration:250},E=-1,F=this.length;++E0;)$[--xe].call(c,ue);if(le>=1)return P.event&&P.event.end.call(c,c.__data__,p),--L.count?delete L[M]:delete c[x],1}P||(E=C.time,F=Fc(ee,0,E),P=L[M]={tween:new b,time:E,timer:F,delay:C.delay,duration:C.duration,ease:C.ease,index:p},C=null,++L.count)}e.svg.axis=function(){var c=e.scale.linear(),p=tb,x=6,M=6,C=3,L=[10],P=null,E;function F(G){G.each(function(){var W=e.select(this),$=this.__chart__||c,ee=this.__chart__=c.copy(),he=P==null?ee.ticks?ee.ticks.apply(ee,L):ee.domain():P,we=E==null?ee.tickFormat?ee.tickFormat.apply(ee,L):J:E,te=W.selectAll(".tick").data(he,ee),le=te.enter().insert("g",".domain").attr("class","tick").style("opacity",oe),ue=e.transition(te.exit()).style("opacity",oe).remove(),xe=e.transition(te.order()).style("opacity",1),Te=Math.max(x,0)+C,ce,Ge=Vc(ee),rr=W.selectAll(".domain").data([0]),or=(rr.enter().append("path").attr("class","domain"),e.transition(rr));le.append("line"),le.append("text");var ar=le.select("line"),hr=xe.select("line"),dr=te.select("text").text(we),Sr=le.select("text"),pr=xe.select("text"),Tr=p==="top"||p==="left"?-1:1,Jr,Lt,rt,er;if(p==="bottom"||p==="top"?(ce=XF,Jr="x",rt="y",Lt="x2",er="y2",dr.attr("dy",Tr<0?"0em":".71em").style("text-anchor","middle"),or.attr("d","M"+Ge[0]+","+Tr*M+"V0H"+Ge[1]+"V"+Tr*M)):(ce=JF,Jr="y",rt="x",Lt="y2",er="x2",dr.attr("dy",".32em").style("text-anchor",Tr<0?"end":"start"),or.attr("d","M"+Tr*M+","+Ge[0]+"H0V"+Ge[1]+"H"+Tr*M)),ar.attr(er,Tr*x),Sr.attr(rt,Tr*Te),hr.attr(Lt,0).attr(er,Tr*x),pr.attr(Jr,0).attr(rt,Tr*Te),ee.rangeBand){var Lr=ee,qr=Lr.rangeBand()/2;$=ee=function(Kr){return Lr(Kr)+qr}}else $.rangeBand?$=ee:ue.call(ce,ee,$);le.call(ce,$,ee),xe.call(ce,ee,ee)})}return F.scale=function(G){return arguments.length?(c=G,F):c},F.orient=function(G){return arguments.length?(p=G in ZF?G+"":tb,F):p},F.ticks=function(){return arguments.length?(L=t(arguments),F):L},F.tickValues=function(G){return arguments.length?(P=G,F):P},F.tickFormat=function(G){return arguments.length?(E=G,F):E},F.tickSize=function(G){var W=arguments.length;return W?(x=+G,M=+arguments[W-1],F):x},F.innerTickSize=function(G){return arguments.length?(x=+G,F):x},F.outerTickSize=function(G){return arguments.length?(M=+G,F):M},F.tickPadding=function(G){return arguments.length?(C=+G,F):C},F.tickSubdivide=function(){return arguments.length&&F},F};var tb="bottom",ZF={top:1,right:1,bottom:1,left:1};function XF(c,p,x){c.attr("transform",function(M){var C=p(M);return"translate("+(isFinite(C)?C:x(M))+",0)"})}function JF(c,p,x){c.attr("transform",function(M){var C=p(M);return"translate(0,"+(isFinite(C)?C:x(M))+")"})}e.svg.brush=function(){var c=pe(W,"brushstart","brush","brushend"),p=null,x=null,M=[0,0],C=[0,0],L,P,E=!0,F=!0,G=H1[0];function W(te){te.each(function(){var le=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",we).on("touchstart.brush",we),ue=le.selectAll(".background").data([0]);ue.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),le.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var xe=le.selectAll(".resize").data(G,J);xe.exit().remove(),xe.enter().append("g").attr("class",function(rr){return"resize "+rr}).style("cursor",function(rr){return KF[rr]}).append("rect").attr("x",function(rr){return/[ew]$/.test(rr)?-3:null}).attr("y",function(rr){return/^[ns]/.test(rr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),xe.style("display",W.empty()?"none":null);var Te=e.transition(le),ce=e.transition(ue),Ge;p&&(Ge=Vc(p),ce.attr("x",Ge[0]).attr("width",Ge[1]-Ge[0]),ee(Te)),x&&(Ge=Vc(x),ce.attr("y",Ge[0]).attr("height",Ge[1]-Ge[0]),he(Te)),$(Te)})}W.event=function(te){te.each(function(){var le=c.of(this,arguments),ue={x:M,y:C,i:L,j:P},xe=this.__chart__||ue;this.__chart__=ue,Xl?e.select(this).transition().each("start.brush",function(){L=xe.i,P=xe.j,M=xe.x,C=xe.y,le({type:"brushstart"})}).tween("brush:brush",function(){var Te=Uc(M,ue.x),ce=Uc(C,ue.y);return L=P=null,function(Ge){M=ue.x=Te(Ge),C=ue.y=ce(Ge),le({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=ue.i,P=ue.j,le({type:"brush",mode:"resize"}),le({type:"brushend"})}):(le({type:"brushstart"}),le({type:"brush",mode:"resize"}),le({type:"brushend"}))})};function $(te){te.selectAll(".resize").attr("transform",function(le){return"translate("+M[+/e$/.test(le)]+","+C[+/^s/.test(le)]+")"})}function ee(te){te.select(".extent").attr("x",M[0]),te.selectAll(".extent,.n>rect,.s>rect").attr("width",M[1]-M[0])}function he(te){te.select(".extent").attr("y",C[0]),te.selectAll(".extent,.e>rect,.w>rect").attr("height",C[1]-C[0])}function we(){var te=this,le=e.select(e.event.target),ue=c.of(te,arguments),xe=e.select(te),Te=le.datum(),ce=!/^(n|s)$/.test(Te)&&p,Ge=!/^(e|w)$/.test(Te)&&x,rr=le.classed("extent"),or=fr(te),ar,hr=e.mouse(te),dr,Sr=e.select(i(te)).on("keydown.brush",Jr).on("keyup.brush",Lt);if(e.event.changedTouches?Sr.on("touchmove.brush",rt).on("touchend.brush",Lr):Sr.on("mousemove.brush",rt).on("mouseup.brush",Lr),xe.interrupt().selectAll("*").interrupt(),rr)hr[0]=M[0]-hr[0],hr[1]=C[0]-hr[1];else if(Te){var pr=+/w$/.test(Te),Tr=+/^n/.test(Te);dr=[M[1-pr]-hr[0],C[1-Tr]-hr[1]],hr[0]=M[pr],hr[1]=C[Tr]}else e.event.altKey&&(ar=hr.slice());xe.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",le.style("cursor")),ue({type:"brushstart"}),rt();function Jr(){e.event.keyCode==32&&(rr||(ar=null,hr[0]-=M[1],hr[1]-=C[1],rr=2),ie())}function Lt(){e.event.keyCode==32&&rr==2&&(hr[0]+=M[1],hr[1]+=C[1],rr=0,ie())}function rt(){var qr=e.mouse(te),Kr=!1;dr&&(qr[0]+=dr[0],qr[1]+=dr[1]),rr||(e.event.altKey?(ar||(ar=[(M[0]+M[1])/2,(C[0]+C[1])/2]),hr[0]=M[+(qr[0]{(function(e,r){typeof iv=="object"&&typeof ub!="undefined"?r(iv):(e=e||self,r(e.d3=e.d3||{}))})(iv,function(e){"use strict";var r=new Date,t=new Date;function a(ne,Me,Ce,cr){function tr(De){return ne(De=arguments.length===0?new Date:new Date(+De)),De}return tr.floor=function(De){return ne(De=new Date(+De)),De},tr.ceil=function(De){return ne(De=new Date(De-1)),Me(De,1),ne(De),De},tr.round=function(De){var Le=tr(De),Ye=tr.ceil(De);return De-Le0))return Ze;do Ze.push(Ue=new Date(+De)),Me(De,Ye),ne(De);while(Ue=Le)for(;ne(Le),!De(Le);)Le.setTime(Le-1)},function(Le,Ye){if(Le>=Le)if(Ye<0)for(;++Ye<=0;)for(;Me(Le,-1),!De(Le););else for(;--Ye>=0;)for(;Me(Le,1),!De(Le););})},Ce&&(tr.count=function(De,Le){return r.setTime(+De),t.setTime(+Le),ne(r),ne(t),Math.floor(Ce(r,t))},tr.every=function(De){return De=Math.floor(De),!isFinite(De)||!(De>0)?null:De>1?tr.filter(cr?function(Le){return cr(Le)%De===0}:function(Le){return tr.count(0,Le)%De===0}):tr}),tr}var n=a(function(){},function(ne,Me){ne.setTime(+ne+Me)},function(ne,Me){return Me-ne});n.every=function(ne){return ne=Math.floor(ne),!isFinite(ne)||!(ne>0)?null:ne>1?a(function(Me){Me.setTime(Math.floor(Me/ne)*ne)},function(Me,Ce){Me.setTime(+Me+Ce*ne)},function(Me,Ce){return(Ce-Me)/ne}):n};var i=n.range,l=1e3,o=6e4,s=36e5,u=864e5,f=6048e5,v=a(function(ne){ne.setTime(ne-ne.getMilliseconds())},function(ne,Me){ne.setTime(+ne+Me*l)},function(ne,Me){return(Me-ne)/l},function(ne){return ne.getUTCSeconds()}),h=v.range,d=a(function(ne){ne.setTime(ne-ne.getMilliseconds()-ne.getSeconds()*l)},function(ne,Me){ne.setTime(+ne+Me*o)},function(ne,Me){return(Me-ne)/o},function(ne){return ne.getMinutes()}),m=d.range,g=a(function(ne){ne.setTime(ne-ne.getMilliseconds()-ne.getSeconds()*l-ne.getMinutes()*o)},function(ne,Me){ne.setTime(+ne+Me*s)},function(ne,Me){return(Me-ne)/s},function(ne){return ne.getHours()}),y=g.range,_=a(function(ne){ne.setHours(0,0,0,0)},function(ne,Me){ne.setDate(ne.getDate()+Me)},function(ne,Me){return(Me-ne-(Me.getTimezoneOffset()-ne.getTimezoneOffset())*o)/u},function(ne){return ne.getDate()-1}),w=_.range;function T(ne){return a(function(Me){Me.setDate(Me.getDate()-(Me.getDay()+7-ne)%7),Me.setHours(0,0,0,0)},function(Me,Ce){Me.setDate(Me.getDate()+Ce*7)},function(Me,Ce){return(Ce-Me-(Ce.getTimezoneOffset()-Me.getTimezoneOffset())*o)/f})}var b=T(0),A=T(1),S=T(2),k=T(3),q=T(4),D=T(5),R=T(6),z=b.range,N=A.range,H=S.range,O=k.range,J=q.range,X=D.range,B=R.range,I=a(function(ne){ne.setDate(1),ne.setHours(0,0,0,0)},function(ne,Me){ne.setMonth(ne.getMonth()+Me)},function(ne,Me){return Me.getMonth()-ne.getMonth()+(Me.getFullYear()-ne.getFullYear())*12},function(ne){return ne.getMonth()}),V=I.range,K=a(function(ne){ne.setMonth(0,1),ne.setHours(0,0,0,0)},function(ne,Me){ne.setFullYear(ne.getFullYear()+Me)},function(ne,Me){return Me.getFullYear()-ne.getFullYear()},function(ne){return ne.getFullYear()});K.every=function(ne){return!isFinite(ne=Math.floor(ne))||!(ne>0)?null:a(function(Me){Me.setFullYear(Math.floor(Me.getFullYear()/ne)*ne),Me.setMonth(0,1),Me.setHours(0,0,0,0)},function(Me,Ce){Me.setFullYear(Me.getFullYear()+Ce*ne)})};var Q=K.range,ie=a(function(ne){ne.setUTCSeconds(0,0)},function(ne,Me){ne.setTime(+ne+Me*o)},function(ne,Me){return(Me-ne)/o},function(ne){return ne.getUTCMinutes()}),me=ie.range,pe=a(function(ne){ne.setUTCMinutes(0,0,0)},function(ne,Me){ne.setTime(+ne+Me*s)},function(ne,Me){return(Me-ne)/s},function(ne){return ne.getUTCHours()}),ge=pe.range,j=a(function(ne){ne.setUTCHours(0,0,0,0)},function(ne,Me){ne.setUTCDate(ne.getUTCDate()+Me)},function(ne,Me){return(Me-ne)/u},function(ne){return ne.getUTCDate()-1}),_e=j.range;function se(ne){return a(function(Me){Me.setUTCDate(Me.getUTCDate()-(Me.getUTCDay()+7-ne)%7),Me.setUTCHours(0,0,0,0)},function(Me,Ce){Me.setUTCDate(Me.getUTCDate()+Ce*7)},function(Me,Ce){return(Ce-Me)/f})}var Se=se(0),ve=se(1),Ae=se(2),Y=se(3),re=se(4),U=se(5),de=se(6),be=Se.range,ye=ve.range,Fe=Ae.range,Re=Y.range,Pe=re.range,Ie=U.range,Be=de.range,Ne=a(function(ne){ne.setUTCDate(1),ne.setUTCHours(0,0,0,0)},function(ne,Me){ne.setUTCMonth(ne.getUTCMonth()+Me)},function(ne,Me){return Me.getUTCMonth()-ne.getUTCMonth()+(Me.getUTCFullYear()-ne.getUTCFullYear())*12},function(ne){return ne.getUTCMonth()}),Ee=Ne.range,Je=a(function(ne){ne.setUTCMonth(0,1),ne.setUTCHours(0,0,0,0)},function(ne,Me){ne.setUTCFullYear(ne.getUTCFullYear()+Me)},function(ne,Me){return Me.getUTCFullYear()-ne.getUTCFullYear()},function(ne){return ne.getUTCFullYear()});Je.every=function(ne){return!isFinite(ne=Math.floor(ne))||!(ne>0)?null:a(function(Me){Me.setUTCFullYear(Math.floor(Me.getUTCFullYear()/ne)*ne),Me.setUTCMonth(0,1),Me.setUTCHours(0,0,0,0)},function(Me,Ce){Me.setUTCFullYear(Me.getUTCFullYear()+Ce*ne)})};var We=Je.range;e.timeDay=_,e.timeDays=w,e.timeFriday=D,e.timeFridays=X,e.timeHour=g,e.timeHours=y,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=m,e.timeMonday=A,e.timeMondays=N,e.timeMonth=I,e.timeMonths=V,e.timeSaturday=R,e.timeSaturdays=B,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=b,e.timeSundays=z,e.timeThursday=q,e.timeThursdays=J,e.timeTuesday=S,e.timeTuesdays=H,e.timeWednesday=k,e.timeWednesdays=O,e.timeWeek=b,e.timeWeeks=z,e.timeYear=K,e.timeYears=Q,e.utcDay=j,e.utcDays=_e,e.utcFriday=U,e.utcFridays=Ie,e.utcHour=pe,e.utcHours=ge,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ie,e.utcMinutes=me,e.utcMonday=ve,e.utcMondays=ye,e.utcMonth=Ne,e.utcMonths=Ee,e.utcSaturday=de,e.utcSaturdays=Be,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=Se,e.utcSundays=be,e.utcThursday=re,e.utcThursdays=Pe,e.utcTuesday=Ae,e.utcTuesdays=Fe,e.utcWednesday=Y,e.utcWednesdays=Re,e.utcWeek=Se,e.utcWeeks=be,e.utcYear=Je,e.utcYears=We,Object.defineProperty(e,"__esModule",{value:!0})})});var os=Z((lv,fb)=>{(function(e,r){typeof lv=="object"&&typeof fb!="undefined"?r(lv,O1()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(lv,function(e,r){"use strict";function t(ae){if(0<=ae.y&&ae.y<100){var oe=new Date(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L);return oe.setFullYear(ae.y),oe}return new Date(ae.y,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L)}function a(ae){if(0<=ae.y&&ae.y<100){var oe=new Date(Date.UTC(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L));return oe.setUTCFullYear(ae.y),oe}return new Date(Date.UTC(ae.y,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L))}function n(ae,oe,qe){return{y:ae,m:oe,d:qe,H:0,M:0,S:0,L:0}}function i(ae){var oe=ae.dateTime,qe=ae.date,ke=ae.time,ir=ae.periods,vr=ae.days,sr=ae.shortDays,Mr=ae.months,Ur=ae.shortMonths,$r=h(ir),Vr=d(ir),St=h(vr),ea=d(vr),ka=h(sr),ra=d(sr),pn=h(Mr),Ia=d(Mr),ta=h(Ur),Ha=d(Ur),yr={a:Ul,A:Gl,b:rl,B:qc,c:null,d:I,e:I,f:me,H:V,I:K,j:Q,L:ie,m:pe,M:ge,p:Dc,q:ku,Q:Le,s:Ye,S:j,u:_e,U:se,V:Se,w:ve,W:Ae,x:null,X:null,y:Y,Y:re,Z:U,"%":De},lt={a:Cu,A:Su,b:Sa,B:Ec,c:null,d:de,e:de,f:Pe,H:be,I:ye,j:Fe,L:Re,m:Ie,M:Be,p:$o,q:jo,Q:Le,s:Ye,S:Ne,u:Ee,U:Je,V:We,w:ne,W:Me,x:null,X:null,y:Ce,Y:cr,Z:tr,"%":De},Wr={a:Ca,A:aa,b:In,B:Hn,c:Zt,d:q,e:q,f:O,H:R,I:R,j:D,L:H,m:k,M:z,p:yt,q:S,Q:X,s:B,S:N,u:g,U:y,V:_,w:m,W:w,x:at,X:sa,y:b,Y:T,Z:A,"%":J};yr.x=mt(qe,yr),yr.X=mt(ke,yr),yr.c=mt(oe,yr),lt.x=mt(qe,lt),lt.X=mt(ke,lt),lt.c=mt(oe,lt);function mt(mr,Zr){return function(jr){var nr=[],ua=-1,st=0,fa=mr.length,Rr,On,Vl;for(jr instanceof Date||(jr=new Date(+jr));++ua53)return null;"w"in nr||(nr.w=1),"Z"in nr?(st=a(n(nr.y,0,1)),fa=st.getUTCDay(),st=fa>4||fa===0?r.utcMonday.ceil(st):r.utcMonday(st),st=r.utcDay.offset(st,(nr.V-1)*7),nr.y=st.getUTCFullYear(),nr.m=st.getUTCMonth(),nr.d=st.getUTCDate()+(nr.w+6)%7):(st=t(n(nr.y,0,1)),fa=st.getDay(),st=fa>4||fa===0?r.timeMonday.ceil(st):r.timeMonday(st),st=r.timeDay.offset(st,(nr.V-1)*7),nr.y=st.getFullYear(),nr.m=st.getMonth(),nr.d=st.getDate()+(nr.w+6)%7)}else("W"in nr||"U"in nr)&&("w"in nr||(nr.w="u"in nr?nr.u%7:"W"in nr?1:0),fa="Z"in nr?a(n(nr.y,0,1)).getUTCDay():t(n(nr.y,0,1)).getDay(),nr.m=0,nr.d="W"in nr?(nr.w+6)%7+nr.W*7-(fa+5)%7:nr.w+nr.U*7-(fa+6)%7);return"Z"in nr?(nr.H+=nr.Z/100|0,nr.M+=nr.Z%100,a(nr)):t(nr)}}function ot(mr,Zr,jr,nr){for(var ua=0,st=Zr.length,fa=jr.length,Rr,On;ua=fa)return-1;if(Rr=Zr.charCodeAt(ua++),Rr===37){if(Rr=Zr.charAt(ua++),On=Wr[Rr in l?Zr.charAt(ua++):Rr],!On||(nr=On(mr,jr,nr))<0)return-1}else if(Rr!=jr.charCodeAt(nr++))return-1}return nr}function yt(mr,Zr,jr){var nr=$r.exec(Zr.slice(jr));return nr?(mr.p=Vr[nr[0].toLowerCase()],jr+nr[0].length):-1}function Ca(mr,Zr,jr){var nr=ka.exec(Zr.slice(jr));return nr?(mr.w=ra[nr[0].toLowerCase()],jr+nr[0].length):-1}function aa(mr,Zr,jr){var nr=St.exec(Zr.slice(jr));return nr?(mr.w=ea[nr[0].toLowerCase()],jr+nr[0].length):-1}function In(mr,Zr,jr){var nr=ta.exec(Zr.slice(jr));return nr?(mr.m=Ha[nr[0].toLowerCase()],jr+nr[0].length):-1}function Hn(mr,Zr,jr){var nr=pn.exec(Zr.slice(jr));return nr?(mr.m=Ia[nr[0].toLowerCase()],jr+nr[0].length):-1}function Zt(mr,Zr,jr){return ot(mr,oe,Zr,jr)}function at(mr,Zr,jr){return ot(mr,qe,Zr,jr)}function sa(mr,Zr,jr){return ot(mr,ke,Zr,jr)}function Ul(mr){return sr[mr.getDay()]}function Gl(mr){return vr[mr.getDay()]}function rl(mr){return Ur[mr.getMonth()]}function qc(mr){return Mr[mr.getMonth()]}function Dc(mr){return ir[+(mr.getHours()>=12)]}function ku(mr){return 1+~~(mr.getMonth()/3)}function Cu(mr){return sr[mr.getUTCDay()]}function Su(mr){return vr[mr.getUTCDay()]}function Sa(mr){return Ur[mr.getUTCMonth()]}function Ec(mr){return Mr[mr.getUTCMonth()]}function $o(mr){return ir[+(mr.getUTCHours()>=12)]}function jo(mr){return 1+~~(mr.getUTCMonth()/3)}return{format:function(mr){var Zr=mt(mr+="",yr);return Zr.toString=function(){return mr},Zr},parse:function(mr){var Zr=Tt(mr+="",!1);return Zr.toString=function(){return mr},Zr},utcFormat:function(mr){var Zr=mt(mr+="",lt);return Zr.toString=function(){return mr},Zr},utcParse:function(mr){var Zr=Tt(mr+="",!0);return Zr.toString=function(){return mr},Zr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ae,oe,qe){var ke=ae<0?"-":"",ir=(ke?-ae:ae)+"",vr=ir.length;return ke+(vr68?1900:2e3),qe+ke[0].length):-1}function A(ae,oe,qe){var ke=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(oe.slice(qe,qe+6));return ke?(ae.Z=ke[1]?0:-(ke[2]+(ke[3]||"00")),qe+ke[0].length):-1}function S(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+1));return ke?(ae.q=ke[0]*3-3,qe+ke[0].length):-1}function k(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.m=ke[0]-1,qe+ke[0].length):-1}function q(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.d=+ke[0],qe+ke[0].length):-1}function D(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+3));return ke?(ae.m=0,ae.d=+ke[0],qe+ke[0].length):-1}function R(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.H=+ke[0],qe+ke[0].length):-1}function z(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.M=+ke[0],qe+ke[0].length):-1}function N(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.S=+ke[0],qe+ke[0].length):-1}function H(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+3));return ke?(ae.L=+ke[0],qe+ke[0].length):-1}function O(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+6));return ke?(ae.L=Math.floor(ke[0]/1e3),qe+ke[0].length):-1}function J(ae,oe,qe){var ke=s.exec(oe.slice(qe,qe+1));return ke?qe+ke[0].length:-1}function X(ae,oe,qe){var ke=o.exec(oe.slice(qe));return ke?(ae.Q=+ke[0],qe+ke[0].length):-1}function B(ae,oe,qe){var ke=o.exec(oe.slice(qe));return ke?(ae.s=+ke[0],qe+ke[0].length):-1}function I(ae,oe){return f(ae.getDate(),oe,2)}function V(ae,oe){return f(ae.getHours(),oe,2)}function K(ae,oe){return f(ae.getHours()%12||12,oe,2)}function Q(ae,oe){return f(1+r.timeDay.count(r.timeYear(ae),ae),oe,3)}function ie(ae,oe){return f(ae.getMilliseconds(),oe,3)}function me(ae,oe){return ie(ae,oe)+"000"}function pe(ae,oe){return f(ae.getMonth()+1,oe,2)}function ge(ae,oe){return f(ae.getMinutes(),oe,2)}function j(ae,oe){return f(ae.getSeconds(),oe,2)}function _e(ae){var oe=ae.getDay();return oe===0?7:oe}function se(ae,oe){return f(r.timeSunday.count(r.timeYear(ae)-1,ae),oe,2)}function Se(ae,oe){var qe=ae.getDay();return ae=qe>=4||qe===0?r.timeThursday(ae):r.timeThursday.ceil(ae),f(r.timeThursday.count(r.timeYear(ae),ae)+(r.timeYear(ae).getDay()===4),oe,2)}function ve(ae){return ae.getDay()}function Ae(ae,oe){return f(r.timeMonday.count(r.timeYear(ae)-1,ae),oe,2)}function Y(ae,oe){return f(ae.getFullYear()%100,oe,2)}function re(ae,oe){return f(ae.getFullYear()%1e4,oe,4)}function U(ae){var oe=ae.getTimezoneOffset();return(oe>0?"-":(oe*=-1,"+"))+f(oe/60|0,"0",2)+f(oe%60,"0",2)}function de(ae,oe){return f(ae.getUTCDate(),oe,2)}function be(ae,oe){return f(ae.getUTCHours(),oe,2)}function ye(ae,oe){return f(ae.getUTCHours()%12||12,oe,2)}function Fe(ae,oe){return f(1+r.utcDay.count(r.utcYear(ae),ae),oe,3)}function Re(ae,oe){return f(ae.getUTCMilliseconds(),oe,3)}function Pe(ae,oe){return Re(ae,oe)+"000"}function Ie(ae,oe){return f(ae.getUTCMonth()+1,oe,2)}function Be(ae,oe){return f(ae.getUTCMinutes(),oe,2)}function Ne(ae,oe){return f(ae.getUTCSeconds(),oe,2)}function Ee(ae){var oe=ae.getUTCDay();return oe===0?7:oe}function Je(ae,oe){return f(r.utcSunday.count(r.utcYear(ae)-1,ae),oe,2)}function We(ae,oe){var qe=ae.getUTCDay();return ae=qe>=4||qe===0?r.utcThursday(ae):r.utcThursday.ceil(ae),f(r.utcThursday.count(r.utcYear(ae),ae)+(r.utcYear(ae).getUTCDay()===4),oe,2)}function ne(ae){return ae.getUTCDay()}function Me(ae,oe){return f(r.utcMonday.count(r.utcYear(ae)-1,ae),oe,2)}function Ce(ae,oe){return f(ae.getUTCFullYear()%100,oe,2)}function cr(ae,oe){return f(ae.getUTCFullYear()%1e4,oe,4)}function tr(){return"+0000"}function De(){return"%"}function Le(ae){return+ae}function Ye(ae){return Math.floor(+ae/1e3)}var Ze;Ue({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ue(ae){return Ze=i(ae),e.timeFormat=Ze.format,e.timeParse=Ze.parse,e.utcFormat=Ze.utcFormat,e.utcParse=Ze.utcParse,Ze}var Oe="%Y-%m-%dT%H:%M:%S.%LZ";function Ke(ae){return ae.toISOString()}var fr=Date.prototype.toISOString?Ke:e.utcFormat(Oe);function lr(ae){var oe=new Date(ae);return isNaN(oe)?null:oe}var ze=+new Date("2000-01-01T00:00:00.000Z")?lr:e.utcParse(Oe);e.isoFormat=fr,e.isoParse=ze,e.timeFormatDefaultLocale=Ue,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var B1=Z((ov,cb)=>{(function(e,r){typeof ov=="object"&&typeof cb!="undefined"?r(ov):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(ov,function(e){"use strict";function r(k){return Math.abs(k=Math.round(k))>=1e21?k.toLocaleString("en").replace(/,/g,""):k.toString(10)}function t(k,q){if((D=(k=q?k.toExponential(q-1):k.toExponential()).indexOf("e"))<0)return null;var D,R=k.slice(0,D);return[R.length>1?R[0]+R.slice(2):R,+k.slice(D+1)]}function a(k){return k=t(Math.abs(k)),k?k[1]:NaN}function n(k,q){return function(D,R){for(var z=D.length,N=[],H=0,O=k[0],J=0;z>0&&O>0&&(J+O+1>R&&(O=Math.max(1,R-J)),N.push(D.substring(z-=O,z+O)),!((J+=O+1)>R));)O=k[H=(H+1)%k.length];return N.reverse().join(q)}}function i(k){return function(q){return q.replace(/[0-9]/g,function(D){return k[+D]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(k){if(!(q=l.exec(k)))throw new Error("invalid format: "+k);var q;return new s({fill:q[1],align:q[2],sign:q[3],symbol:q[4],zero:q[5],width:q[6],comma:q[7],precision:q[8]&&q[8].slice(1),trim:q[9],type:q[10]})}o.prototype=s.prototype;function s(k){this.fill=k.fill===void 0?" ":k.fill+"",this.align=k.align===void 0?">":k.align+"",this.sign=k.sign===void 0?"-":k.sign+"",this.symbol=k.symbol===void 0?"":k.symbol+"",this.zero=!!k.zero,this.width=k.width===void 0?void 0:+k.width,this.comma=!!k.comma,this.precision=k.precision===void 0?void 0:+k.precision,this.trim=!!k.trim,this.type=k.type===void 0?"":k.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(k){e:for(var q=k.length,D=1,R=-1,z;D0&&(R=0);break}return R>0?k.slice(0,R)+k.slice(z+1):k}var f;function v(k,q){var D=t(k,q);if(!D)return k+"";var R=D[0],z=D[1],N=z-(f=Math.max(-8,Math.min(8,Math.floor(z/3)))*3)+1,H=R.length;return N===H?R:N>H?R+new Array(N-H+1).join("0"):N>0?R.slice(0,N)+"."+R.slice(N):"0."+new Array(1-N).join("0")+t(k,Math.max(0,q+N-1))[0]}function h(k,q){var D=t(k,q);if(!D)return k+"";var R=D[0],z=D[1];return z<0?"0."+new Array(-z).join("0")+R:R.length>z+1?R.slice(0,z+1)+"."+R.slice(z+1):R+new Array(z-R.length+2).join("0")}var d={"%":function(k,q){return(k*100).toFixed(q)},b:function(k){return Math.round(k).toString(2)},c:function(k){return k+""},d:r,e:function(k,q){return k.toExponential(q)},f:function(k,q){return k.toFixed(q)},g:function(k,q){return k.toPrecision(q)},o:function(k){return Math.round(k).toString(8)},p:function(k,q){return h(k*100,q)},r:h,s:v,X:function(k){return Math.round(k).toString(16).toUpperCase()},x:function(k){return Math.round(k).toString(16)}};function m(k){return k}var g=Array.prototype.map,y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function _(k){var q=k.grouping===void 0||k.thousands===void 0?m:n(g.call(k.grouping,Number),k.thousands+""),D=k.currency===void 0?"":k.currency[0]+"",R=k.currency===void 0?"":k.currency[1]+"",z=k.decimal===void 0?".":k.decimal+"",N=k.numerals===void 0?m:i(g.call(k.numerals,String)),H=k.percent===void 0?"%":k.percent+"",O=k.minus===void 0?"-":k.minus+"",J=k.nan===void 0?"NaN":k.nan+"";function X(I){I=o(I);var V=I.fill,K=I.align,Q=I.sign,ie=I.symbol,me=I.zero,pe=I.width,ge=I.comma,j=I.precision,_e=I.trim,se=I.type;se==="n"?(ge=!0,se="g"):d[se]||(j===void 0&&(j=12),_e=!0,se="g"),(me||V==="0"&&K==="=")&&(me=!0,V="0",K="=");var Se=ie==="$"?D:ie==="#"&&/[boxX]/.test(se)?"0"+se.toLowerCase():"",ve=ie==="$"?R:/[%p]/.test(se)?H:"",Ae=d[se],Y=/[defgprs%]/.test(se);j=j===void 0?6:/[gprs]/.test(se)?Math.max(1,Math.min(21,j)):Math.max(0,Math.min(20,j));function re(U){var de=Se,be=ve,ye,Fe,Re;if(se==="c")be=Ae(U)+be,U="";else{U=+U;var Pe=U<0||1/U<0;if(U=isNaN(U)?J:Ae(Math.abs(U),j),_e&&(U=u(U)),Pe&&+U==0&&Q!=="+"&&(Pe=!1),de=(Pe?Q==="("?Q:O:Q==="-"||Q==="("?"":Q)+de,be=(se==="s"?y[8+f/3]:"")+be+(Pe&&Q==="("?")":""),Y){for(ye=-1,Fe=U.length;++yeRe||Re>57){be=(Re===46?z+U.slice(ye+1):U.slice(ye))+be,U=U.slice(0,ye);break}}}ge&&!me&&(U=q(U,1/0));var Ie=de.length+U.length+be.length,Be=Ie>1)+de+U+be+Be.slice(Ie);break;default:U=Be+de+U+be;break}return N(U)}return re.toString=function(){return I+""},re}function B(I,V){var K=X((I=o(I),I.type="f",I)),Q=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,ie=Math.pow(10,-Q),me=y[8+Q/3];return function(pe){return K(ie*pe)+me}}return{format:X,formatPrefix:B}}var w;T({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function T(k){return w=_(k),e.format=w.format,e.formatPrefix=w.formatPrefix,w}function b(k){return Math.max(0,-a(Math.abs(k)))}function A(k,q){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(q)/3)))*3-a(Math.abs(k)))}function S(k,q){return k=Math.abs(k),q=Math.abs(q)-k,Math.max(0,a(q)-a(k))+1}e.FormatSpecifier=s,e.formatDefaultLocale=T,e.formatLocale=_,e.formatSpecifier=o,e.precisionFixed=b,e.precisionPrefix=A,e.precisionRound=S,Object.defineProperty(e,"__esModule",{value:!0})})});var hb=Z((fie,vb)=>{"use strict";vb.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var Hr=Z((cie,db)=>{"use strict";var iI=hb();db.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&iI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Bt=Z((vie,pb)=>{"use strict";pb.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var Y1=Z((sv,mb)=>{(function(e,r){typeof sv=="object"&&typeof mb!="undefined"?r(sv):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(sv,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(o[s]&3)<<4|o[s+1]>>4],f+=r[(o[s+1]&15)<<2|o[s+2]>>6],f+=r[o[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(l){var o=l.length*.75,s=l.length,u,f=0,v,h,d,m;l[l.length-1]==="="&&(o--,l[l.length-2]==="="&&o--);var g=new ArrayBuffer(o),y=new Uint8Array(g);for(u=0;u>4,y[f++]=(h&15)<<4|d>>2,y[f++]=(d&3)<<6|m&63;return g};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var nl=Z((hie,yb)=>{"use strict";yb.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var nn=Z(Un=>{"use strict";var lI=Y1().decode,oI=nl(),U1=Array.isArray,sI=ArrayBuffer,uI=DataView;function gb(e){return sI.isView(e)&&!(e instanceof uI)}Un.isTypedArray=gb;function uv(e){return U1(e)||gb(e)}Un.isArrayOrTypedArray=uv;function fI(e){return!uv(e[0])}Un.isArray1D=fI;Un.ensureArray=function(e,r){return U1(e)||(e=[]),e.length=r,e};var na={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};na.uint8c=na.u1c;na.uint8=na.u1;na.int8=na.i1;na.uint16=na.u2;na.int16=na.i2;na.uint32=na.u4;na.int32=na.i4;na.float32=na.f4;na.float64=na.f8;function G1(e){return e.constructor===ArrayBuffer}Un.isArrayBuffer=G1;Un.decodeTypedArraySpec=function(e){var r=[],t=cI(e),a=t.dtype,n=na[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,l=t.bdata;G1(l)||(l=lI(l));var o=t.shape===void 0?[l.byteLength/i]:(""+t.shape).split(",");o.reverse();var s=o.length,u,f,v=+o[0],h=i*v,d=0;if(s===1)r=new n(l);else if(s===2)for(u=+o[1],f=0;f{"use strict";var xb=Hr(),W1=nn().isArrayOrTypedArray;Mb.exports=function(r,t){if(xb(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,l,o;for(o=0;o{"use strict";var ss=fv(),mI=/^\w*$/,yI=0,Ab=1,cv=2,kb=3,Ql=4;Cb.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=ss(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|cv,v.set(h,null);if(f){for(i=d;i{"use strict";var gI=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,bI=/^[^\.\[\]]+$/;Lb.exports=function(e,r){for(;r;){var t=e.match(gI);if(t)e=t[1];else if(e.match(bI))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var vv=Z((gie,Db)=>{"use strict";var xI=Hr();Db.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return xI(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var Rb=Z((bie,Pb)=>{"use strict";var Eb=nn().isArrayOrTypedArray,Iu=nl();Pb.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(Eb(n)&&Eb(i)&&Iu(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function _I(e,r){var t=e%r;return t<0?t+r:t}function wI(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}zb.exports={mod:_I,modHalf:wI}});var bn=Z((_ie,hv)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(Y,re){if(Y=Y||"",re=re||{},Y instanceof s)return Y;if(!(this instanceof s))return new s(Y,re);var U=u(Y);this._originalInput=Y,this._r=U.r,this._g=U.g,this._b=U.b,this._a=U.a,this._roundA=n(100*this._a)/100,this._format=re.format||U.format,this._gradientType=re.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=U.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var Y=this.toRgb();return(Y.r*299+Y.g*587+Y.b*114)/1e3},getLuminance:function(){var Y=this.toRgb(),re,U,de,be,ye,Fe;return re=Y.r/255,U=Y.g/255,de=Y.b/255,re<=.03928?be=re/12.92:be=e.pow((re+.055)/1.055,2.4),U<=.03928?ye=U/12.92:ye=e.pow((U+.055)/1.055,2.4),de<=.03928?Fe=de/12.92:Fe=e.pow((de+.055)/1.055,2.4),.2126*be+.7152*ye+.0722*Fe},setAlpha:function(Y){return this._a=I(Y),this._roundA=n(100*this._a)/100,this},toHsv:function(){var Y=d(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,v:Y.v,a:this._a}},toHsvString:function(){var Y=d(this._r,this._g,this._b),re=n(Y.h*360),U=n(Y.s*100),de=n(Y.v*100);return this._a==1?"hsv("+re+", "+U+"%, "+de+"%)":"hsva("+re+", "+U+"%, "+de+"%, "+this._roundA+")"},toHsl:function(){var Y=v(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,l:Y.l,a:this._a}},toHslString:function(){var Y=v(this._r,this._g,this._b),re=n(Y.h*360),U=n(Y.s*100),de=n(Y.l*100);return this._a==1?"hsl("+re+", "+U+"%, "+de+"%)":"hsla("+re+", "+U+"%, "+de+"%, "+this._roundA+")"},toHex:function(Y){return g(this._r,this._g,this._b,Y)},toHexString:function(Y){return"#"+this.toHex(Y)},toHex8:function(Y){return y(this._r,this._g,this._b,this._a,Y)},toHex8String:function(Y){return"#"+this.toHex8(Y)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(V(this._r,255)*100)+"%",g:n(V(this._g,255)*100)+"%",b:n(V(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%)":"rgba("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:X[g(this._r,this._g,this._b,!0)]||!1},toFilter:function(Y){var re="#"+_(this._r,this._g,this._b,this._a),U=re,de=this._gradientType?"GradientType = 1, ":"";if(Y){var be=s(Y);U="#"+_(be._r,be._g,be._b,be._a)}return"progid:DXImageTransform.Microsoft.gradient("+de+"startColorstr="+re+",endColorstr="+U+")"},toString:function(Y){var re=!!Y;Y=Y||this._format;var U=!1,de=this._a<1&&this._a>=0,be=!re&&de&&(Y==="hex"||Y==="hex6"||Y==="hex3"||Y==="hex4"||Y==="hex8"||Y==="name");return be?Y==="name"&&this._a===0?this.toName():this.toRgbString():(Y==="rgb"&&(U=this.toRgbString()),Y==="prgb"&&(U=this.toPercentageRgbString()),(Y==="hex"||Y==="hex6")&&(U=this.toHexString()),Y==="hex3"&&(U=this.toHexString(!0)),Y==="hex4"&&(U=this.toHex8String(!0)),Y==="hex8"&&(U=this.toHex8String()),Y==="name"&&(U=this.toName()),Y==="hsl"&&(U=this.toHslString()),Y==="hsv"&&(U=this.toHsvString()),U||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(Y,re){var U=Y.apply(null,[this].concat([].slice.call(re)));return this._r=U._r,this._g=U._g,this._b=U._b,this.setAlpha(U._a),this},lighten:function(){return this._applyModification(A,arguments)},brighten:function(){return this._applyModification(S,arguments)},darken:function(){return this._applyModification(k,arguments)},desaturate:function(){return this._applyModification(w,arguments)},saturate:function(){return this._applyModification(T,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(q,arguments)},_applyCombination:function(Y,re){return Y.apply(null,[this].concat([].slice.call(re)))},analogous:function(){return this._applyCombination(H,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(O,arguments)},splitcomplement:function(){return this._applyCombination(N,arguments)},triad:function(){return this._applyCombination(R,arguments)},tetrad:function(){return this._applyCombination(z,arguments)}},s.fromRatio=function(Y,re){if(typeof Y=="object"){var U={};for(var de in Y)Y.hasOwnProperty(de)&&(de==="a"?U[de]=Y[de]:U[de]=ge(Y[de]));Y=U}return s(Y,re)};function u(Y){var re={r:0,g:0,b:0},U=1,de=null,be=null,ye=null,Fe=!1,Re=!1;return typeof Y=="string"&&(Y=ve(Y)),typeof Y=="object"&&(Se(Y.r)&&Se(Y.g)&&Se(Y.b)?(re=f(Y.r,Y.g,Y.b),Fe=!0,Re=String(Y.r).substr(-1)==="%"?"prgb":"rgb"):Se(Y.h)&&Se(Y.s)&&Se(Y.v)?(de=ge(Y.s),be=ge(Y.v),re=m(Y.h,de,be),Fe=!0,Re="hsv"):Se(Y.h)&&Se(Y.s)&&Se(Y.l)&&(de=ge(Y.s),ye=ge(Y.l),re=h(Y.h,de,ye),Fe=!0,Re="hsl"),Y.hasOwnProperty("a")&&(U=Y.a)),U=I(U),{ok:Fe,format:Y.format||Re,r:i(255,l(re.r,0)),g:i(255,l(re.g,0)),b:i(255,l(re.b,0)),a:U}}function f(Y,re,U){return{r:V(Y,255)*255,g:V(re,255)*255,b:V(U,255)*255}}function v(Y,re,U){Y=V(Y,255),re=V(re,255),U=V(U,255);var de=l(Y,re,U),be=i(Y,re,U),ye,Fe,Re=(de+be)/2;if(de==be)ye=Fe=0;else{var Pe=de-be;switch(Fe=Re>.5?Pe/(2-de-be):Pe/(de+be),de){case Y:ye=(re-U)/Pe+(re1&&(Ne-=1),Ne<1/6?Ie+(Be-Ie)*6*Ne:Ne<1/2?Be:Ne<2/3?Ie+(Be-Ie)*(2/3-Ne)*6:Ie}if(re===0)de=be=ye=U;else{var Re=U<.5?U*(1+re):U+re-U*re,Pe=2*U-Re;de=Fe(Pe,Re,Y+1/3),be=Fe(Pe,Re,Y),ye=Fe(Pe,Re,Y-1/3)}return{r:de*255,g:be*255,b:ye*255}}function d(Y,re,U){Y=V(Y,255),re=V(re,255),U=V(U,255);var de=l(Y,re,U),be=i(Y,re,U),ye,Fe,Re=de,Pe=de-be;if(Fe=de===0?0:Pe/de,de==be)ye=0;else{switch(de){case Y:ye=(re-U)/Pe+(re>1)+720)%360;--re;)de.h=(de.h+be)%360,ye.push(s(de));return ye}function O(Y,re){re=re||6;for(var U=s(Y).toHsv(),de=U.h,be=U.s,ye=U.v,Fe=[],Re=1/re;re--;)Fe.push(s({h:de,s:be,v:ye})),ye=(ye+Re)%1;return Fe}s.mix=function(Y,re,U){U=U===0?0:U||50;var de=s(Y).toRgb(),be=s(re).toRgb(),ye=U/100,Fe={r:(be.r-de.r)*ye+de.r,g:(be.g-de.g)*ye+de.g,b:(be.b-de.b)*ye+de.b,a:(be.a-de.a)*ye+de.a};return s(Fe)},s.readability=function(Y,re){var U=s(Y),de=s(re);return(e.max(U.getLuminance(),de.getLuminance())+.05)/(e.min(U.getLuminance(),de.getLuminance())+.05)},s.isReadable=function(Y,re,U){var de=s.readability(Y,re),be,ye;switch(ye=!1,be=Ae(U),be.level+be.size){case"AAsmall":case"AAAlarge":ye=de>=4.5;break;case"AAlarge":ye=de>=3;break;case"AAAsmall":ye=de>=7;break}return ye},s.mostReadable=function(Y,re,U){var de=null,be=0,ye,Fe,Re,Pe;U=U||{},Fe=U.includeFallbackColors,Re=U.level,Pe=U.size;for(var Ie=0;Iebe&&(be=ye,de=s(re[Ie]));return s.isReadable(Y,de,{level:Re,size:Pe})||!Fe?de:(U.includeFallbackColors=!1,s.mostReadable(Y,["#fff","#000"],U))};var J=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},X=s.hexNames=B(J);function B(Y){var re={};for(var U in Y)Y.hasOwnProperty(U)&&(re[Y[U]]=U);return re}function I(Y){return Y=parseFloat(Y),(isNaN(Y)||Y<0||Y>1)&&(Y=1),Y}function V(Y,re){ie(Y)&&(Y="100%");var U=me(Y);return Y=i(re,l(0,parseFloat(Y))),U&&(Y=parseInt(Y*re,10)/100),e.abs(Y-re)<1e-6?1:Y%re/parseFloat(re)}function K(Y){return i(1,l(0,Y))}function Q(Y){return parseInt(Y,16)}function ie(Y){return typeof Y=="string"&&Y.indexOf(".")!=-1&&parseFloat(Y)===1}function me(Y){return typeof Y=="string"&&Y.indexOf("%")!=-1}function pe(Y){return Y.length==1?"0"+Y:""+Y}function ge(Y){return Y<=1&&(Y=Y*100+"%"),Y}function j(Y){return e.round(parseFloat(Y)*255).toString(16)}function _e(Y){return Q(Y)/255}var se=function(){var Y="[-\\+]?\\d+%?",re="[-\\+]?\\d*\\.\\d+%?",U="(?:"+re+")|(?:"+Y+")",de="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?",be="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?";return{CSS_UNIT:new RegExp(U),rgb:new RegExp("rgb"+de),rgba:new RegExp("rgba"+be),hsl:new RegExp("hsl"+de),hsla:new RegExp("hsla"+be),hsv:new RegExp("hsv"+de),hsva:new RegExp("hsva"+be),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Se(Y){return!!se.CSS_UNIT.exec(Y)}function ve(Y){Y=Y.replace(r,"").replace(t,"").toLowerCase();var re=!1;if(J[Y])Y=J[Y],re=!0;else if(Y=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var U;return(U=se.rgb.exec(Y))?{r:U[1],g:U[2],b:U[3]}:(U=se.rgba.exec(Y))?{r:U[1],g:U[2],b:U[3],a:U[4]}:(U=se.hsl.exec(Y))?{h:U[1],s:U[2],l:U[3]}:(U=se.hsla.exec(Y))?{h:U[1],s:U[2],l:U[3],a:U[4]}:(U=se.hsv.exec(Y))?{h:U[1],s:U[2],v:U[3]}:(U=se.hsva.exec(Y))?{h:U[1],s:U[2],v:U[3],a:U[4]}:(U=se.hex8.exec(Y))?{r:Q(U[1]),g:Q(U[2]),b:Q(U[3]),a:_e(U[4]),format:re?"name":"hex8"}:(U=se.hex6.exec(Y))?{r:Q(U[1]),g:Q(U[2]),b:Q(U[3]),format:re?"name":"hex"}:(U=se.hex4.exec(Y))?{r:Q(U[1]+""+U[1]),g:Q(U[2]+""+U[2]),b:Q(U[3]+""+U[3]),a:_e(U[4]+""+U[4]),format:re?"name":"hex8"}:(U=se.hex3.exec(Y))?{r:Q(U[1]+""+U[1]),g:Q(U[2]+""+U[2]),b:Q(U[3]+""+U[3]),format:re?"name":"hex"}:!1}function Ae(Y){var re,U;return Y=Y||{level:"AA",size:"small"},re=(Y.level||"AA").toUpperCase(),U=(Y.size||"small").toLowerCase(),re!=="AA"&&re!=="AAA"&&(re="AA"),U!=="small"&&U!=="large"&&(U="small"),{level:re,size:U}}typeof hv!="undefined"&&hv.exports?hv.exports=s:window.tinycolor=s})(Math)});var Yt=Z(Bu=>{"use strict";var Nb=nl(),Hu=Array.isArray;function TI(e,r){var t,a;for(t=0;t{"use strict";Fb.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var Yu=Z((Mie,Ib)=>{"use strict";Ib.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var fs=Z((Aie,Bb)=>{"use strict";var Hb=Yu(),Ob=ha(),Z1=Ob({editType:"none"});Z1.family.dflt=Hb.HOVERFONT;Z1.size.dflt=Hb.HOVERFONTSIZE;Bb.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Z1,grouptitlefont:Ob({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var mv=Z((kie,Yb)=>{"use strict";var MI=ha(),dv=fs().hoverlabel,pv=Yt().extendFlat;Yb.exports={hoverlabel:{bgcolor:pv({},dv.bgcolor,{arrayOk:!0}),bordercolor:pv({},dv.bordercolor,{arrayOk:!0}),font:MI({arrayOk:!0,editType:"none"}),align:pv({},dv.align,{arrayOk:!0}),namelength:pv({},dv.namelength,{arrayOk:!0}),editType:"none"}}});var Gn=Z((Cie,Ub)=>{"use strict";var AI=ha(),kI=mv();Ub.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:AI({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:kI.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var $l=Z((Sie,Wb)=>{"use strict";var CI=bn(),yv={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Gb=yv.RdBu;function SI(e,r){if(r||(r=Gb),!e)return r;function t(){try{e=yv[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Vb(e)?e:r}function Vb(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";jl.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];jl.defaultLine="#444";jl.lightLine="#eee";jl.background="#fff";jl.borderLine="#BEC8D9";jl.lightFraction=100*10/11});var Er=Z((qie,Zb)=>{"use strict";var Wa=bn(),qI=Hr(),DI=nn().isTypedArray,Xt=Zb.exports={},gv=hi();Xt.defaults=gv.defaults;var EI=Xt.defaultLine=gv.defaultLine;Xt.lightLine=gv.lightLine;var J1=Xt.background=gv.background;Xt.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};Xt.rgb=function(e){return Xt.tinyRGB(Wa(e))};Xt.opacity=function(e){return e?Wa(e).getAlpha():0};Xt.addOpacity=function(e,r){var t=Wa(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};Xt.combine=function(e,r){var t=Wa(e).toRgb();if(t.a===1)return Wa(e).toRgbString();var a=Wa(r||J1).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return Wa(i).toRgbString()};Xt.interpolate=function(e,r,t){var a=Wa(e).toRgb(),n=Wa(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return Wa(i).toRgbString()};Xt.contrast=function(e,r,t){var a=Wa(e);a.getAlpha()!==1&&(a=Wa(Xt.combine(e,J1)));var n=a.isDark()?r?a.lighten(r):J1:t?a.darken(t):EI;return n.toString()};Xt.stroke=function(e,r){var t=Wa(r);e.style({stroke:Xt.tinyRGB(t),"stroke-opacity":t.getAlpha()})};Xt.fill=function(e,r){var t=Wa(r);e.style({fill:Xt.tinyRGB(t),"fill-opacity":t.getAlpha()})};Xt.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var l=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+l+", "+a[3]+")":"rgb("+l+")"}});var bv=Z((Die,Xb)=>{"use strict";Xb.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var cs=Z(Jb=>{"use strict";Jb.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var jb=Z(Za=>{"use strict";var K1=Hr(),Kb=bn(),Qb=Yt().extendFlat,PI=Gn(),RI=$l(),zI=Er(),NI=bv().DESELECTDIM,vs=fv(),$b=cs().counter,FI=us().modHalf,di=nn().isArrayOrTypedArray,il=nn().isTypedArraySpec,ll=nn().decodeTypedArraySpec;Za.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(di(e)?e:il(e)?ll(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}il(e)&&(e=ll(e)),e%1||!K1(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){il(e)&&(e=ll(e)),Kb(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return Kb(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(RI.get(e,t))}},angle:{coerceFunction:function(e,r,t){il(e)&&(e=ll(e)),e==="auto"?r.set("auto"):K1(e)?r.set(FI(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||$b(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!$b(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var ex={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},rx={};function tx(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),tx(a,r[t]))}}tx(ex,rx);ax.exports={configAttributes:ex,dfltConfig:rx}});var $1=Z((zie,nx)=>{"use strict";var Q1=Ir(),II=Hr(),Uu=[];nx.exports=function(e,r){if(Uu.indexOf(e)!==-1)return;Uu.push(e);var t=1e3;II(r)?t=r:r==="long"&&(t=3e3);var a=Q1.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Uu);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=Uu.indexOf(o);s!==-1&&Uu.splice(s,1),Q1.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=Q1.select(this);o.append("button").classed("notifier-close",!0).html("×").on("click",function(){o.transition().call(i)});for(var s=o.append("p"),u=l.split(//g),f=0;f{"use strict";var hs=eo().dfltConfig,j1=$1(),ep=ix.exports={};ep.log=function(){var e;if(hs.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};ep.warn=function(){var e;if(hs.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};ep.error=function(){var e;if(hs.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var _v=Z((Fie,lx)=>{"use strict";lx.exports=function(){}});var rp=Z((Iie,ox)=>{"use strict";ox.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{sx.exports=HI;function HI(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var cx=Z((Oie,fx)=>{fx.exports=OI;function OI(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var hx=Z((Bie,vx)=>{vx.exports=BI;function BI(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var tp=Z((Yie,dx)=>{dx.exports=YI;function YI(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var mx=Z((Uie,px)=>{px.exports=UI;function UI(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],l=r[7],o=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=l,e[14]=o}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var gx=Z((Gie,yx)=>{yx.exports=GI;function GI(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],g=r[13],y=r[14],_=r[15],w=t*o-a*l,T=t*s-n*l,b=t*u-i*l,A=a*s-n*o,S=a*u-i*o,k=n*u-i*s,q=f*g-v*m,D=f*y-h*m,R=f*_-d*m,z=v*y-h*g,N=v*_-d*g,H=h*_-d*y,O=w*H-T*N+b*z+A*R-S*D+k*q;return O?(O=1/O,e[0]=(o*H-s*N+u*z)*O,e[1]=(n*N-a*H-i*z)*O,e[2]=(g*k-y*S+_*A)*O,e[3]=(h*S-v*k-d*A)*O,e[4]=(s*R-l*H-u*D)*O,e[5]=(t*H-n*R+i*D)*O,e[6]=(y*b-m*k-_*T)*O,e[7]=(f*k-h*b+d*T)*O,e[8]=(l*N-o*R+u*q)*O,e[9]=(a*R-t*N-i*q)*O,e[10]=(m*S-g*b+_*w)*O,e[11]=(v*b-f*S-d*w)*O,e[12]=(o*D-l*z-s*q)*O,e[13]=(t*z-a*D+n*q)*O,e[14]=(g*T-m*A-y*w)*O,e[15]=(f*A-v*T+h*w)*O,e):null}});var xx=Z((Vie,bx)=>{bx.exports=VI;function VI(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],g=r[13],y=r[14],_=r[15];return e[0]=o*(h*_-d*y)-v*(s*_-u*y)+g*(s*d-u*h),e[1]=-(a*(h*_-d*y)-v*(n*_-i*y)+g*(n*d-i*h)),e[2]=a*(s*_-u*y)-o*(n*_-i*y)+g*(n*u-i*s),e[3]=-(a*(s*d-u*h)-o*(n*d-i*h)+v*(n*u-i*s)),e[4]=-(l*(h*_-d*y)-f*(s*_-u*y)+m*(s*d-u*h)),e[5]=t*(h*_-d*y)-f*(n*_-i*y)+m*(n*d-i*h),e[6]=-(t*(s*_-u*y)-l*(n*_-i*y)+m*(n*u-i*s)),e[7]=t*(s*d-u*h)-l*(n*d-i*h)+f*(n*u-i*s),e[8]=l*(v*_-d*g)-f*(o*_-u*g)+m*(o*d-u*v),e[9]=-(t*(v*_-d*g)-f*(a*_-i*g)+m*(a*d-i*v)),e[10]=t*(o*_-u*g)-l*(a*_-i*g)+m*(a*u-i*o),e[11]=-(t*(o*d-u*v)-l*(a*d-i*v)+f*(a*u-i*o)),e[12]=-(l*(v*y-h*g)-f*(o*y-s*g)+m*(o*h-s*v)),e[13]=t*(v*y-h*g)-f*(a*y-n*g)+m*(a*h-n*v),e[14]=-(t*(o*y-s*g)-l*(a*y-n*g)+m*(a*s-n*o)),e[15]=t*(o*h-s*v)-l*(a*h-n*v)+f*(a*s-n*o),e}});var wx=Z((Wie,_x)=>{_x.exports=WI;function WI(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],l=e[5],o=e[6],s=e[7],u=e[8],f=e[9],v=e[10],h=e[11],d=e[12],m=e[13],g=e[14],y=e[15],_=r*l-t*i,w=r*o-a*i,T=r*s-n*i,b=t*o-a*l,A=t*s-n*l,S=a*s-n*o,k=u*m-f*d,q=u*g-v*d,D=u*y-h*d,R=f*g-v*m,z=f*y-h*m,N=v*y-h*g;return _*N-w*z+T*R+b*D-A*q+S*k}});var Mx=Z((Zie,Tx)=>{Tx.exports=ZI;function ZI(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=r[4],s=r[5],u=r[6],f=r[7],v=r[8],h=r[9],d=r[10],m=r[11],g=r[12],y=r[13],_=r[14],w=r[15],T=t[0],b=t[1],A=t[2],S=t[3];return e[0]=T*a+b*o+A*v+S*g,e[1]=T*n+b*s+A*h+S*y,e[2]=T*i+b*u+A*d+S*_,e[3]=T*l+b*f+A*m+S*w,T=t[4],b=t[5],A=t[6],S=t[7],e[4]=T*a+b*o+A*v+S*g,e[5]=T*n+b*s+A*h+S*y,e[6]=T*i+b*u+A*d+S*_,e[7]=T*l+b*f+A*m+S*w,T=t[8],b=t[9],A=t[10],S=t[11],e[8]=T*a+b*o+A*v+S*g,e[9]=T*n+b*s+A*h+S*y,e[10]=T*i+b*u+A*d+S*_,e[11]=T*l+b*f+A*m+S*w,T=t[12],b=t[13],A=t[14],S=t[15],e[12]=T*a+b*o+A*v+S*g,e[13]=T*n+b*s+A*h+S*y,e[14]=T*i+b*u+A*d+S*_,e[15]=T*l+b*f+A*m+S*w,e}});var kx=Z((Xie,Ax)=>{Ax.exports=XI;function XI(e,r,t){var a=t[0],n=t[1],i=t[2],l,o,s,u,f,v,h,d,m,g,y,_;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(l=r[0],o=r[1],s=r[2],u=r[3],f=r[4],v=r[5],h=r[6],d=r[7],m=r[8],g=r[9],y=r[10],_=r[11],e[0]=l,e[1]=o,e[2]=s,e[3]=u,e[4]=f,e[5]=v,e[6]=h,e[7]=d,e[8]=m,e[9]=g,e[10]=y,e[11]=_,e[12]=l*a+f*n+m*i+r[12],e[13]=o*a+v*n+g*i+r[13],e[14]=s*a+h*n+y*i+r[14],e[15]=u*a+d*n+_*i+r[15]),e}});var Sx=Z((Jie,Cx)=>{Cx.exports=JI;function JI(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var qx=Z((Kie,Lx)=>{Lx.exports=KI;function KI(e,r,t,a){var n=a[0],i=a[1],l=a[2],o=Math.sqrt(n*n+i*i+l*l),s,u,f,v,h,d,m,g,y,_,w,T,b,A,S,k,q,D,R,z,N,H,O,J;return Math.abs(o)<1e-6?null:(o=1/o,n*=o,i*=o,l*=o,s=Math.sin(t),u=Math.cos(t),f=1-u,v=r[0],h=r[1],d=r[2],m=r[3],g=r[4],y=r[5],_=r[6],w=r[7],T=r[8],b=r[9],A=r[10],S=r[11],k=n*n*f+u,q=i*n*f+l*s,D=l*n*f-i*s,R=n*i*f-l*s,z=i*i*f+u,N=l*i*f+n*s,H=n*l*f+i*s,O=i*l*f-n*s,J=l*l*f+u,e[0]=v*k+g*q+T*D,e[1]=h*k+y*q+b*D,e[2]=d*k+_*q+A*D,e[3]=m*k+w*q+S*D,e[4]=v*R+g*z+T*N,e[5]=h*R+y*z+b*N,e[6]=d*R+_*z+A*N,e[7]=m*R+w*z+S*N,e[8]=v*H+g*O+T*J,e[9]=h*H+y*O+b*J,e[10]=d*H+_*O+A*J,e[11]=m*H+w*O+S*J,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var Ex=Z((Qie,Dx)=>{Dx.exports=QI;function QI(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],l=r[5],o=r[6],s=r[7],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=l*n+f*a,e[6]=o*n+v*a,e[7]=s*n+h*a,e[8]=u*n-i*a,e[9]=f*n-l*a,e[10]=v*n-o*a,e[11]=h*n-s*a,e}});var Rx=Z(($ie,Px)=>{Px.exports=$I;function $I(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=l*n-f*a,e[2]=o*n-v*a,e[3]=s*n-h*a,e[8]=i*a+u*n,e[9]=l*a+f*n,e[10]=o*a+v*n,e[11]=s*a+h*n,e}});var Nx=Z((jie,zx)=>{zx.exports=jI;function jI(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[4],f=r[5],v=r[6],h=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=l*n+f*a,e[2]=o*n+v*a,e[3]=s*n+h*a,e[4]=u*n-i*a,e[5]=f*n-l*a,e[6]=v*n-o*a,e[7]=h*n-s*a,e}});var Ix=Z((ele,Fx)=>{Fx.exports=eH;function eH(e,r,t){var a,n,i,l=t[0],o=t[1],s=t[2],u=Math.sqrt(l*l+o*o+s*s);return Math.abs(u)<1e-6?null:(u=1/u,l*=u,o*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=l*l*i+n,e[1]=o*l*i+s*a,e[2]=s*l*i-o*a,e[3]=0,e[4]=l*o*i-s*a,e[5]=o*o*i+n,e[6]=s*o*i+l*a,e[7]=0,e[8]=l*s*i+o*a,e[9]=o*s*i-l*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var Ox=Z((rle,Hx)=>{Hx.exports=rH;function rH(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=a+a,s=n+n,u=i+i,f=a*o,v=a*s,h=a*u,d=n*s,m=n*u,g=i*u,y=l*o,_=l*s,w=l*u;return e[0]=1-(d+g),e[1]=v+w,e[2]=h-_,e[3]=0,e[4]=v-w,e[5]=1-(f+g),e[6]=m+y,e[7]=0,e[8]=h+_,e[9]=m-y,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Yx=Z((tle,Bx)=>{Bx.exports=tH;function tH(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Gx=Z((ale,Ux)=>{Ux.exports=aH;function aH(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var Wx=Z((nle,Vx)=>{Vx.exports=nH;function nH(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Xx=Z((ile,Zx)=>{Zx.exports=iH;function iH(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Kx=Z((lle,Jx)=>{Jx.exports=lH;function lH(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ap=Z((ole,Qx)=>{Qx.exports=oH;function oH(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=t+t,o=a+a,s=n+n,u=t*l,f=a*l,v=a*o,h=n*l,d=n*o,m=n*s,g=i*l,y=i*o,_=i*s;return e[0]=1-v-m,e[1]=f+_,e[2]=h-y,e[3]=0,e[4]=f-_,e[5]=1-u-m,e[6]=d+g,e[7]=0,e[8]=h+y,e[9]=d-g,e[10]=1-u-v,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var jx=Z((sle,$x)=>{$x.exports=sH;function sH(e,r,t,a,n,i,l){var o=1/(t-r),s=1/(n-a),u=1/(i-l);return e[0]=i*2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*o,e[9]=(n+a)*s,e[10]=(l+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=l*i*2*u,e[15]=0,e}});var r_=Z((ule,e_)=>{e_.exports=uH;function uH(e,r,t,a,n){var i=1/Math.tan(r/2),l=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*l,e[15]=0,e}});var a_=Z((fle,t_)=>{t_.exports=fH;function fH(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),l=Math.tan(r.leftDegrees*Math.PI/180),o=Math.tan(r.rightDegrees*Math.PI/180),s=2/(l+o),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((l-o)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var i_=Z((cle,n_)=>{n_.exports=cH;function cH(e,r,t,a,n,i,l){var o=1/(r-t),s=1/(a-n),u=1/(i-l);return e[0]=-2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*o,e[13]=(n+a)*s,e[14]=(l+i)*u,e[15]=1,e}});var o_=Z((vle,l_)=>{var vH=tp();l_.exports=hH;function hH(e,r,t,a){var n,i,l,o,s,u,f,v,h,d,m=r[0],g=r[1],y=r[2],_=a[0],w=a[1],T=a[2],b=t[0],A=t[1],S=t[2];return Math.abs(m-b)<1e-6&&Math.abs(g-A)<1e-6&&Math.abs(y-S)<1e-6?vH(e):(f=m-b,v=g-A,h=y-S,d=1/Math.sqrt(f*f+v*v+h*h),f*=d,v*=d,h*=d,n=w*h-T*v,i=T*f-_*h,l=_*v-w*f,d=Math.sqrt(n*n+i*i+l*l),d?(d=1/d,n*=d,i*=d,l*=d):(n=0,i=0,l=0),o=v*l-h*i,s=h*n-f*l,u=f*i-v*n,d=Math.sqrt(o*o+s*s+u*u),d?(d=1/d,o*=d,s*=d,u*=d):(o=0,s=0,u=0),e[0]=n,e[1]=o,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=v,e[7]=0,e[8]=l,e[9]=u,e[10]=h,e[11]=0,e[12]=-(n*m+i*g+l*y),e[13]=-(o*m+s*g+u*y),e[14]=-(f*m+v*g+h*y),e[15]=1,e)}});var u_=Z((hle,s_)=>{s_.exports=dH;function dH(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var np=Z((dle,f_)=>{f_.exports={create:ux(),clone:cx(),copy:hx(),identity:tp(),transpose:mx(),invert:gx(),adjoint:xx(),determinant:wx(),multiply:Mx(),translate:kx(),scale:Sx(),rotate:qx(),rotateX:Ex(),rotateY:Rx(),rotateZ:Nx(),fromRotation:Ix(),fromRotationTranslation:Ox(),fromScaling:Yx(),fromTranslation:Gx(),fromXRotation:Wx(),fromYRotation:Xx(),fromZRotation:Kx(),fromQuat:ap(),frustum:jx(),perspective:r_(),perspectiveFromFieldOfView:a_(),ortho:i_(),lookAt:o_(),str:u_()}});var wv=Z(qt=>{"use strict";var pH=np();qt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var mH=Ir(),c_=ro(),yH=wv(),gH=np();function bH(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function xH(e){var r=mH.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function v_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function _H(e,r){h_("global",e,r)}function h_(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):c_.warn("addStyleRule failed"):c_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function wH(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&v_(t)}function TH(e,r,t,a,n,i){var l=a.split(":"),o=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[l[0]]=l[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[l[0]]=l[1]:f.style[o[0]]=o[1])}),u.setAttribute(s,!0))})}function MH(e){var r=p_(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=d_(a);if(n){var i=yH.convertCssMatrix(n);t=gH.multiply(t,t,i)}}),t}function d_(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function p_(e){for(var r=[];AH(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function AH(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function kH(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}m_.exports={getGraphDiv:bH,isPlotDiv:xH,removeElement:v_,addStyleRule:_H,addRelatedStyleRule:h_,deleteRelatedStyleRule:wH,setStyleOnHover:TH,getFullTransformMatrix:MH,getElementTransformMatrix:d_,getElementAndAncestors:p_,equalDomRects:kH}});var Vu=Z((yle,y_)=>{"use strict";y_.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var pi=Z((gle,M_)=>{"use strict";var b_=Yt().extendFlat,CH=nl(),x_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},__={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},SH=x_.flags.slice().concat(["fullReplot"]),LH=__.flags.slice().concat("layoutReplot");M_.exports={traces:x_,layout:__,traceFlags:function(){return g_(SH)},layoutFlags:function(){return g_(LH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";ip.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};ip.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var lp=Z((xle,A_)=>{"use strict";A_.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var zi=Z(Tv=>{"use strict";var k_=lp(),_le=k_.FORMAT_LINK,wle=k_.DATE_FORMAT_LINK;function op(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function ol(e,r){return r?r.d2l(e):e}function C_(e,r){return r?r.l2d(e):e}function qH(e){return e.x0}function DH(e){return e.x1}function EH(e){return e.y0}function PH(e){return e.y1}function S_(e){return e.x0shift||0}function L_(e){return e.x1shift||0}function q_(e){return e.y0shift||0}function D_(e){return e.y1shift||0}function Mv(e,r){return ol(e.x1,r)+L_(e)-ol(e.x0,r)-S_(e)}function Av(e,r,t){return ol(e.y1,t)+D_(e)-ol(e.y0,t)-q_(e)}function RH(e,r){return Math.abs(Mv(e,r))}function zH(e,r,t){return Math.abs(Av(e,r,t))}function NH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Mv(e,r),2)+Math.pow(Av(e,r,t),2))}function FH(e,r){return C_((ol(e.x1,r)+L_(e)+ol(e.x0,r)+S_(e))/2,r)}function IH(e,r,t){return C_((ol(e.y1,t)+D_(e)+ol(e.y0,t)+q_(e))/2,t)}function HH(e,r,t){return e.type!=="line"?void 0:Av(e,r,t)/Mv(e,r)}E_.exports={x0:qH,x1:DH,y0:EH,y1:PH,slope:HH,dx:Mv,dy:Av,width:RH,height:zH,length:NH,xcenter:FH,ycenter:IH}});var z_=Z((Ale,R_)=>{"use strict";var OH=pi().overrideAll,to=Gn(),P_=ha(),BH=mi().dash,sl=Yt().extendFlat,YH=zi().shapeTexttemplateAttrs,UH=kv();R_.exports=OH({newshape:{visible:sl({},to.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:sl({},to.legend,{}),legendgroup:sl({},to.legendgroup,{}),legendgrouptitle:{text:sl({},to.legendgrouptitle.text,{}),font:P_({})},legendrank:sl({},to.legendrank,{}),legendwidth:sl({},to.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:sl({},BH,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:sl({},to.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:YH({newshape:!0},{keys:Object.keys(UH)}),font:P_({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var F_=Z((kle,N_)=>{"use strict";var GH=mi().dash,VH=Yt().extendFlat;N_.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:VH({},GH,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var Cv=Z((Cle,I_)=>{"use strict";I_.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var ds=Z((Sle,Y_)=>{"use strict";var sp=ha(),WH=Vu(),Sv=hi(),H_=z_(),O_=F_(),ZH=Cv(),B_=Yt().extendFlat,Lv=sp({editType:"calc"});Lv.family.dflt='"Open Sans", verdana, arial, sans-serif';Lv.size.dflt=12;Lv.color.dflt=Sv.defaultLine;Y_.exports={font:Lv,title:{text:{valType:"string",editType:"layoutstyle"},font:sp({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:sp({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:B_(ZH({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:Sv.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Sv.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:Sv.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:H_.newshape,activeshape:H_.activeshape,newselection:O_.newselection,activeselection:O_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:B_({},WH.transition,{editType:"none"})}});var U_=ib(()=>{});var XH={};var G_=ib(()=>{U_()});var gr=Z(zr=>{"use strict";var ps=ro(),V_=_v(),W_=rp(),JH=nl(),KH=Gu().addStyleRule,Z_=Yt(),QH=Gn(),$H=ds(),jH=Z_.extendFlat,up=Z_.extendDeepAll;zr.modules={};zr.allCategories={};zr.allTypes=[];zr.subplotsRegistry={};zr.componentsRegistry={};zr.layoutArrayContainers=[];zr.layoutArrayRegexes=[];zr.traceLayoutAttributes={};zr.localeRegistry={};zr.apiMethodRegistry={};zr.collectableSubplotTypes=null;zr.register=function(r){if(zr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var iO=os().timeFormat,n4=Hr(),fp=ro(),fl=us().mod,gs=Bt(),xn=gs.BADNUM,Xa=gs.ONEDAY,Wu=gs.ONEHOUR,ul=gs.ONEMIN,ys=gs.ONESEC,Zu=gs.EPOCHJD,Ni=gr(),$_=os().utcFormat,lO=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,oO=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,j_=new Date().getFullYear()-70;function Fi(e){return e&&Ni.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Dt.dateTick0=function(e,r){var t=sO(e,!!r);if(r<2)return t;var a=Dt.dateTime2ms(t,e);return a+=Xa*(r-1),Dt.ms2DateTime(a,0,e)};function sO(e,r){return Fi(e)?r?Ni.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Ni.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Dt.dfltRange=function(e){return Fi(e)?Ni.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Dt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Dv,Ev;Dt.dateTime2ms=function(e,r){if(Dt.isJSDate(e)){var t=e.getTimezoneOffset()*ul,a=(e.getUTCMinutes()-e.getMinutes())*ul+(e.getUTCSeconds()-e.getSeconds())*ys+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*ul;t=t-n/2+fl(a-t+n/2,n)}return e=Number(e)-t,e>=Dv&&e<=Ev?e:xn}if(typeof e!="string"&&typeof e!="number")return xn;e=String(e);var i=Fi(r),l=e.charAt(0);i&&(l==="G"||l==="g")&&(e=e.substr(1),r="");var o=i&&r.substr(0,7)==="chinese",s=e.match(o?oO:lO);if(!s)return xn;var u=s[1],f=s[3]||"1",v=Number(s[5]||1),h=Number(s[7]||0),d=Number(s[9]||0),m=Number(s[11]||0);if(i){if(u.length===2)return xn;u=Number(u);var g;try{var y=Ni.getComponentMethod("calendars","getCal")(r);if(o){var _=f.charAt(f.length-1)==="i";f=parseInt(f,10),g=y.newDate(u,y.toMonthIndex(u,f,_),v)}else g=y.newDate(u,Number(f),v)}catch(T){return xn}return g?(g.toJD()-Zu)*Xa+h*Wu+d*ul+m*ys:xn}u.length===2?u=(Number(u)+2e3-j_)%100+j_:u=Number(u),f-=1;var w=new Date(Date.UTC(2e3,f,v,h,d));return w.setUTCFullYear(u),w.getUTCMonth()!==f||w.getUTCDate()!==v?xn:w.getTime()+m*ys};Dv=Dt.MIN_MS=Dt.dateTime2ms("-9999");Ev=Dt.MAX_MS=Dt.dateTime2ms("9999-12-31 23:59:59.9999");Dt.isDateTime=function(e,r){return Dt.dateTime2ms(e,r)!==xn};function ms(e,r){return String(e+Math.pow(10,r)).substr(1)}var qv=90*Xa,e4=3*Wu,r4=5*ul;Dt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Dv&&e<=Ev))return xn;r||(r=0);var a=Math.floor(fl(e+.05,1)*10),n=Math.round(e-a/10),i,l,o,s,u,f;if(Fi(t)){var v=Math.floor(n/Xa)+Zu,h=Math.floor(fl(e,Xa));try{i=Ni.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=$_("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;l=r=Dv+Xa&&e<=Ev-Xa))return xn;var r=Math.floor(fl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=iO("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return i4(a,n,i,l,o)};function i4(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+ms(r,2)+":"+ms(t,2),(a||n)&&(e+=":"+ms(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+ms(n,i)}return e}Dt.cleanDate=function(e,r,t){if(e===xn)return r;if(Dt.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Fi(t))return fp.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Dt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Dt.isDateTime(e,t))return fp.error("unrecognized date",e),r;return e};var uO=/%\d?f/g,fO=/%h/g,cO={1:"1",2:"1",3:"2",4:"2"};function t4(e,r,t,a){e=e.replace(uO,function(i){var l=Math.min(+i.charAt(1)||6,6),o=(r/1e3%1+2).toFixed(l).substr(2).replace(/0+$/,"")||"0";return o});var n=new Date(Math.floor(r+.05));if(e=e.replace(fO,function(){return cO[t("%q")(n)]}),Fi(a))try{e=Ni.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var vO=[59,59.9,59.99,59.999,59.9999];function hO(e,r){var t=fl(e+.05,Xa),a=ms(Math.floor(t/Wu),2)+":"+ms(fl(Math.floor(t/ul),60),2);if(r!=="M"){n4(r)||(r=0);var n=Math.min(fl(e/ys,60),vO[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Dt.formatDate=function(e,r,t,a,n,i){if(n=Fi(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-cartesian.js b/dist/plotly-cartesian.js index 45c743ea3cc..e2af9bdd2cd 100644 --- a/dist/plotly-cartesian.js +++ b/dist/plotly-cartesian.js @@ -1,5 +1,5 @@ /** -* plotly.js (cartesian) v3.0.2 +* plotly.js (cartesian) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-cartesian.min.js b/dist/plotly-cartesian.min.js index a5d68dda984..84202cb357f 100644 --- a/dist/plotly-cartesian.min.js +++ b/dist/plotly-cartesian.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (cartesian - minified) v3.0.2 +* plotly.js (cartesian - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var OA=Object.defineProperty;var Gie=Object.getOwnPropertyDescriptor;var Yie=Object.getOwnPropertyNames;var Vie=Object.prototype.hasOwnProperty;var BA=(e,r)=>()=>(e&&(r=e(e=0)),r);var N=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var Wie=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Yie(r))!Vie.call(e,n)&&n!==t&&OA(e,n,{get:()=>r[n],enumerable:!(a=Gie(r,n))||a.enumerable});return e};var jie=e=>Wie(OA({},"__esModule",{value:!0}),e);var tp=N(HA=>{"use strict";HA.version="3.0.2"});var GA=N((UA,ap)=>{(function(r,t,a){t[r]=t[r]||a(),typeof ap!="undefined"&&ap.exports&&(ap.exports=t[r])})("Promise",typeof window!="undefined"?window:UA,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,w,b,T){return Object.defineProperty(_,w,{value:b,writable:!0,configurable:T!==!1})}}catch(x){r=function(w,b,T){return w[b]=T,w}}a=function(){var _,w,b;function T(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,S){b=new T(M,S),w?w.next=b:_=b,w=b,b=void 0},drain:function(){var M=_;for(_=w=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(x,_){a.add(x,_),t||(t=i(a.drain))}function l(x){var _,w=typeof x;return x!=null&&(w=="object"||w=="function")&&(_=x.then),typeof _=="function"?_:!1}function s(){for(var x=0;x0&&o(s,w))}catch(b){c.call(new d(w),b)}}}function c(x){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=x,_.state=2,_.chain.length>0&&o(s,_))}function v(x,_,w,b){for(var T=0;T<_.length;T++)(function(M){x.resolve(_[M]).then(function(E){w(M,E)},b)})(T)}function d(x){this.def=x,this.triggered=!1}function p(x){this.promise=x,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function m(x){if(typeof x!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(b,T){var k={success:typeof b=="function"?b:!0,failure:typeof T=="function"?T:!1};return k.promise=new this.constructor(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");k.resolve=S,k.reject=E}),_.chain.push(k),_.state!==0&&o(s,_),k.promise},this.catch=function(b){return this.then(void 0,b)};try{x.call(void 0,function(b){f.call(_,b)},function(b){c.call(_,b)})}catch(w){c.call(_,w)}}var y=r({},"constructor",m,!1);return m.prototype=y,r(y,"__NPO__",0,!1),r(m,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");T(_)})}),r(m,"reject",function(_){return new this(function(b,T){if(typeof b!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(m,"all",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");var M=_.length,S=Array(M),E=0;v(w,_,function(R,D){S[R]=D,++E===M&&T(S)},k)})}),r(m,"race",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");v(w,_,function(S,E){T(E)},k)})}),m})});var Sr=N((tCe,np)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(g){for(var A=g.length,q=new Array(A);A--;)q[A]=g[A];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,A){l.call(this,g,A+"")},o.setAttributeNS=function(g,A,q){s.call(this,g,A,q+"")},u.setProperty=function(g,A,q){f.call(this,g,A+"",q)}}e.ascending=c;function c(h,g){return hg?1:h>=g?0:NaN}e.descending=function(h,g){return gh?1:g>=h?0:NaN},e.min=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AC&&(L=C)}else{for(;++A=C){L=C;break}for(;++AC&&(L=C)}return L},e.max=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AL&&(L=C)}else{for(;++A=C){L=C;break}for(;++AL&&(L=C)}return L},e.extent=function(h,g){var A=-1,q=h.length,L,C,I;if(arguments.length===1){for(;++A=C){L=I=C;break}for(;++AC&&(L=C),I=C){L=I=C;break}for(;++AC&&(L=C),I1)return I/(U-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)<0?q=C+1:L=C}return q},right:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)>0?L=C:q=C+1}return q}}}var m=p(c);e.bisectLeft=m.left,e.bisect=e.bisectRight=m.right,e.bisector=function(h){return p(h.length===1?function(g,A){return c(h(g),A)}:h)},e.shuffle=function(h,g,A){(q=arguments.length)<3&&(A=h.length,q<2&&(g=0));for(var q=A-g,L,C;q;)C=Math.random()*q--|0,L=h[q+g],h[q+g]=h[C+g],h[C+g]=L;return h},e.permute=function(h,g){for(var A=g.length,q=new Array(A);A--;)q[A]=h[g[A]];return q},e.pairs=function(h){for(var g=0,A=h.length-1,q,L=h[0],C=new Array(A<0?0:A);g=0;)for(I=h[g],A=I.length;--A>=0;)C[--L]=I[A];return C};var x=Math.abs;e.range=function(h,g,A){if(arguments.length<3&&(A=1,arguments.length<2&&(g=h,h=0)),(g-h)/A===1/0)throw new Error("infinite range");var q=[],L=_(x(A)),C=-1,I;if(h*=L,g*=L,A*=L,A<0)for(;(I=h+A*++C)>g;)q.push(I/L);else for(;(I=h+A*++C)=g.length)return L?L.call(h,U):q?U.sort(q):U;for(var $=-1,ee=U.length,re=g[J++],_e,Me,ae,ce=new b,ge;++$=g.length)return F;var J=[],$=A[U++];return F.forEach(function(ee,re){J.push({key:ee,values:I(re,U)})}),$?J.sort(function(ee,re){return $(ee.key,re.key)}):J}return h.map=function(F,U){return C(U,F,0)},h.entries=function(F){return I(C(e.map,F,0),0)},h.key=function(F){return g.push(F),h},h.sortKeys=function(F){return A[g.length-1]=F,h},h.sortValues=function(F){return q=F,h},h.rollup=function(F){return L=F,h},h},e.set=function(h){var g=new O;if(h)for(var A=0,q=h.length;A=0&&(q=h.slice(A+1),h=h.slice(0,A)),h)return arguments.length<2?this[h].on(q):this[h].on(q,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(q,null);return this}};function Z(h){var g=[],A=new b;function q(){for(var L=g,C=-1,I=L.length,F;++C=0&&(A=h.slice(0,g))!=="xmlns"&&(h=h.slice(g+1)),pe.hasOwnProperty(A)?{space:pe[A],local:h}:h}},de.attr=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node();return h=e.ns.qualify(h),h.local?A.getAttributeNS(h.space,h.local):A.getAttribute(h)}for(g in h)this.each(me(g,h[g]));return this}return this.each(me(h,g))};function me(h,g){h=e.ns.qualify(h);function A(){this.removeAttribute(h)}function q(){this.removeAttributeNS(h.space,h.local)}function L(){this.setAttribute(h,g)}function C(){this.setAttributeNS(h.space,h.local,g)}function I(){var U=g.apply(this,arguments);U==null?this.removeAttribute(h):this.setAttribute(h,U)}function F(){var U=g.apply(this,arguments);U==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,U)}return g==null?h.local?q:A:typeof g=="function"?h.local?F:I:h.local?C:L}function we(h){return h.trim().replace(/\s+/g," ")}de.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node(),q=(h=Fe(h)).length,L=-1;if(g=A.classList){for(;++L=0;)(C=A[q])&&(L&&L!==C.nextSibling&&L.parentNode.insertBefore(C,L),L=C);return this},de.sort=function(h){h=Te.apply(this,arguments);for(var g=-1,A=this.length;++g=g&&(g=L+1);!(U=I[g])&&++g0&&(h=h.slice(0,L));var I=Ge.get(h);I&&(h=I,C=Ye);function F(){var $=this[q];$&&(this.removeEventListener(h,$,$.$),delete this[q])}function U(){var $=C(g,t(arguments));F.call(this),this.addEventListener(h,this[q]=$,$.$=A),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),ee;for(var re in this)if(ee=re.match($)){var _e=this[re];this.removeEventListener(ee[1],_e,_e.$),delete this[re]}}return L?g?U:F:g?V:J}var Ge=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ge.forEach(function(h){"on"+h in a&&Ge.remove(h)});function Ze(h,g){return function(A){var q=e.event;e.event=A,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=q}}}function Ye(h,g){var A=Ze(h,g);return function(q){var L=this,C=q.relatedTarget;(!C||C!==L&&!(C.compareDocumentPosition(L)&8))&&A.call(L,q)}}var He,$e=0;function cr(h){var g=".dragsuppress-"+ ++$e,A="click"+g,q=e.select(i(h)).on("touchmove"+g,te).on("dragstart"+g,te).on("selectstart"+g,te);if(He==null&&(He="onselectstart"in h?!1:G(h.style,"userSelect")),He){var L=n(h).style,C=L[He];L[He]="none"}return function(I){if(q.on(g,null),He&&(L[He]=C),I){var F=function(){q.on(A,null)};q.on(A,function(){te(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Oe(h,fe())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Oe(h,g){g.changedTouches&&(g=g.changedTouches[0]);var A=h.ownerSVGElement||h;if(A.createSVGPoint){var q=A.createSVGPoint();if(lr<0){var L=i(h);if(L.scrollX||L.scrollY){A=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var C=A[0][0].getScreenCTM();lr=!(C.f||C.e),A.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(h.getScreenCTM().inverse()),[q.x,q.y]}var I=h.getBoundingClientRect();return[g.clientX-I.left-h.clientLeft,g.clientY-I.top-h.clientTop]}e.touch=function(h,g,A){if(arguments.length<3&&(A=g,g=fe().changedTouches),g){for(var q=0,L=g.length,C;q0?1:h<0?-1:0}function zr(h,g,A){return(g[0]-h[0])*(A[1]-h[1])-(g[1]-h[1])*(A[0]-h[0])}function Et(h){return h>1?0:h<-1?qe:Math.acos(h)}function Dt(h){return h>1?ur:h<-1?-ur:Math.asin(h)}function ma(h){return((h=Math.exp(h))-1/h)/2}function St(h){return((h=Math.exp(h))+1/h)/2}function ja(h){return((h=Math.exp(2*h))-1)/(h+1)}function ga(h){return(h=Math.sin(h/2))*h}var jt=Math.SQRT2,Na=2,br=4;e.interpolateZoom=function(h,g){var A=h[0],q=h[1],L=h[2],C=g[0],I=g[1],F=g[2],U=C-A,J=I-q,$=U*U+J*J,ee,re;if($0&&(tr=tr.transition().duration(I)),tr.call(ke.event)}function dr(){ce&&ce.domain(ae.range().map(function(tr){return(tr-h.x)/h.k}).map(ae.invert)),Ae&&Ae.domain(ge.range().map(function(tr){return(tr-h.y)/h.k}).map(ge.invert))}function pr(tr){F++||tr({type:"zoomstart"})}function Er(tr){dr(),tr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function mr(tr){--F||(tr({type:"zoomend"}),A=null)}function kr(){var tr=this,Dr=Me.of(tr,arguments),Rr=0,tt=e.select(i(tr)).on(J,Oa).on($,an),Bt=xe(e.mouse(tr)),fa=cr(tr);Kd.call(tr),pr(Dr);function Oa(){Rr=1,fr(e.mouse(tr),Bt),Er(Dr)}function an(){tt.on(J,null).on($,null),fa(Rr),mr(Dr)}}function rt(){var tr=this,Dr=Me.of(tr,arguments),Rr={},tt=0,Bt,fa=".zoom-"+e.event.changedTouches[0].identifier,Oa="touchmove"+fa,an="touchend"+fa,yn=[],nn=e.select(tr),Mn=cr(tr);kn(),pr(Dr),nn.on(U,null).on(re,kn);function Za(){var ji=e.touches(tr);return Bt=h.k,ji.forEach(function(Ba){Ba.identifier in Rr&&(Rr[Ba.identifier]=xe(Ba))}),ji}function kn(){var ji=e.event.target;e.select(ji).on(Oa,Us).on(an,Uie),yn.push(ji);for(var Ba=e.event.changedTouches,ii=0,wo=Ba.length;ii1){var Gs=oi[0],Nl=oi[1],rp=Gs[0]-Nl[0],IA=Gs[1]-Nl[1];tt=rp*rp+IA*IA}}function Us(){var ji=e.touches(tr),Ba,ii,wo,oi;Kd.call(tr);for(var bf=0,Gs=ji.length;bf1?1:g,A=A<0?0:A>1?1:A,L=A<=.5?A*(1+g):A+g-A*g,q=2*A-L;function C(F){return F>360?F-=360:F<0&&(F+=360),F<60?q+(L-q)*F/60:F<180?L:F<240?q+(L-q)*(240-F)/60:q}function I(F){return Math.round(C(F)*255)}return new Ut(I(h+120),I(h),I(h-120))}e.hcl=Zt;function Zt(h,g,A){return this instanceof Zt?(this.h=+h,this.c=+g,void(this.l=+A)):arguments.length<2?h instanceof Zt?new Zt(h.h,h.c,h.l):h instanceof Xt?Rt(h.l,h.a,h.b):Rt((h=sr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new Zt(h,g,A)}var tn=Zt.prototype=new Pt;tn.brighter=function(h){return new Zt(this.h,this.c,Math.min(100,this.l+ft*(arguments.length?h:1)))},tn.darker=function(h){return new Zt(this.h,this.c,Math.max(0,this.l-ft*(arguments.length?h:1)))},tn.rgb=function(){return Tn(this.h,this.c,this.l).rgb()};function Tn(h,g,A){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new Xt(A,Math.cos(h*=Ar)*g,Math.sin(h)*g)}e.lab=Xt;function Xt(h,g,A){return this instanceof Xt?(this.l=+h,this.a=+g,void(this.b=+A)):arguments.length<2?h instanceof Xt?new Xt(h.l,h.a,h.b):h instanceof Zt?Tn(h.h,h.c,h.l):sr((h=Ut(h)).r,h.g,h.b):new Xt(h,g,A)}var ft=18,xa=.95047,Ko=1,Qo=1.08883,vt=Xt.prototype=new Pt;vt.brighter=function(h){return new Xt(Math.min(100,this.l+ft*(arguments.length?h:1)),this.a,this.b)},vt.darker=function(h){return new Xt(Math.max(0,this.l-ft*(arguments.length?h:1)),this.a,this.b)},vt.rgb=function(){return An(this.l,this.a,this.b)};function An(h,g,A){var q=(h+16)/116,L=q+g/500,C=q-A/200;return L=zs(L)*xa,q=zs(q)*Ko,C=zs(C)*Qo,new Ut(Gi(3.2404542*L-1.5371385*q-.4985314*C),Gi(-.969266*L+1.8760108*q+.041556*C),Gi(.0556434*L-.2040259*q+1.0572252*C))}function Rt(h,g,A){return h>0?new Zt(Math.atan2(A,g)*Wr,Math.sqrt(g*g+A*A),h):new Zt(NaN,NaN,h)}function zs(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function pn(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function Gi(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=Ut;function Ut(h,g,A){return this instanceof Ut?(this.r=~~h,this.g=~~g,void(this.b=~~A)):arguments.length<2?h instanceof Ut?new Ut(h.r,h.g,h.b):$r(""+h,Ut,ba):new Ut(h,g,A)}function Yi(h){return new Ut(h>>16,h>>8&255,h&255)}function Pl(h){return Yi(h)+""}var Rl=Ut.prototype=new Pt;Rl.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,A=this.g,q=this.b,L=30;return!g&&!A&&!q?new Ut(L,L,L):(g&&g>4,q=q>>4|q,L=U&240,L=L>>4|L,C=U&15,C=C<<4|C):h.length===7&&(q=(U&16711680)>>16,L=(U&65280)>>8,C=U&255)),g(q,L,C))}function ht(h,g,A){var q=Math.min(h/=255,g/=255,A/=255),L=Math.max(h,g,A),C=L-q,I,F,U=(L+q)/2;return C?(F=U<.5?C/(L+q):C/(2-L-q),h==L?I=(g-A)/C+(g0&&U<1?0:I),new Qr(I,F,U)}function sr(h,g,A){h=za(h),g=za(g),A=za(A);var q=pn((.4124564*h+.3575761*g+.1804375*A)/xa),L=pn((.2126729*h+.7151522*g+.072175*A)/Ko),C=pn((.0193339*h+.119192*g+.9503041*A)/Qo);return Xt(116*L-16,500*(q-L),200*(L-C))}function za(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Tt(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var Ia=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Ia.forEach(function(h,g){Ia.set(h,Yi(g))});function Br(h){return typeof h=="function"?h:function(){return h}}e.functor=Br,e.xhr=Vi(H);function Vi(h){return function(g,A,q){return arguments.length===2&&typeof A=="function"&&(q=A,A=null),Is(g,A,h,q)}}function Is(h,g,A,q){var L={},C=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,U=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=J:F.onreadystatechange=function(){F.readyState>3&&J()};function J(){var $=F.status,ee;if(!$&&Yae(F)||$>=200&&$<300||$===304){try{ee=A.call(L,F)}catch(re){C.error.call(L,re);return}C.load.call(L,ee)}else C.error.call(L,F)}return F.onprogress=function($){var ee=e.event;e.event=$;try{C.progress.call(L,F)}finally{e.event=ee}},L.header=function($,ee){return $=($+"").toLowerCase(),arguments.length<2?I[$]:(ee==null?delete I[$]:I[$]=ee+"",L)},L.mimeType=function($){return arguments.length?(g=$==null?null:$+"",L):g},L.responseType=function($){return arguments.length?(U=$,L):U},L.response=function($){return A=$,L},["get","post"].forEach(function($){L[$]=function(){return L.send.apply(L,[$].concat(t(arguments)))}}),L.send=function($,ee,re){if(arguments.length===2&&typeof ee=="function"&&(re=ee,ee=null),F.open($,h,!0),g!=null&&!("accept"in I)&&(I.accept=g+",*/*"),F.setRequestHeader)for(var _e in I)F.setRequestHeader(_e,I[_e]);return g!=null&&F.overrideMimeType&&F.overrideMimeType(g),U!=null&&(F.responseType=U),re!=null&&L.on("error",re).on("load",function(Me){re(null,Me)}),C.beforesend.call(L,F),F.send(ee==null?null:ee),L},L.abort=function(){return F.abort(),L},e.rebind(L,C,"on"),q==null?L:L.get(Gae(q))}function Gae(h){return h.length===1?function(g,A){h(g==null?A:null)}:h}function Yae(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var A=new RegExp('["'+h+` +"use strict";var Plotly=(()=>{var OA=Object.defineProperty;var Gie=Object.getOwnPropertyDescriptor;var Yie=Object.getOwnPropertyNames;var Vie=Object.prototype.hasOwnProperty;var BA=(e,r)=>()=>(e&&(r=e(e=0)),r);var N=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var Wie=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Yie(r))!Vie.call(e,n)&&n!==t&&OA(e,n,{get:()=>r[n],enumerable:!(a=Gie(r,n))||a.enumerable});return e};var jie=e=>Wie(OA({},"__esModule",{value:!0}),e);var tp=N(HA=>{"use strict";HA.version="3.0.3"});var GA=N((UA,ap)=>{(function(r,t,a){t[r]=t[r]||a(),typeof ap!="undefined"&&ap.exports&&(ap.exports=t[r])})("Promise",typeof window!="undefined"?window:UA,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,w,b,T){return Object.defineProperty(_,w,{value:b,writable:!0,configurable:T!==!1})}}catch(x){r=function(w,b,T){return w[b]=T,w}}a=function(){var _,w,b;function T(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,S){b=new T(M,S),w?w.next=b:_=b,w=b,b=void 0},drain:function(){var M=_;for(_=w=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(x,_){a.add(x,_),t||(t=i(a.drain))}function l(x){var _,w=typeof x;return x!=null&&(w=="object"||w=="function")&&(_=x.then),typeof _=="function"?_:!1}function s(){for(var x=0;x0&&o(s,w))}catch(b){c.call(new d(w),b)}}}function c(x){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=x,_.state=2,_.chain.length>0&&o(s,_))}function v(x,_,w,b){for(var T=0;T<_.length;T++)(function(M){x.resolve(_[M]).then(function(E){w(M,E)},b)})(T)}function d(x){this.def=x,this.triggered=!1}function p(x){this.promise=x,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function m(x){if(typeof x!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(b,T){var k={success:typeof b=="function"?b:!0,failure:typeof T=="function"?T:!1};return k.promise=new this.constructor(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");k.resolve=S,k.reject=E}),_.chain.push(k),_.state!==0&&o(s,_),k.promise},this.catch=function(b){return this.then(void 0,b)};try{x.call(void 0,function(b){f.call(_,b)},function(b){c.call(_,b)})}catch(w){c.call(_,w)}}var y=r({},"constructor",m,!1);return m.prototype=y,r(y,"__NPO__",0,!1),r(m,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");T(_)})}),r(m,"reject",function(_){return new this(function(b,T){if(typeof b!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(m,"all",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");var M=_.length,S=Array(M),E=0;v(w,_,function(R,D){S[R]=D,++E===M&&T(S)},k)})}),r(m,"race",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");v(w,_,function(S,E){T(E)},k)})}),m})});var Sr=N((tCe,np)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(g){for(var A=g.length,q=new Array(A);A--;)q[A]=g[A];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,A){l.call(this,g,A+"")},o.setAttributeNS=function(g,A,q){s.call(this,g,A,q+"")},u.setProperty=function(g,A,q){f.call(this,g,A+"",q)}}e.ascending=c;function c(h,g){return hg?1:h>=g?0:NaN}e.descending=function(h,g){return gh?1:g>=h?0:NaN},e.min=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AC&&(L=C)}else{for(;++A=C){L=C;break}for(;++AC&&(L=C)}return L},e.max=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AL&&(L=C)}else{for(;++A=C){L=C;break}for(;++AL&&(L=C)}return L},e.extent=function(h,g){var A=-1,q=h.length,L,C,I;if(arguments.length===1){for(;++A=C){L=I=C;break}for(;++AC&&(L=C),I=C){L=I=C;break}for(;++AC&&(L=C),I1)return I/(U-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)<0?q=C+1:L=C}return q},right:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)>0?L=C:q=C+1}return q}}}var m=p(c);e.bisectLeft=m.left,e.bisect=e.bisectRight=m.right,e.bisector=function(h){return p(h.length===1?function(g,A){return c(h(g),A)}:h)},e.shuffle=function(h,g,A){(q=arguments.length)<3&&(A=h.length,q<2&&(g=0));for(var q=A-g,L,C;q;)C=Math.random()*q--|0,L=h[q+g],h[q+g]=h[C+g],h[C+g]=L;return h},e.permute=function(h,g){for(var A=g.length,q=new Array(A);A--;)q[A]=h[g[A]];return q},e.pairs=function(h){for(var g=0,A=h.length-1,q,L=h[0],C=new Array(A<0?0:A);g=0;)for(I=h[g],A=I.length;--A>=0;)C[--L]=I[A];return C};var x=Math.abs;e.range=function(h,g,A){if(arguments.length<3&&(A=1,arguments.length<2&&(g=h,h=0)),(g-h)/A===1/0)throw new Error("infinite range");var q=[],L=_(x(A)),C=-1,I;if(h*=L,g*=L,A*=L,A<0)for(;(I=h+A*++C)>g;)q.push(I/L);else for(;(I=h+A*++C)=g.length)return L?L.call(h,U):q?U.sort(q):U;for(var $=-1,ee=U.length,re=g[J++],_e,Me,ae,ce=new b,ge;++$=g.length)return F;var J=[],$=A[U++];return F.forEach(function(ee,re){J.push({key:ee,values:I(re,U)})}),$?J.sort(function(ee,re){return $(ee.key,re.key)}):J}return h.map=function(F,U){return C(U,F,0)},h.entries=function(F){return I(C(e.map,F,0),0)},h.key=function(F){return g.push(F),h},h.sortKeys=function(F){return A[g.length-1]=F,h},h.sortValues=function(F){return q=F,h},h.rollup=function(F){return L=F,h},h},e.set=function(h){var g=new O;if(h)for(var A=0,q=h.length;A=0&&(q=h.slice(A+1),h=h.slice(0,A)),h)return arguments.length<2?this[h].on(q):this[h].on(q,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(q,null);return this}};function Z(h){var g=[],A=new b;function q(){for(var L=g,C=-1,I=L.length,F;++C=0&&(A=h.slice(0,g))!=="xmlns"&&(h=h.slice(g+1)),pe.hasOwnProperty(A)?{space:pe[A],local:h}:h}},de.attr=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node();return h=e.ns.qualify(h),h.local?A.getAttributeNS(h.space,h.local):A.getAttribute(h)}for(g in h)this.each(me(g,h[g]));return this}return this.each(me(h,g))};function me(h,g){h=e.ns.qualify(h);function A(){this.removeAttribute(h)}function q(){this.removeAttributeNS(h.space,h.local)}function L(){this.setAttribute(h,g)}function C(){this.setAttributeNS(h.space,h.local,g)}function I(){var U=g.apply(this,arguments);U==null?this.removeAttribute(h):this.setAttribute(h,U)}function F(){var U=g.apply(this,arguments);U==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,U)}return g==null?h.local?q:A:typeof g=="function"?h.local?F:I:h.local?C:L}function we(h){return h.trim().replace(/\s+/g," ")}de.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node(),q=(h=Fe(h)).length,L=-1;if(g=A.classList){for(;++L=0;)(C=A[q])&&(L&&L!==C.nextSibling&&L.parentNode.insertBefore(C,L),L=C);return this},de.sort=function(h){h=Te.apply(this,arguments);for(var g=-1,A=this.length;++g=g&&(g=L+1);!(U=I[g])&&++g0&&(h=h.slice(0,L));var I=Ge.get(h);I&&(h=I,C=Ye);function F(){var $=this[q];$&&(this.removeEventListener(h,$,$.$),delete this[q])}function U(){var $=C(g,t(arguments));F.call(this),this.addEventListener(h,this[q]=$,$.$=A),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),ee;for(var re in this)if(ee=re.match($)){var _e=this[re];this.removeEventListener(ee[1],_e,_e.$),delete this[re]}}return L?g?U:F:g?V:J}var Ge=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ge.forEach(function(h){"on"+h in a&&Ge.remove(h)});function Ze(h,g){return function(A){var q=e.event;e.event=A,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=q}}}function Ye(h,g){var A=Ze(h,g);return function(q){var L=this,C=q.relatedTarget;(!C||C!==L&&!(C.compareDocumentPosition(L)&8))&&A.call(L,q)}}var He,$e=0;function cr(h){var g=".dragsuppress-"+ ++$e,A="click"+g,q=e.select(i(h)).on("touchmove"+g,te).on("dragstart"+g,te).on("selectstart"+g,te);if(He==null&&(He="onselectstart"in h?!1:G(h.style,"userSelect")),He){var L=n(h).style,C=L[He];L[He]="none"}return function(I){if(q.on(g,null),He&&(L[He]=C),I){var F=function(){q.on(A,null)};q.on(A,function(){te(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Oe(h,fe())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Oe(h,g){g.changedTouches&&(g=g.changedTouches[0]);var A=h.ownerSVGElement||h;if(A.createSVGPoint){var q=A.createSVGPoint();if(lr<0){var L=i(h);if(L.scrollX||L.scrollY){A=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var C=A[0][0].getScreenCTM();lr=!(C.f||C.e),A.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(h.getScreenCTM().inverse()),[q.x,q.y]}var I=h.getBoundingClientRect();return[g.clientX-I.left-h.clientLeft,g.clientY-I.top-h.clientTop]}e.touch=function(h,g,A){if(arguments.length<3&&(A=g,g=fe().changedTouches),g){for(var q=0,L=g.length,C;q0?1:h<0?-1:0}function zr(h,g,A){return(g[0]-h[0])*(A[1]-h[1])-(g[1]-h[1])*(A[0]-h[0])}function Et(h){return h>1?0:h<-1?qe:Math.acos(h)}function Dt(h){return h>1?ur:h<-1?-ur:Math.asin(h)}function ma(h){return((h=Math.exp(h))-1/h)/2}function St(h){return((h=Math.exp(h))+1/h)/2}function ja(h){return((h=Math.exp(2*h))-1)/(h+1)}function ga(h){return(h=Math.sin(h/2))*h}var jt=Math.SQRT2,Na=2,br=4;e.interpolateZoom=function(h,g){var A=h[0],q=h[1],L=h[2],C=g[0],I=g[1],F=g[2],U=C-A,J=I-q,$=U*U+J*J,ee,re;if($0&&(tr=tr.transition().duration(I)),tr.call(ke.event)}function dr(){ce&&ce.domain(ae.range().map(function(tr){return(tr-h.x)/h.k}).map(ae.invert)),Ae&&Ae.domain(ge.range().map(function(tr){return(tr-h.y)/h.k}).map(ge.invert))}function pr(tr){F++||tr({type:"zoomstart"})}function Er(tr){dr(),tr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function mr(tr){--F||(tr({type:"zoomend"}),A=null)}function kr(){var tr=this,Dr=Me.of(tr,arguments),Rr=0,tt=e.select(i(tr)).on(J,Oa).on($,an),Bt=xe(e.mouse(tr)),fa=cr(tr);Kd.call(tr),pr(Dr);function Oa(){Rr=1,fr(e.mouse(tr),Bt),Er(Dr)}function an(){tt.on(J,null).on($,null),fa(Rr),mr(Dr)}}function rt(){var tr=this,Dr=Me.of(tr,arguments),Rr={},tt=0,Bt,fa=".zoom-"+e.event.changedTouches[0].identifier,Oa="touchmove"+fa,an="touchend"+fa,yn=[],nn=e.select(tr),Mn=cr(tr);kn(),pr(Dr),nn.on(U,null).on(re,kn);function Za(){var ji=e.touches(tr);return Bt=h.k,ji.forEach(function(Ba){Ba.identifier in Rr&&(Rr[Ba.identifier]=xe(Ba))}),ji}function kn(){var ji=e.event.target;e.select(ji).on(Oa,Us).on(an,Uie),yn.push(ji);for(var Ba=e.event.changedTouches,ii=0,wo=Ba.length;ii1){var Gs=oi[0],Nl=oi[1],rp=Gs[0]-Nl[0],IA=Gs[1]-Nl[1];tt=rp*rp+IA*IA}}function Us(){var ji=e.touches(tr),Ba,ii,wo,oi;Kd.call(tr);for(var bf=0,Gs=ji.length;bf1?1:g,A=A<0?0:A>1?1:A,L=A<=.5?A*(1+g):A+g-A*g,q=2*A-L;function C(F){return F>360?F-=360:F<0&&(F+=360),F<60?q+(L-q)*F/60:F<180?L:F<240?q+(L-q)*(240-F)/60:q}function I(F){return Math.round(C(F)*255)}return new Ut(I(h+120),I(h),I(h-120))}e.hcl=Zt;function Zt(h,g,A){return this instanceof Zt?(this.h=+h,this.c=+g,void(this.l=+A)):arguments.length<2?h instanceof Zt?new Zt(h.h,h.c,h.l):h instanceof Xt?Rt(h.l,h.a,h.b):Rt((h=sr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new Zt(h,g,A)}var tn=Zt.prototype=new Pt;tn.brighter=function(h){return new Zt(this.h,this.c,Math.min(100,this.l+ft*(arguments.length?h:1)))},tn.darker=function(h){return new Zt(this.h,this.c,Math.max(0,this.l-ft*(arguments.length?h:1)))},tn.rgb=function(){return Tn(this.h,this.c,this.l).rgb()};function Tn(h,g,A){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new Xt(A,Math.cos(h*=Ar)*g,Math.sin(h)*g)}e.lab=Xt;function Xt(h,g,A){return this instanceof Xt?(this.l=+h,this.a=+g,void(this.b=+A)):arguments.length<2?h instanceof Xt?new Xt(h.l,h.a,h.b):h instanceof Zt?Tn(h.h,h.c,h.l):sr((h=Ut(h)).r,h.g,h.b):new Xt(h,g,A)}var ft=18,xa=.95047,Ko=1,Qo=1.08883,vt=Xt.prototype=new Pt;vt.brighter=function(h){return new Xt(Math.min(100,this.l+ft*(arguments.length?h:1)),this.a,this.b)},vt.darker=function(h){return new Xt(Math.max(0,this.l-ft*(arguments.length?h:1)),this.a,this.b)},vt.rgb=function(){return An(this.l,this.a,this.b)};function An(h,g,A){var q=(h+16)/116,L=q+g/500,C=q-A/200;return L=zs(L)*xa,q=zs(q)*Ko,C=zs(C)*Qo,new Ut(Gi(3.2404542*L-1.5371385*q-.4985314*C),Gi(-.969266*L+1.8760108*q+.041556*C),Gi(.0556434*L-.2040259*q+1.0572252*C))}function Rt(h,g,A){return h>0?new Zt(Math.atan2(A,g)*Wr,Math.sqrt(g*g+A*A),h):new Zt(NaN,NaN,h)}function zs(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function pn(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function Gi(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=Ut;function Ut(h,g,A){return this instanceof Ut?(this.r=~~h,this.g=~~g,void(this.b=~~A)):arguments.length<2?h instanceof Ut?new Ut(h.r,h.g,h.b):$r(""+h,Ut,ba):new Ut(h,g,A)}function Yi(h){return new Ut(h>>16,h>>8&255,h&255)}function Pl(h){return Yi(h)+""}var Rl=Ut.prototype=new Pt;Rl.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,A=this.g,q=this.b,L=30;return!g&&!A&&!q?new Ut(L,L,L):(g&&g>4,q=q>>4|q,L=U&240,L=L>>4|L,C=U&15,C=C<<4|C):h.length===7&&(q=(U&16711680)>>16,L=(U&65280)>>8,C=U&255)),g(q,L,C))}function ht(h,g,A){var q=Math.min(h/=255,g/=255,A/=255),L=Math.max(h,g,A),C=L-q,I,F,U=(L+q)/2;return C?(F=U<.5?C/(L+q):C/(2-L-q),h==L?I=(g-A)/C+(g0&&U<1?0:I),new Qr(I,F,U)}function sr(h,g,A){h=za(h),g=za(g),A=za(A);var q=pn((.4124564*h+.3575761*g+.1804375*A)/xa),L=pn((.2126729*h+.7151522*g+.072175*A)/Ko),C=pn((.0193339*h+.119192*g+.9503041*A)/Qo);return Xt(116*L-16,500*(q-L),200*(L-C))}function za(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Tt(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var Ia=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Ia.forEach(function(h,g){Ia.set(h,Yi(g))});function Br(h){return typeof h=="function"?h:function(){return h}}e.functor=Br,e.xhr=Vi(H);function Vi(h){return function(g,A,q){return arguments.length===2&&typeof A=="function"&&(q=A,A=null),Is(g,A,h,q)}}function Is(h,g,A,q){var L={},C=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,U=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=J:F.onreadystatechange=function(){F.readyState>3&&J()};function J(){var $=F.status,ee;if(!$&&Yae(F)||$>=200&&$<300||$===304){try{ee=A.call(L,F)}catch(re){C.error.call(L,re);return}C.load.call(L,ee)}else C.error.call(L,F)}return F.onprogress=function($){var ee=e.event;e.event=$;try{C.progress.call(L,F)}finally{e.event=ee}},L.header=function($,ee){return $=($+"").toLowerCase(),arguments.length<2?I[$]:(ee==null?delete I[$]:I[$]=ee+"",L)},L.mimeType=function($){return arguments.length?(g=$==null?null:$+"",L):g},L.responseType=function($){return arguments.length?(U=$,L):U},L.response=function($){return A=$,L},["get","post"].forEach(function($){L[$]=function(){return L.send.apply(L,[$].concat(t(arguments)))}}),L.send=function($,ee,re){if(arguments.length===2&&typeof ee=="function"&&(re=ee,ee=null),F.open($,h,!0),g!=null&&!("accept"in I)&&(I.accept=g+",*/*"),F.setRequestHeader)for(var _e in I)F.setRequestHeader(_e,I[_e]);return g!=null&&F.overrideMimeType&&F.overrideMimeType(g),U!=null&&(F.responseType=U),re!=null&&L.on("error",re).on("load",function(Me){re(null,Me)}),C.beforesend.call(L,F),F.send(ee==null?null:ee),L},L.abort=function(){return F.abort(),L},e.rebind(L,C,"on"),q==null?L:L.get(Gae(q))}function Gae(h){return h.length===1?function(g,A){h(g==null?A:null)}:h}function Yae(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var A=new RegExp('["'+h+` ]`),q=h.charCodeAt(0);function L(J,$,ee){arguments.length<3&&(ee=$,$=null);var re=Is(J,g,$==null?C:I($),ee);return re.row=function(_e){return arguments.length?re.response(($=_e)==null?C:I(_e)):$},re}function C(J){return L.parse(J.responseText)}function I(J){return function($){return L.parse($.responseText,J)}}L.parse=function(J,$){var ee;return L.parseRows(J,function(re,_e){if(ee)return ee(re,_e-1);var Me=function(ae){for(var ce={},ge=re.length,Ae=0;Ae=Me)return re;if(Ae)return Ae=!1,ee;var Ve=ae;if(J.charCodeAt(Ve)===34){for(var nr=Ve;nr++24?(isFinite(g)&&(clearTimeout(Nd),Nd=setTimeout(A3,g)),Fd=0):(Fd=1,A8(A3))}e.timer.flush=function(){M8(),k8()};function M8(){for(var h=Date.now(),g=Pd;g;)h>=g.t&&g.c(h-g.t)&&(g.c=null),g=g.n;return h}function k8(){for(var h,g=Pd,A=1/0;g;)g.c?(g.t=0;--F)ae.push(L[J[ee[F]][2]]);for(F=+_e;F1&&zr(h[A[q-2]],h[A[q-1]],h[L])<=0;)--q;A[q++]=L}return A.slice(0,q)}function Vae(h,g){return h[0]-g[0]||h[1]-g[1]}e.geom.polygon=function(h){return K(h,Id),h};var Id=e.geom.polygon.prototype=[];Id.area=function(){for(var h=-1,g=this.length,A,q=this[g-1],L=0;++hve)F=F.L;else if(I=g-Xae(F,A),I>ve){if(!F.R){q=F;break}F=F.R}else{C>-ve?(q=F.P,L=F):I>-ve?(q=F,L=F.N):q=L=F;break}var U=E8(h);if(pf.insert(q,U),!(!q&&!L)){if(q===L){mf(q),L=E8(q.site),pf.insert(U,L),U.edge=L.edge=Rv(q.site,U.site),yf(q),yf(L);return}if(!L){U.edge=Rv(q.site,U.site);return}mf(q),mf(L);var J=q.site,$=J.x,ee=J.y,re=h.x-$,_e=h.y-ee,Me=L.site,ae=Me.x-$,ce=Me.y-ee,ge=2*(re*ce-_e*ae),Ae=re*re+_e*_e,ke=ae*ae+ce*ce,xe={x:(ce*Ae-_e*ke)/ge+$,y:(re*ke-ae*Ae)/ge+ee};Od(L.edge,J,Me,xe),U.edge=Rv(J,h,null,xe),L.edge=Rv(h,Me,null,xe),yf(q),yf(L)}}function D8(h,g){var A=h.site,q=A.x,L=A.y,C=L-g;if(!C)return q;var I=h.P;if(!I)return-1/0;A=I.site;var F=A.x,U=A.y,J=U-g;if(!J)return F;var $=F-q,ee=1/C-1/J,re=$/J;return ee?(-re+Math.sqrt(re*re-2*ee*($*$/(-2*J)-U+J/2+L-C/2)))/ee+q:(q+F)/2}function Xae(h,g){var A=h.N;if(A)return D8(A,g);var q=h.site;return q.y===g?q.x:1/0}function P8(h){this.site=h,this.edges=[]}P8.prototype.prepare=function(){for(var h=this.edges,g=h.length,A;g--;)A=h[g].edge,(!A.b||!A.a)&&h.splice(g,1);return h.sort(R8),h.length};function Jae(h){for(var g=h[0][0],A=h[1][0],q=h[0][1],L=h[1][1],C,I,F,U,J=Os,$=J.length,ee,re,_e,Me,ae,ce;$--;)if(ee=J[$],!(!ee||!ee.prepare()))for(_e=ee.edges,Me=_e.length,re=0;reve||x(U-I)>ve)&&(_e.splice(re,0,new Bd(rne(ee.site,ce,x(F-g)ve?{x:g,y:x(C-g)ve?{x:x(I-L)ve?{x:A,y:x(C-A)ve?{x:x(I-q)=-De)){var re=U*U+J*J,_e=$*$+ce*ce,Me=(ce*re-J*_e)/ee,ae=(U*_e-$*re)/ee,ce=ae+F,ge=C8.pop()||new $ae;ge.arc=h,ge.site=L,ge.x=Me+I,ge.y=ce+Math.sqrt(Me*Me+ae*ae),ge.cy=ce,h.circle=ge;for(var Ae=null,ke=Pv._;ke;)if(ge.y0)){if(ae/=_e,_e<0){if(ae0){if(ae>re)return;ae>ee&&(ee=ae)}if(ae=A-F,!(!_e&&ae<0)){if(ae/=_e,_e<0){if(ae>re)return;ae>ee&&(ee=ae)}else if(_e>0){if(ae0)){if(ae/=Me,Me<0){if(ae0){if(ae>re)return;ae>ee&&(ee=ae)}if(ae=q-U,!(!Me&&ae<0)){if(ae/=Me,Me<0){if(ae>re)return;ae>ee&&(ee=ae)}else if(Me>0){if(ae0&&(L.a={x:F+ee*_e,y:U+ee*Me}),re<1&&(L.b={x:F+re*_e,y:U+re*Me}),L}}}}}}function Qae(h){for(var g=df,A=Kae(h[0][0],h[0][1],h[1][0],h[1][1]),q=g.length,L;q--;)L=g[q],(!ene(L,h)||!A(L)||x(L.a.x-L.b.x)=C)return;if($>re){if(!q)q={x:Me,y:I};else if(q.y>=F)return;A={x:Me,y:F}}else{if(!q)q={x:Me,y:F};else if(q.y1)if($>re){if(!q)q={x:(I-ge)/ce,y:I};else if(q.y>=F)return;A={x:(F-ge)/ce,y:F}}else{if(!q)q={x:(F-ge)/ce,y:F};else if(q.y=C)return;A={x:C,y:ce*C+ge}}else{if(!q)q={x:C,y:ce*C+ge};else if(q.x=$&&ge.x<=re&&ge.y>=ee&&ge.y<=_e?[[$,_e],[re,_e],[re,ee],[$,ee]]:[];Ae.point=U[ae]}),J}function F(U){return U.map(function(J,$){return{x:Math.round(q(J,$)/ve)*ve,y:Math.round(L(J,$)/ve)*ve,i:$}})}return I.links=function(U){return C3(F(U)).edges.filter(function(J){return J.l&&J.r}).map(function(J){return{source:U[J.l.i],target:U[J.r.i]}})},I.triangles=function(U){var J=[];return C3(F(U)).cells.forEach(function($,ee){for(var re=$.site,_e=$.edges.sort(R8),Me=-1,ae=_e.length,ce,ge,Ae=_e[ae-1].edge,ke=Ae.l===re?Ae.r:Ae.l;++Meke&&(ke=$.x),$.y>xe&&(xe=$.y),_e.push($.x),Me.push($.y);else for(ae=0;aeke&&(ke=Ve),nr>xe&&(xe=nr),_e.push(Ve),Me.push(nr)}var fr=ke-ge,or=xe-Ae;fr>or?xe=Ae+fr:ke=ge+or;function dr(mr,kr,rt,Jt,yt,tr,Dr,Rr){if(!(isNaN(rt)||isNaN(Jt)))if(mr.leaf){var tt=mr.x,Bt=mr.y;if(tt!=null)if(x(tt-rt)+x(Bt-Jt)<.01)pr(mr,kr,rt,Jt,yt,tr,Dr,Rr);else{var fa=mr.point;mr.x=mr.y=mr.point=null,pr(mr,fa,tt,Bt,yt,tr,Dr,Rr),pr(mr,kr,rt,Jt,yt,tr,Dr,Rr)}else mr.x=rt,mr.y=Jt,mr.point=kr}else pr(mr,kr,rt,Jt,yt,tr,Dr,Rr)}function pr(mr,kr,rt,Jt,yt,tr,Dr,Rr){var tt=(yt+Dr)*.5,Bt=(tr+Rr)*.5,fa=rt>=tt,Oa=Jt>=Bt,an=Oa<<1|fa;mr.leaf=!1,mr=mr.nodes[an]||(mr.nodes[an]=z8()),fa?yt=tt:Dr=tt,Oa?tr=Bt:Rr=Bt,dr(mr,kr,rt,Jt,yt,tr,Dr,Rr)}var Er=z8();if(Er.add=function(mr){dr(Er,mr,+ee(mr,++ae),+re(mr,ae),ge,Ae,ke,xe)},Er.visit=function(mr){zv(mr,Er,ge,Ae,ke,xe)},Er.find=function(mr){return one(Er,mr[0],mr[1],ge,Ae,ke,xe)},ae=-1,g==null){for(;++aeC||re>I||_e=Ve,or=A>=nr,dr=or<<1|fr,pr=dr+4;drA&&(C=g.slice(A,C),F[I]?F[I]+=C:F[++I]=C),(q=q[0])===(L=L[0])?F[I]?F[I]+=L:F[++I]=L:(F[++I]=null,U.push({i:I,x:el(q,L)})),A=P3.lastIndex;return A=0&&!(q=e.interpolators[A](h,g)););return q}e.interpolators=[function(h,g){var A=typeof g;return(A==="string"?Ia.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?E3:O8:g instanceof Pt?E3:Array.isArray(g)?Gd:A==="object"&&isNaN(g)?I8:el)(h,g)}],e.interpolateArray=Gd;function Gd(h,g){var A=[],q=[],L=h.length,C=g.length,I=Math.min(h.length,g.length),F;for(F=0;F=0?h.slice(0,g):h,q=g>=0?h.slice(g+1):"in";return A=lne.get(A)||B8,q=sne.get(q)||H,une(q(A.apply(null,r.call(arguments,1))))};function une(h){return function(g){return g<=0?0:g>=1?1:h(g)}}function H8(h){return function(g){return 1-h(1-g)}}function U8(h){return function(g){return .5*(g<.5?h(2*g):2-h(2-2*g))}}function fne(h){return h*h}function cne(h){return h*h*h}function vne(h){if(h<=0)return 0;if(h>=1)return 1;var g=h*h,A=g*h;return 4*(h<.5?A:3*(h-g)+A-.75)}function hne(h){return function(g){return Math.pow(g,h)}}function dne(h){return 1-Math.cos(h*ur)}function pne(h){return Math.pow(2,10*(h-1))}function yne(h){return 1-Math.sqrt(1-h*h)}function mne(h,g){var A;return arguments.length<2&&(g=.45),arguments.length?A=g/ar*Math.asin(1/h):(h=1,A=g/4),function(q){return 1+h*Math.pow(2,-10*q)*Math.sin((q-A)*ar/g)}}function gne(h){return h||(h=1.70158),function(g){return g*g*((h+1)*g-h)}}function bne(h){return h<1/2.75?7.5625*h*h:h<2/2.75?7.5625*(h-=1.5/2.75)*h+.75:h<2.5/2.75?7.5625*(h-=2.25/2.75)*h+.9375:7.5625*(h-=2.625/2.75)*h+.984375}e.interpolateHcl=xne;function xne(h,g){h=e.hcl(h),g=e.hcl(g);var A=h.h,q=h.c,L=h.l,C=g.h-A,I=g.c-q,F=g.l-L;return isNaN(I)&&(I=0,q=isNaN(q)?g.c:q),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(U){return Tn(A+C*U,q+I*U,L+F*U)+""}}e.interpolateHsl=_ne;function _ne(h,g){h=e.hsl(h),g=e.hsl(g);var A=h.h,q=h.s,L=h.l,C=g.h-A,I=g.s-q,F=g.l-L;return isNaN(I)&&(I=0,q=isNaN(q)?g.s:q),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(U){return ba(A+C*U,q+I*U,L+F*U)+""}}e.interpolateLab=wne;function wne(h,g){h=e.lab(h),g=e.lab(g);var A=h.l,q=h.a,L=h.b,C=g.l-A,I=g.a-q,F=g.b-L;return function(U){return An(A+C*U,q+I*U,L+F*U)+""}}e.interpolateRound=G8;function G8(h,g){return g-=h,function(A){return Math.round(h+g*A)}}e.transform=function(h){var g=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(A){if(A!=null){g.setAttribute("transform",A);var q=g.transform.baseVal.consolidate()}return new Y8(q?q.matrix:Ane)})(h)};function Y8(h){var g=[h.a,h.b],A=[h.c,h.d],q=W8(g),L=V8(g,A),C=W8(Tne(A,g,-L))||0;g[0]*A[1]180?g+=360:g-h>180&&(h+=360),q.push({i:A.push(gf(A)+"rotate(",null,")")-2,x:el(h,g)})):g&&A.push(gf(A)+"rotate("+g+")")}function Sne(h,g,A,q){h!==g?q.push({i:A.push(gf(A)+"skewX(",null,")")-2,x:el(h,g)}):g&&A.push(gf(A)+"skewX("+g+")")}function qne(h,g,A,q){if(h[0]!==g[0]||h[1]!==g[1]){var L=A.push(gf(A)+"scale(",null,",",null,")");q.push({i:L-4,x:el(h[0],g[0])},{i:L-2,x:el(h[1],g[1])})}else(g[0]!==1||g[1]!==1)&&A.push(gf(A)+"scale("+g+")")}function j8(h,g){var A=[],q=[];return h=e.transform(h),g=e.transform(g),Mne(h.translate,g.translate,A,q),kne(h.rotate,g.rotate,A,q),Sne(h.skew,g.skew,A,q),qne(h.scale,g.scale,A,q),h=g=null,function(L){for(var C=-1,I=q.length,F;++C0?C=xe:(A.c=null,A.t=NaN,A=null,g.end({type:"end",alpha:C=0})):xe>0&&(g.start({type:"start",alpha:C=xe}),A=zd(h.tick)),h):C},h.start=function(){var xe,Ve=_e.length,nr=Me.length,fr=q[0],or=q[1],dr,pr;for(xe=0;xe=0;)C.push($=J[U]),$.parent=F,$.depth=F.depth+1;A&&(F.value=0),F.children=J}else A&&(F.value=+A.call(q,F,F.depth)||0),delete F.children;return _o(L,function(ee){var re,_e;h&&(re=ee.children)&&re.sort(h),A&&(_e=ee.parent)&&(_e.value+=ee.value)}),I}return q.sort=function(L){return arguments.length?(h=L,q):h},q.children=function(L){return arguments.length?(g=L,q):g},q.value=function(L){return arguments.length?(A=L,q):A},q.revalue=function(L){return A&&(Ov(L,function(C){C.children&&(C.value=0)}),_o(L,function(C){var I;C.children||(C.value=+A.call(q,C,C.depth)||0),(I=C.parent)&&(I.value+=C.value)})),L},q};function Iv(h,g){return e.rebind(h,g,"sort","children","value"),h.nodes=h,h.links=Gne,h}function Ov(h,g){for(var A=[h];(h=A.pop())!=null;)if(g(h),(L=h.children)&&(q=L.length))for(var q,L;--q>=0;)A.push(L[q])}function _o(h,g){for(var A=[h],q=[];(h=A.pop())!=null;)if(q.push(h),(I=h.children)&&(C=I.length))for(var L=-1,C,I;++LL&&(L=F),q.push(F)}for(I=0;Iq&&(A=g,q=L);return A}function Jne(h){return h.reduce($ne,0)}function $ne(h,g){return h+g[1]}e.layout.histogram=function(){var h=!0,g=Number,A=Qne,q=Kne;function L(C,re){for(var F=[],U=C.map(g,this),J=A.call(this,U,re),$=q.call(this,J,U,re),ee,re=-1,_e=U.length,Me=$.length-1,ae=h?1:1/_e,ce;++re0)for(re=-1;++re<_e;)ce=U[re],ce>=J[0]&&ce<=J[1]&&(ee=F[e.bisect($,ce,1,Me)-1],ee.y+=ae,ee.push(C[re]));return F}return L.value=function(C){return arguments.length?(g=C,L):g},L.range=function(C){return arguments.length?(A=Br(C),L):A},L.bins=function(C){return arguments.length?(q=typeof C=="number"?function(I){return $8(I,C)}:Br(C),L):q},L.frequency=function(C){return arguments.length?(h=!!C,L):h},L};function Kne(h,g){return $8(h,Math.ceil(Math.log(g.length)/Math.LN2+1))}function $8(h,g){for(var A=-1,q=+h[0],L=(h[1]-q)/g,C=[];++A<=g;)C[A]=L*A+q;return C}function Qne(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(eie),g=0,A=[1,1],q;function L(C,I){var F=h.call(this,C,I),U=F[0],J=A[0],$=A[1],ee=q==null?Math.sqrt:typeof q=="function"?q:function(){return q};if(U.x=U.y=0,_o(U,function(_e){_e.r=+ee(_e.value)}),_o(U,eA),g){var re=g*(q?1:Math.max(2*U.r/J,2*U.r/$))/2;_o(U,function(_e){_e.r+=re}),_o(U,eA),_o(U,function(_e){_e.r-=re})}return rA(U,J/2,$/2,q?1:1/Math.max(2*U.r/J,2*U.r/$)),F}return L.size=function(C){return arguments.length?(A=C,L):A},L.radius=function(C){return arguments.length?(q=C==null||typeof C=="function"?C:+C,L):q},L.padding=function(C){return arguments.length?(g=+C,L):g},Iv(L,h)};function eie(h,g){return h.value-g.value}function N3(h,g){var A=h._pack_next;h._pack_next=g,g._pack_prev=h,g._pack_next=A,A._pack_prev=g}function K8(h,g){h._pack_next=g,g._pack_prev=h}function Q8(h,g){var A=g.x-h.x,q=g.y-h.y,L=h.r+g.r;return .999*L*L>A*A+q*q}function eA(h){if(!(g=h.children)||!(re=g.length))return;var g,A=1/0,q=-1/0,L=1/0,C=-1/0,I,F,U,J,$,ee,re;function _e(xe){A=Math.min(xe.x-xe.r,A),q=Math.max(xe.x+xe.r,q),L=Math.min(xe.y-xe.r,L),C=Math.max(xe.y+xe.r,C)}if(g.forEach(rie),I=g[0],I.x=-I.r,I.y=0,_e(I),re>1&&(F=g[1],F.x=F.r,F.y=0,_e(F),re>2))for(U=g[2],tA(I,F,U),_e(U),N3(I,U),I._pack_prev=U,N3(U,F),F=I._pack_next,J=3;Jce.x&&(ce=Ve),Ve.depth>ge.depth&&(ge=Ve)});var Ae=g(ae,ce)/2-ae.x,ke=A[0]/(ce.x+g(ce,ae)/2+Ae),xe=A[1]/(ge.depth||1);Ov(_e,function(Ve){Ve.x=(Ve.x+Ae)*ke,Ve.y=Ve.depth*xe})}return re}function C($){for(var ee={A:null,children:[$]},re=[ee],_e;(_e=re.pop())!=null;)for(var Me=_e.children,ae,ce=0,ge=Me.length;ce0&&(aie(iie(ae,$,re),$,Ve),ge+=Ve,Ae+=Ve),ke+=ae.m,ge+=_e.m,xe+=ce.m,Ae+=Me.m;ae&&!I3(Me)&&(Me.t=ae,Me.m+=ke-Ae),_e&&!z3(ce)&&(ce.t=_e,ce.m+=ge-xe,re=$)}return re}function J($){$.x*=A[0],$.y=$.depth*A[1]}return L.separation=function($){return arguments.length?(g=$,L):g},L.size=function($){return arguments.length?(q=(A=$)==null?J:null,L):q?null:A},L.nodeSize=function($){return arguments.length?(q=(A=$)==null?null:J,L):q?A:null},Iv(L,h)};function aA(h,g){return h.parent==g.parent?1:2}function z3(h){var g=h.children;return g.length?g[0]:h.t}function I3(h){var g=h.children,A;return(A=g.length)?g[A-1]:h.t}function aie(h,g,A){var q=A/(g.i-h.i);g.c-=q,g.s+=A,h.c+=q,g.z+=A,g.m+=A}function nie(h){for(var g=0,A=0,q=h.children,L=q.length,C;--L>=0;)C=q[L],C.z+=g,C.m+=g,g+=C.s+(A+=C.c)}function iie(h,g,A){return h.a.parent===g.parent?h.a:A}e.layout.cluster=function(){var h=e.layout.hierarchy().sort(null).value(null),g=aA,A=[1,1],q=!1;function L(C,I){var F=h.call(this,C,I),U=F[0],J,$=0;_o(U,function(ae){var ce=ae.children;ce&&ce.length?(ae.x=lie(ce),ae.y=oie(ce)):(ae.x=J?$+=g(ae,J):0,ae.y=0,J=ae)});var ee=nA(U),re=iA(U),_e=ee.x-g(ee,re)/2,Me=re.x+g(re,ee)/2;return _o(U,q?function(ae){ae.x=(ae.x-U.x)*A[0],ae.y=(U.y-ae.y)*A[1]}:function(ae){ae.x=(ae.x-_e)/(Me-_e)*A[0],ae.y=(1-(U.y?ae.y/U.y:1))*A[1]}),F}return L.separation=function(C){return arguments.length?(g=C,L):g},L.size=function(C){return arguments.length?(q=(A=C)==null,L):q?null:A},L.nodeSize=function(C){return arguments.length?(q=(A=C)!=null,L):q?A:null},Iv(L,h)};function oie(h){return 1+e.max(h,function(g){return g.y})}function lie(h){return h.reduce(function(g,A){return g+A.x},0)/h.length}function nA(h){var g=h.children;return g&&g.length?nA(g[0]):h}function iA(h){var g=h.children,A;return g&&(A=g.length)?iA(g[A-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),g=Math.round,A=[1,1],q=null,L=O3,C=!1,I,F="squarify",U=.5*(1+Math.sqrt(5));function J(ae,ce){for(var ge=-1,Ae=ae.length,ke,xe;++ge0;)Ae.push(xe=ke[or-1]),Ae.area+=xe.area,F!=="squarify"||(nr=re(Ae,fr))<=Ve?(ke.pop(),Ve=nr):(Ae.area-=Ae.pop().area,_e(Ae,fr,ge,!1),fr=Math.min(ge.dx,ge.dy),Ae.length=Ae.area=0,Ve=1/0);Ae.length&&(_e(Ae,fr,ge,!0),Ae.length=Ae.area=0),ce.forEach($)}}function ee(ae){var ce=ae.children;if(ce&&ce.length){var ge=L(ae),Ae=ce.slice(),ke,xe=[];for(J(Ae,ge.dx*ge.dy/ae.value),xe.area=0;ke=Ae.pop();)xe.push(ke),xe.area+=ke.area,ke.z!=null&&(_e(xe,ke.z?ge.dx:ge.dy,ge,!Ae.length),xe.length=xe.area=0);ce.forEach(ee)}}function re(ae,ce){for(var ge=ae.area,Ae,ke=0,xe=1/0,Ve=-1,nr=ae.length;++Veke&&(ke=Ae));return ge*=ge,ce*=ce,ge?Math.max(ce*ke*U/ge,ge/(ce*xe*U)):1/0}function _e(ae,ce,ge,Ae){var ke=-1,xe=ae.length,Ve=ge.x,nr=ge.y,fr=ce?g(ae.area/ce):0,or;if(ce==ge.dx){for((Ae||fr>ge.dy)&&(fr=ge.dy);++kege.dx)&&(fr=ge.dx);++ke1);return h+g*q*Math.sqrt(-2*Math.log(C)/C)}},logNormal:function(){var h=e.random.normal.apply(e,arguments);return function(){return Math.exp(h())}},bates:function(h){var g=e.random.irwinHall(h);return function(){return g()/h}},irwinHall:function(h){return function(){for(var g=0,A=0;A2?fie:sie,J=q?Cne:Lne;return L=U(h,g,J,A),C=U(g,h,J,Bs),F}function F(U){return L(U)}return F.invert=function(U){return C(U)},F.domain=function(U){return arguments.length?(h=U.map(Number),I()):h},F.range=function(U){return arguments.length?(g=U,I()):g},F.rangeRound=function(U){return F.range(U).interpolate(G8)},F.clamp=function(U){return arguments.length?(q=U,I()):q},F.interpolate=function(U){return arguments.length?(A=U,I()):A},F.ticks=function(U){return U3(h,U)},F.tickFormat=function(U,J){return d3_scale_linearTickFormat(h,U,J)},F.nice=function(U){return fA(h,U),I()},F.copy=function(){return sA(h,g,A,q)},I()}function uA(h,g){return e.rebind(h,g,"range","rangeRound","interpolate","clamp")}function fA(h,g){return B3(h,lA(H3(h,g)[2])),B3(h,lA(H3(h,g)[2])),h}function H3(h,g){g==null&&(g=10);var A=Yd(h),q=A[1]-A[0],L=Math.pow(10,Math.floor(Math.log(q/g)/Math.LN10)),C=g/q*L;return C<=.15?L*=10:C<=.35?L*=5:C<=.75&&(L*=2),A[0]=Math.ceil(A[0]/L)*L,A[1]=Math.floor(A[1]/L)*L+L*.5,A[2]=L,A}function U3(h,g){return e.range.apply(e,H3(h,g))}var cie={s:1,g:1,p:1,r:1,e:1};function cA(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function QLe(h,g){var A=cA(g[2]);return h in cie?Math.abs(A-cA(Math.max(x(g[0]),x(g[1]))))+ +(h!=="e"):A-(h==="%")*2}e.scale.log=function(){return vA(e.scale.linear().domain([0,1]),10,!0,[1,10])};function vA(h,g,A,q){function L(F){return(A?Math.log(F<0?0:F):-Math.log(F>0?0:-F))/Math.log(g)}function C(F){return A?Math.pow(g,F):-Math.pow(g,-F)}function I(F){return h(L(F))}return I.invert=function(F){return C(h.invert(F))},I.domain=function(F){return arguments.length?(A=F[0]>=0,h.domain((q=F.map(Number)).map(L)),I):q},I.base=function(F){return arguments.length?(g=+F,h.domain(q.map(L)),I):g},I.nice=function(){var F=B3(q.map(L),A?Math:vie);return h.domain(F),q=F.map(C),I},I.ticks=function(){var F=Yd(q),U=[],J=F[0],$=F[1],ee=Math.floor(L(J)),re=Math.ceil(L($)),_e=g%1?2:g;if(isFinite(re-ee)){if(A){for(;ee0;Me--)U.push(C(ee)*Me);for(ee=0;U[ee]$;re--);U=U.slice(ee,re)}return U},I.copy=function(){return vA(h.copy(),g,A,q)},uA(I,h)}var vie={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return hA(e.scale.linear(),1,[0,1])};function hA(h,g,A){var q=Wd(g),L=Wd(1/g);function C(I){return h(q(I))}return C.invert=function(I){return L(h.invert(I))},C.domain=function(I){return arguments.length?(h.domain((A=I.map(Number)).map(q)),C):A},C.ticks=function(I){return U3(A,I)},C.tickFormat=function(I,F){return d3_scale_linearTickFormat(A,I,F)},C.nice=function(I){return C.domain(fA(A,I))},C.exponent=function(I){return arguments.length?(q=Wd(g=I),L=Wd(1/g),h.domain(A.map(q)),C):g},C.copy=function(){return hA(h.copy(),g,A)},uA(C,h)}function Wd(h){return function(g){return g<0?-Math.pow(-g,h):Math.pow(g,h)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return dA([],{t:"range",a:[[]]})};function dA(h,g){var A,q,L;function C(F){return q[((A.get(F)||(g.t==="range"?A.set(F,h.push(F)):NaN))-1)%q.length]}function I(F,U){return e.range(h.length).map(function(J){return F+U*J})}return C.domain=function(F){if(!arguments.length)return h;h=[],A=new b;for(var U=-1,J=F.length,$;++U0?A[C-1]:h[0],Cre?0:1;if($=hr)return U($,Me)+(J?U(J,1-Me):"")+"Z";var ae,ce,ge,Ae,ke=0,xe=0,Ve,nr,fr,or,dr,pr,Er,mr,kr=[];if((Ae=(+I.apply(this,arguments)||0)/2)&&(ge=q===jd?Math.sqrt(J*J+$*$):+q.apply(this,arguments),Me||(xe*=-1),$&&(xe=Dt(ge/$*Math.sin(Ae))),J&&(ke=Dt(ge/J*Math.sin(Ae)))),$){Ve=$*Math.cos(ee+xe),nr=$*Math.sin(ee+xe),fr=$*Math.cos(re-xe),or=$*Math.sin(re-xe);var rt=Math.abs(re-ee-2*xe)<=qe?0:1;if(xe&&Zd(Ve,nr,fr,or)===Me^rt){var Jt=(ee+re)/2;Ve=$*Math.cos(Jt),nr=$*Math.sin(Jt),fr=or=null}}else Ve=nr=0;if(J){dr=J*Math.cos(re-ke),pr=J*Math.sin(re-ke),Er=J*Math.cos(ee+ke),mr=J*Math.sin(ee+ke);var yt=Math.abs(ee-re+2*ke)<=qe?0:1;if(ke&&Zd(dr,pr,Er,mr)===1-Me^yt){var tr=(ee+re)/2;dr=J*Math.cos(tr),pr=J*Math.sin(tr),Er=mr=null}}else dr=pr=0;if(_e>ve&&(ae=Math.min(Math.abs($-J)/2,+A.apply(this,arguments)))>.001){ce=J<$^Me?0:1;var Dr=ae,Rr=ae;if(_e0?0:1}function Xd(h,g,A,q,L){var C=h[0]-g[0],I=h[1]-g[1],F=(L?q:-q)/Math.sqrt(C*C+I*I),U=F*I,J=-F*C,$=h[0]+U,ee=h[1]+J,re=g[0]+U,_e=g[1]+J,Me=($+re)/2,ae=(ee+_e)/2,ce=re-$,ge=_e-ee,Ae=ce*ce+ge*ge,ke=A-q,xe=$*_e-re*ee,Ve=(ge<0?-1:1)*Math.sqrt(Math.max(0,ke*ke*Ae-xe*xe)),nr=(xe*ge-ce*Ve)/Ae,fr=(-xe*ce-ge*Ve)/Ae,or=(xe*ge+ce*Ve)/Ae,dr=(-xe*ce+ge*Ve)/Ae,pr=nr-Me,Er=fr-ae,mr=or-Me,kr=dr-ae;return pr*pr+Er*Er>mr*mr+kr*kr&&(nr=or,fr=dr),[[nr-U,fr-J],[nr*A/ke,fr*A/ke]]}function _A(){return!0}function wA(h){var g=hf,A=Dv,q=_A,L=Wi,C=L.key,I=.7;function F(U){var J=[],$=[],ee=-1,re=U.length,_e,Me=Br(g),ae=Br(A);function ce(){J.push("M",L(h($),I))}for(;++ee1?h.join("L"):h+"Z"}function TA(h){return h.join("L")+"Z"}function _ie(h){for(var g=0,A=h.length,q=h[0],L=[q[0],",",q[1]];++g1&&L.push("H",q[0]),L.join("")}function Y3(h){for(var g=0,A=h.length,q=h[0],L=[q[0],",",q[1]];++g1){F=g[1],C=h[U],U++,q+="C"+(L[0]+I[0])+","+(L[1]+I[1])+","+(C[0]-F[0])+","+(C[1]-F[1])+","+C[0]+","+C[1];for(var J=2;J9&&(C=A*3/Math.sqrt(C),I[F]=C*q,I[F+1]=C*L));for(F=-1;++F<=U;)C=(h[Math.min(U,F+1)][0]-h[Math.max(0,F-1)][0])/(6*(1+I[F]*I[F])),g.push([C||0,I[F]*C||0]);return g}function Cie(h){return h.length<3?Wi(h):h[0]+Jd(h,Lie(h))}e.svg.line.radial=function(){var h=wA(SA);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function SA(h){for(var g,A=-1,q=h.length,L,C;++Aqe)+",1 "+ee}function J($,ee,re,_e){return"Q 0,0 "+_e}return C.radius=function($){return arguments.length?(A=Br($),C):A},C.source=function($){return arguments.length?(h=Br($),C):h},C.target=function($){return arguments.length?(g=Br($),C):g},C.startAngle=function($){return arguments.length?(q=Br($),C):q},C.endAngle=function($){return arguments.length?(L=Br($),C):L},C};function Eie(h){return h.radius}e.svg.diagonal=function(){var h=LA,g=CA,A=EA;function q(L,C){var I=h.call(this,L,C),F=g.call(this,L,C),U=(I.y+F.y)/2,J=[I,{x:I.x,y:U},{x:F.x,y:U},F];return J=J.map(A),"M"+J[0]+"C"+J[1]+" "+J[2]+" "+J[3]}return q.source=function(L){return arguments.length?(h=Br(L),q):h},q.target=function(L){return arguments.length?(g=Br(L),q):g},q.projection=function(L){return arguments.length?(A=L,q):A},q};function EA(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),g=EA,A=h.projection;return h.projection=function(q){return arguments.length?A(Die(g=q)):g},h};function Die(h){return function(){var g=h.apply(this,arguments),A=g[0],q=g[1]-ur;return[A*Math.cos(q),A*Math.sin(q)]}}e.svg.symbol=function(){var h=Rie,g=Pie;function A(q,L){return(PA.get(h.call(this,q,L))||DA)(g.call(this,q,L))}return A.type=function(q){return arguments.length?(h=Br(q),A):h},A.size=function(q){return arguments.length?(g=Br(q),A):g},A};function Pie(){return 64}function Rie(){return"circle"}function DA(h){var g=Math.sqrt(h/qe);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var PA=e.map({circle:DA,cross:function(h){var g=Math.sqrt(h/5)/2;return"M"+-3*g+","+-g+"H"+-g+"V"+-3*g+"H"+g+"V"+-g+"H"+3*g+"V"+g+"H"+g+"V"+3*g+"H"+-g+"V"+g+"H"+-3*g+"Z"},diamond:function(h){var g=Math.sqrt(h/(2*RA)),A=g*RA;return"M0,"+-g+"L"+A+",0 0,"+g+" "+-A+",0Z"},square:function(h){var g=Math.sqrt(h)/2;return"M"+-g+","+-g+"L"+g+","+-g+" "+g+","+g+" "+-g+","+g+"Z"},"triangle-down":function(h){var g=Math.sqrt(h/$d),A=g*$d/2;return"M0,"+A+"L"+g+","+-A+" "+-g+","+-A+"Z"},"triangle-up":function(h){var g=Math.sqrt(h/$d),A=g*$d/2;return"M0,"+-A+"L"+g+","+A+" "+-g+","+A+"Z"}});e.svg.symbolTypes=PA.keys();var $d=Math.sqrt(3),RA=Math.tan(30*Ar);de.transition=function(h){for(var g=Hs||++NA,A=J3(h),q=[],L,C,I=Qd||{time:Date.now(),ease:vne,delay:0,duration:250},F=-1,U=this.length;++F0;)ee[--Ae].call(h,ge);if(ce>=1)return I.event&&I.event.end.call(h,h.__data__,g),--C.count?delete C[q]:delete h[A],1}I||(F=L.time,U=zd(re,0,F),I=C[q]={tween:new b,time:F,timer:U,delay:L.delay,duration:L.duration,ease:L.ease,index:g},L=null,++C.count)}e.svg.axis=function(){var h=e.scale.linear(),g=zA,A=6,q=6,L=3,C=[10],I=null,F;function U(J){J.each(function(){var $=e.select(this),ee=this.__chart__||h,re=this.__chart__=h.copy(),_e=I==null?re.ticks?re.ticks.apply(re,C):re.domain():I,Me=F==null?re.tickFormat?re.tickFormat.apply(re,C):H:F,ae=$.selectAll(".tick").data(_e,re),ce=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",ve),ge=e.transition(ae.exit()).style("opacity",ve).remove(),Ae=e.transition(ae.order()).style("opacity",1),ke=Math.max(A,0)+L,xe,Ve=Vd(re),nr=$.selectAll(".domain").data([0]),fr=(nr.enter().append("path").attr("class","domain"),e.transition(nr));ce.append("line"),ce.append("text");var or=ce.select("line"),dr=Ae.select("line"),pr=ae.select("text").text(Me),Er=ce.select("text"),mr=Ae.select("text"),kr=g==="top"||g==="left"?-1:1,rt,Jt,yt,tr;if(g==="bottom"||g==="top"?(xe=zie,rt="x",yt="y",Jt="x2",tr="y2",pr.attr("dy",kr<0?"0em":".71em").style("text-anchor","middle"),fr.attr("d","M"+Ve[0]+","+kr*q+"V0H"+Ve[1]+"V"+kr*q)):(xe=Iie,rt="y",yt="x",Jt="y2",tr="x2",pr.attr("dy",".32em").style("text-anchor",kr<0?"end":"start"),fr.attr("d","M"+kr*q+","+Ve[0]+"H0V"+Ve[1]+"H"+kr*q)),or.attr(tr,kr*A),Er.attr(yt,kr*ke),dr.attr(Jt,0).attr(tr,kr*A),mr.attr(rt,0).attr(yt,kr*ke),re.rangeBand){var Dr=re,Rr=Dr.rangeBand()/2;ee=re=function(tt){return Dr(tt)+Rr}}else ee.rangeBand?ee=re:ge.call(xe,re,ee);ce.call(xe,ee,re),Ae.call(xe,re,re)})}return U.scale=function(J){return arguments.length?(h=J,U):h},U.orient=function(J){return arguments.length?(g=J in Nie?J+"":zA,U):g},U.ticks=function(){return arguments.length?(C=t(arguments),U):C},U.tickValues=function(J){return arguments.length?(I=J,U):I},U.tickFormat=function(J){return arguments.length?(F=J,U):F},U.tickSize=function(J){var $=arguments.length;return $?(A=+J,q=+arguments[$-1],U):A},U.innerTickSize=function(J){return arguments.length?(A=+J,U):A},U.outerTickSize=function(J){return arguments.length?(q=+J,U):q},U.tickPadding=function(J){return arguments.length?(L=+J,U):L},U.tickSubdivide=function(){return arguments.length&&U},U};var zA="bottom",Nie={top:1,right:1,bottom:1,left:1};function zie(h,g,A){h.attr("transform",function(q){var L=g(q);return"translate("+(isFinite(L)?L:A(q))+",0)"})}function Iie(h,g,A){h.attr("transform",function(q){var L=g(q);return"translate(0,"+(isFinite(L)?L:A(q))+")"})}e.svg.brush=function(){var h=le($,"brushstart","brush","brushend"),g=null,A=null,q=[0,0],L=[0,0],C,I,F=!0,U=!0,J=$3[0];function $(ae){ae.each(function(){var ce=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Me).on("touchstart.brush",Me),ge=ce.selectAll(".background").data([0]);ge.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),ce.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ae=ce.selectAll(".resize").data(J,H);Ae.exit().remove(),Ae.enter().append("g").attr("class",function(nr){return"resize "+nr}).style("cursor",function(nr){return Oie[nr]}).append("rect").attr("x",function(nr){return/[ew]$/.test(nr)?-3:null}).attr("y",function(nr){return/^[ns]/.test(nr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ae.style("display",$.empty()?"none":null);var ke=e.transition(ce),xe=e.transition(ge),Ve;g&&(Ve=Vd(g),xe.attr("x",Ve[0]).attr("width",Ve[1]-Ve[0]),re(ke)),A&&(Ve=Vd(A),xe.attr("y",Ve[0]).attr("height",Ve[1]-Ve[0]),_e(ke)),ee(ke)})}$.event=function(ae){ae.each(function(){var ce=h.of(this,arguments),ge={x:q,y:L,i:C,j:I},Ae=this.__chart__||ge;this.__chart__=ge,Hs?e.select(this).transition().each("start.brush",function(){C=Ae.i,I=Ae.j,q=Ae.x,L=Ae.y,ce({type:"brushstart"})}).tween("brush:brush",function(){var ke=Gd(q,ge.x),xe=Gd(L,ge.y);return C=I=null,function(Ve){q=ge.x=ke(Ve),L=ge.y=xe(Ve),ce({type:"brush",mode:"resize"})}}).each("end.brush",function(){C=ge.i,I=ge.j,ce({type:"brush",mode:"resize"}),ce({type:"brushend"})}):(ce({type:"brushstart"}),ce({type:"brush",mode:"resize"}),ce({type:"brushend"}))})};function ee(ae){ae.selectAll(".resize").attr("transform",function(ce){return"translate("+q[+/e$/.test(ce)]+","+L[+/^s/.test(ce)]+")"})}function re(ae){ae.select(".extent").attr("x",q[0]),ae.selectAll(".extent,.n>rect,.s>rect").attr("width",q[1]-q[0])}function _e(ae){ae.select(".extent").attr("y",L[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",L[1]-L[0])}function Me(){var ae=this,ce=e.select(e.event.target),ge=h.of(ae,arguments),Ae=e.select(ae),ke=ce.datum(),xe=!/^(n|s)$/.test(ke)&&g,Ve=!/^(e|w)$/.test(ke)&&A,nr=ce.classed("extent"),fr=cr(ae),or,dr=e.mouse(ae),pr,Er=e.select(i(ae)).on("keydown.brush",rt).on("keyup.brush",Jt);if(e.event.changedTouches?Er.on("touchmove.brush",yt).on("touchend.brush",Dr):Er.on("mousemove.brush",yt).on("mouseup.brush",Dr),Ae.interrupt().selectAll("*").interrupt(),nr)dr[0]=q[0]-dr[0],dr[1]=L[0]-dr[1];else if(ke){var mr=+/w$/.test(ke),kr=+/^n/.test(ke);pr=[q[1-mr]-dr[0],L[1-kr]-dr[1]],dr[0]=q[mr],dr[1]=L[kr]}else e.event.altKey&&(or=dr.slice());Ae.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",ce.style("cursor")),ge({type:"brushstart"}),yt();function rt(){e.event.keyCode==32&&(nr||(or=null,dr[0]-=q[1],dr[1]-=L[1],nr=2),te())}function Jt(){e.event.keyCode==32&&nr==2&&(dr[0]+=q[1],dr[1]+=L[1],nr=0,te())}function yt(){var Rr=e.mouse(ae),tt=!1;pr&&(Rr[0]+=pr[0],Rr[1]+=pr[1]),nr||(e.event.altKey?(or||(or=[(q[0]+q[1])/2,(L[0]+L[1])/2]),dr[0]=q[+(Rr[0]{(function(e,r){typeof ip=="object"&&typeof YA!="undefined"?r(ip):(e=e||self,r(e.d3=e.d3||{}))})(ip,function(e){"use strict";var r=new Date,t=new Date;function a(se,Te,Se,ir){function Qe(Le){return se(Le=arguments.length===0?new Date:new Date(+Le)),Le}return Qe.floor=function(Le){return se(Le=new Date(+Le)),Le},Qe.ceil=function(Le){return se(Le=new Date(Le-1)),Te(Le,1),se(Le),Le},Qe.round=function(Le){var Ce=Qe(Le),Ge=Qe.ceil(Le);return Le-Ce0))return Ze;do Ze.push(Ye=new Date(+Le)),Te(Le,Ge),se(Le);while(Ye=Ce)for(;se(Ce),!Le(Ce);)Ce.setTime(Ce-1)},function(Ce,Ge){if(Ce>=Ce)if(Ge<0)for(;++Ge<=0;)for(;Te(Ce,-1),!Le(Ce););else for(;--Ge>=0;)for(;Te(Ce,1),!Le(Ce););})},Se&&(Qe.count=function(Le,Ce){return r.setTime(+Le),t.setTime(+Ce),se(r),se(t),Math.floor(Se(r,t))},Qe.every=function(Le){return Le=Math.floor(Le),!isFinite(Le)||!(Le>0)?null:Le>1?Qe.filter(ir?function(Ce){return ir(Ce)%Le===0}:function(Ce){return Qe.count(0,Ce)%Le===0}):Qe}),Qe}var n=a(function(){},function(se,Te){se.setTime(+se+Te)},function(se,Te){return Te-se});n.every=function(se){return se=Math.floor(se),!isFinite(se)||!(se>0)?null:se>1?a(function(Te){Te.setTime(Math.floor(Te/se)*se)},function(Te,Se){Te.setTime(+Te+Se*se)},function(Te,Se){return(Se-Te)/se}):n};var i=n.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,c=a(function(se){se.setTime(se-se.getMilliseconds())},function(se,Te){se.setTime(+se+Te*o)},function(se,Te){return(Te-se)/o},function(se){return se.getUTCSeconds()}),v=c.range,d=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o)},function(se,Te){se.setTime(+se+Te*l)},function(se,Te){return(Te-se)/l},function(se){return se.getMinutes()}),p=d.range,m=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o-se.getMinutes()*l)},function(se,Te){se.setTime(+se+Te*s)},function(se,Te){return(Te-se)/s},function(se){return se.getHours()}),y=m.range,x=a(function(se){se.setHours(0,0,0,0)},function(se,Te){se.setDate(se.getDate()+Te)},function(se,Te){return(Te-se-(Te.getTimezoneOffset()-se.getTimezoneOffset())*l)/u},function(se){return se.getDate()-1}),_=x.range;function w(se){return a(function(Te){Te.setDate(Te.getDate()-(Te.getDay()+7-se)%7),Te.setHours(0,0,0,0)},function(Te,Se){Te.setDate(Te.getDate()+Se*7)},function(Te,Se){return(Se-Te-(Se.getTimezoneOffset()-Te.getTimezoneOffset())*l)/f})}var b=w(0),T=w(1),k=w(2),M=w(3),S=w(4),E=w(5),P=w(6),R=b.range,D=T.range,z=k.range,O=M.range,H=S.range,Y=E.range,G=P.range,B=a(function(se){se.setDate(1),se.setHours(0,0,0,0)},function(se,Te){se.setMonth(se.getMonth()+Te)},function(se,Te){return Te.getMonth()-se.getMonth()+(Te.getFullYear()-se.getFullYear())*12},function(se){return se.getMonth()}),V=B.range,X=a(function(se){se.setMonth(0,1),se.setHours(0,0,0,0)},function(se,Te){se.setFullYear(se.getFullYear()+Te)},function(se,Te){return Te.getFullYear()-se.getFullYear()},function(se){return se.getFullYear()});X.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Te){Te.setFullYear(Math.floor(Te.getFullYear()/se)*se),Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,Se){Te.setFullYear(Te.getFullYear()+Se*se)})};var Z=X.range,te=a(function(se){se.setUTCSeconds(0,0)},function(se,Te){se.setTime(+se+Te*l)},function(se,Te){return(Te-se)/l},function(se){return se.getUTCMinutes()}),fe=te.range,le=a(function(se){se.setUTCMinutes(0,0,0)},function(se,Te){se.setTime(+se+Te*s)},function(se,Te){return(Te-se)/s},function(se){return se.getUTCHours()}),ie=le.range,K=a(function(se){se.setUTCHours(0,0,0,0)},function(se,Te){se.setUTCDate(se.getUTCDate()+Te)},function(se,Te){return(Te-se)/u},function(se){return se.getUTCDate()-1}),he=K.range;function oe(se){return a(function(Te){Te.setUTCDate(Te.getUTCDate()-(Te.getUTCDay()+7-se)%7),Te.setUTCHours(0,0,0,0)},function(Te,Se){Te.setUTCDate(Te.getUTCDate()+Se*7)},function(Te,Se){return(Se-Te)/f})}var ye=oe(0),ue=oe(1),de=oe(2),W=oe(3),Q=oe(4),j=oe(5),pe=oe(6),me=ye.range,we=ue.range,Ne=de.range,Fe=W.range,Re=Q.range,Ie=j.range,Be=pe.range,ze=a(function(se){se.setUTCDate(1),se.setUTCHours(0,0,0,0)},function(se,Te){se.setUTCMonth(se.getUTCMonth()+Te)},function(se,Te){return Te.getUTCMonth()-se.getUTCMonth()+(Te.getUTCFullYear()-se.getUTCFullYear())*12},function(se){return se.getUTCMonth()}),Pe=ze.range,Xe=a(function(se){se.setUTCMonth(0,1),se.setUTCHours(0,0,0,0)},function(se,Te){se.setUTCFullYear(se.getUTCFullYear()+Te)},function(se,Te){return Te.getUTCFullYear()-se.getUTCFullYear()},function(se){return se.getUTCFullYear()});Xe.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Te){Te.setUTCFullYear(Math.floor(Te.getUTCFullYear()/se)*se),Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,Se){Te.setUTCFullYear(Te.getUTCFullYear()+Se*se)})};var Ue=Xe.range;e.timeDay=x,e.timeDays=_,e.timeFriday=E,e.timeFridays=Y,e.timeHour=m,e.timeHours=y,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=T,e.timeMondays=D,e.timeMonth=B,e.timeMonths=V,e.timeSaturday=P,e.timeSaturdays=G,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=b,e.timeSundays=R,e.timeThursday=S,e.timeThursdays=H,e.timeTuesday=k,e.timeTuesdays=z,e.timeWednesday=M,e.timeWednesdays=O,e.timeWeek=b,e.timeWeeks=R,e.timeYear=X,e.timeYears=Z,e.utcDay=K,e.utcDays=he,e.utcFriday=j,e.utcFridays=Ie,e.utcHour=le,e.utcHours=ie,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=te,e.utcMinutes=fe,e.utcMonday=ue,e.utcMondays=we,e.utcMonth=ze,e.utcMonths=Pe,e.utcSaturday=pe,e.utcSaturdays=Be,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=ye,e.utcSundays=me,e.utcThursday=Q,e.utcThursdays=Re,e.utcTuesday=de,e.utcTuesdays=Ne,e.utcWednesday=W,e.utcWednesdays=Fe,e.utcWeek=ye,e.utcWeeks=me,e.utcYear=Xe,e.utcYears=Ue,Object.defineProperty(e,"__esModule",{value:!0})})});var xf=N((op,VA)=>{(function(e,r){typeof op=="object"&&typeof VA!="undefined"?r(op,K3()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(op,function(e,r){"use strict";function t(ne){if(0<=ne.y&&ne.y<100){var ve=new Date(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L);return ve.setFullYear(ne.y),ve}return new Date(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L)}function a(ne){if(0<=ne.y&&ne.y<100){var ve=new Date(Date.UTC(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L));return ve.setUTCFullYear(ne.y),ve}return new Date(Date.UTC(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L))}function n(ne,ve,De){return{y:ne,m:ve,d:De,H:0,M:0,S:0,L:0}}function i(ne){var ve=ne.dateTime,De=ne.date,qe=ne.time,ar=ne.periods,hr=ne.days,ur=ne.shortDays,Ar=ne.months,Wr=ne.shortMonths,Vr=v(ar),zr=d(ar),Et=v(hr),Dt=d(hr),ma=v(ur),St=d(ur),ja=v(Ar),ga=d(Ar),jt=v(Wr),Na=d(Wr),br={a:Ko,A:Qo,b:vt,B:An,c:null,d:B,e:B,f:fe,H:V,I:X,j:Z,L:te,m:le,M:ie,p:Rt,q:zs,Q:Ce,s:Ge,S:K,u:he,U:oe,V:ye,w:ue,W:de,x:null,X:null,y:W,Y:Q,Z:j,"%":Le},pt={a:pn,A:Gi,b:Ut,B:Yi,c:null,d:pe,e:pe,f:Re,H:me,I:we,j:Ne,L:Fe,m:Ie,M:Be,p:Pl,q:Rl,Q:Ce,s:Ge,S:ze,u:Pe,U:Xe,V:Ue,w:se,W:Te,x:null,X:null,y:Se,Y:ir,Z:Qe,"%":Le},Nr={a:ba,A:Zt,b:tn,B:Tn,c:Xt,d:S,e:S,f:O,H:P,I:P,j:E,L:z,m:M,M:R,p:ct,q:k,Q:Y,s:G,S:D,u:m,U:y,V:x,w:p,W:_,x:ft,X:xa,y:b,Y:w,Z:T,"%":H};br.x=ut(De,br),br.X=ut(qe,br),br.c=ut(ve,br),pt.x=ut(De,pt),pt.X=ut(qe,pt),pt.c=ut(ve,pt);function ut(yr,$r){return function(ht){var sr=[],za=-1,Tt=0,Ia=yr.length,Br,Vi,Is;for(ht instanceof Date||(ht=new Date(+ht));++za53)return null;"w"in sr||(sr.w=1),"Z"in sr?(Tt=a(n(sr.y,0,1)),Ia=Tt.getUTCDay(),Tt=Ia>4||Ia===0?r.utcMonday.ceil(Tt):r.utcMonday(Tt),Tt=r.utcDay.offset(Tt,(sr.V-1)*7),sr.y=Tt.getUTCFullYear(),sr.m=Tt.getUTCMonth(),sr.d=Tt.getUTCDate()+(sr.w+6)%7):(Tt=t(n(sr.y,0,1)),Ia=Tt.getDay(),Tt=Ia>4||Ia===0?r.timeMonday.ceil(Tt):r.timeMonday(Tt),Tt=r.timeDay.offset(Tt,(sr.V-1)*7),sr.y=Tt.getFullYear(),sr.m=Tt.getMonth(),sr.d=Tt.getDate()+(sr.w+6)%7)}else("W"in sr||"U"in sr)&&("w"in sr||(sr.w="u"in sr?sr.u%7:"W"in sr?1:0),Ia="Z"in sr?a(n(sr.y,0,1)).getUTCDay():t(n(sr.y,0,1)).getDay(),sr.m=0,sr.d="W"in sr?(sr.w+6)%7+sr.W*7-(Ia+5)%7:sr.w+sr.U*7-(Ia+6)%7);return"Z"in sr?(sr.H+=sr.Z/100|0,sr.M+=sr.Z%100,a(sr)):t(sr)}}function Qr(yr,$r,ht,sr){for(var za=0,Tt=$r.length,Ia=ht.length,Br,Vi;za=Ia)return-1;if(Br=$r.charCodeAt(za++),Br===37){if(Br=$r.charAt(za++),Vi=Nr[Br in o?$r.charAt(za++):Br],!Vi||(sr=Vi(yr,ht,sr))<0)return-1}else if(Br!=ht.charCodeAt(sr++))return-1}return sr}function ct(yr,$r,ht){var sr=Vr.exec($r.slice(ht));return sr?(yr.p=zr[sr[0].toLowerCase()],ht+sr[0].length):-1}function ba(yr,$r,ht){var sr=ma.exec($r.slice(ht));return sr?(yr.w=St[sr[0].toLowerCase()],ht+sr[0].length):-1}function Zt(yr,$r,ht){var sr=Et.exec($r.slice(ht));return sr?(yr.w=Dt[sr[0].toLowerCase()],ht+sr[0].length):-1}function tn(yr,$r,ht){var sr=jt.exec($r.slice(ht));return sr?(yr.m=Na[sr[0].toLowerCase()],ht+sr[0].length):-1}function Tn(yr,$r,ht){var sr=ja.exec($r.slice(ht));return sr?(yr.m=ga[sr[0].toLowerCase()],ht+sr[0].length):-1}function Xt(yr,$r,ht){return Qr(yr,ve,$r,ht)}function ft(yr,$r,ht){return Qr(yr,De,$r,ht)}function xa(yr,$r,ht){return Qr(yr,qe,$r,ht)}function Ko(yr){return ur[yr.getDay()]}function Qo(yr){return hr[yr.getDay()]}function vt(yr){return Wr[yr.getMonth()]}function An(yr){return Ar[yr.getMonth()]}function Rt(yr){return ar[+(yr.getHours()>=12)]}function zs(yr){return 1+~~(yr.getMonth()/3)}function pn(yr){return ur[yr.getUTCDay()]}function Gi(yr){return hr[yr.getUTCDay()]}function Ut(yr){return Wr[yr.getUTCMonth()]}function Yi(yr){return Ar[yr.getUTCMonth()]}function Pl(yr){return ar[+(yr.getUTCHours()>=12)]}function Rl(yr){return 1+~~(yr.getUTCMonth()/3)}return{format:function(yr){var $r=ut(yr+="",br);return $r.toString=function(){return yr},$r},parse:function(yr){var $r=Pt(yr+="",!1);return $r.toString=function(){return yr},$r},utcFormat:function(yr){var $r=ut(yr+="",pt);return $r.toString=function(){return yr},$r},utcParse:function(yr){var $r=Pt(yr+="",!0);return $r.toString=function(){return yr},$r}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,ve,De){var qe=ne<0?"-":"",ar=(qe?-ne:ne)+"",hr=ar.length;return qe+(hr68?1900:2e3),De+qe[0].length):-1}function T(ne,ve,De){var qe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ve.slice(De,De+6));return qe?(ne.Z=qe[1]?0:-(qe[2]+(qe[3]||"00")),De+qe[0].length):-1}function k(ne,ve,De){var qe=l.exec(ve.slice(De,De+1));return qe?(ne.q=qe[0]*3-3,De+qe[0].length):-1}function M(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.m=qe[0]-1,De+qe[0].length):-1}function S(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.d=+qe[0],De+qe[0].length):-1}function E(ne,ve,De){var qe=l.exec(ve.slice(De,De+3));return qe?(ne.m=0,ne.d=+qe[0],De+qe[0].length):-1}function P(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.H=+qe[0],De+qe[0].length):-1}function R(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.M=+qe[0],De+qe[0].length):-1}function D(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.S=+qe[0],De+qe[0].length):-1}function z(ne,ve,De){var qe=l.exec(ve.slice(De,De+3));return qe?(ne.L=+qe[0],De+qe[0].length):-1}function O(ne,ve,De){var qe=l.exec(ve.slice(De,De+6));return qe?(ne.L=Math.floor(qe[0]/1e3),De+qe[0].length):-1}function H(ne,ve,De){var qe=s.exec(ve.slice(De,De+1));return qe?De+qe[0].length:-1}function Y(ne,ve,De){var qe=l.exec(ve.slice(De));return qe?(ne.Q=+qe[0],De+qe[0].length):-1}function G(ne,ve,De){var qe=l.exec(ve.slice(De));return qe?(ne.s=+qe[0],De+qe[0].length):-1}function B(ne,ve){return f(ne.getDate(),ve,2)}function V(ne,ve){return f(ne.getHours(),ve,2)}function X(ne,ve){return f(ne.getHours()%12||12,ve,2)}function Z(ne,ve){return f(1+r.timeDay.count(r.timeYear(ne),ne),ve,3)}function te(ne,ve){return f(ne.getMilliseconds(),ve,3)}function fe(ne,ve){return te(ne,ve)+"000"}function le(ne,ve){return f(ne.getMonth()+1,ve,2)}function ie(ne,ve){return f(ne.getMinutes(),ve,2)}function K(ne,ve){return f(ne.getSeconds(),ve,2)}function he(ne){var ve=ne.getDay();return ve===0?7:ve}function oe(ne,ve){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),ve,2)}function ye(ne,ve){var De=ne.getDay();return ne=De>=4||De===0?r.timeThursday(ne):r.timeThursday.ceil(ne),f(r.timeThursday.count(r.timeYear(ne),ne)+(r.timeYear(ne).getDay()===4),ve,2)}function ue(ne){return ne.getDay()}function de(ne,ve){return f(r.timeMonday.count(r.timeYear(ne)-1,ne),ve,2)}function W(ne,ve){return f(ne.getFullYear()%100,ve,2)}function Q(ne,ve){return f(ne.getFullYear()%1e4,ve,4)}function j(ne){var ve=ne.getTimezoneOffset();return(ve>0?"-":(ve*=-1,"+"))+f(ve/60|0,"0",2)+f(ve%60,"0",2)}function pe(ne,ve){return f(ne.getUTCDate(),ve,2)}function me(ne,ve){return f(ne.getUTCHours(),ve,2)}function we(ne,ve){return f(ne.getUTCHours()%12||12,ve,2)}function Ne(ne,ve){return f(1+r.utcDay.count(r.utcYear(ne),ne),ve,3)}function Fe(ne,ve){return f(ne.getUTCMilliseconds(),ve,3)}function Re(ne,ve){return Fe(ne,ve)+"000"}function Ie(ne,ve){return f(ne.getUTCMonth()+1,ve,2)}function Be(ne,ve){return f(ne.getUTCMinutes(),ve,2)}function ze(ne,ve){return f(ne.getUTCSeconds(),ve,2)}function Pe(ne){var ve=ne.getUTCDay();return ve===0?7:ve}function Xe(ne,ve){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),ve,2)}function Ue(ne,ve){var De=ne.getUTCDay();return ne=De>=4||De===0?r.utcThursday(ne):r.utcThursday.ceil(ne),f(r.utcThursday.count(r.utcYear(ne),ne)+(r.utcYear(ne).getUTCDay()===4),ve,2)}function se(ne){return ne.getUTCDay()}function Te(ne,ve){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),ve,2)}function Se(ne,ve){return f(ne.getUTCFullYear()%100,ve,2)}function ir(ne,ve){return f(ne.getUTCFullYear()%1e4,ve,4)}function Qe(){return"+0000"}function Le(){return"%"}function Ce(ne){return+ne}function Ge(ne){return Math.floor(+ne/1e3)}var Ze;Ye({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ye(ne){return Ze=i(ne),e.timeFormat=Ze.format,e.timeParse=Ze.parse,e.utcFormat=Ze.utcFormat,e.utcParse=Ze.utcParse,Ze}var He="%Y-%m-%dT%H:%M:%S.%LZ";function $e(ne){return ne.toISOString()}var cr=Date.prototype.toISOString?$e:e.utcFormat(He);function lr(ne){var ve=new Date(ne);return isNaN(ve)?null:ve}var Oe=+new Date("2000-01-01T00:00:00.000Z")?lr:e.utcParse(He);e.isoFormat=cr,e.isoParse=Oe,e.timeFormatDefaultLocale=Ye,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var Q3=N((lp,WA)=>{(function(e,r){typeof lp=="object"&&typeof WA!="undefined"?r(lp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(lp,function(e){"use strict";function r(M){return Math.abs(M=Math.round(M))>=1e21?M.toLocaleString("en").replace(/,/g,""):M.toString(10)}function t(M,S){if((E=(M=S?M.toExponential(S-1):M.toExponential()).indexOf("e"))<0)return null;var E,P=M.slice(0,E);return[P.length>1?P[0]+P.slice(2):P,+M.slice(E+1)]}function a(M){return M=t(Math.abs(M)),M?M[1]:NaN}function n(M,S){return function(E,P){for(var R=E.length,D=[],z=0,O=M[0],H=0;R>0&&O>0&&(H+O+1>P&&(O=Math.max(1,P-H)),D.push(E.substring(R-=O,R+O)),!((H+=O+1)>P));)O=M[z=(z+1)%M.length];return D.reverse().join(S)}}function i(M){return function(S){return S.replace(/[0-9]/g,function(E){return M[+E]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(S=o.exec(M)))throw new Error("invalid format: "+M);var S;return new s({fill:S[1],align:S[2],sign:S[3],symbol:S[4],zero:S[5],width:S[6],comma:S[7],precision:S[8]&&S[8].slice(1),trim:S[9],type:S[10]})}l.prototype=s.prototype;function s(M){this.fill=M.fill===void 0?" ":M.fill+"",this.align=M.align===void 0?">":M.align+"",this.sign=M.sign===void 0?"-":M.sign+"",this.symbol=M.symbol===void 0?"":M.symbol+"",this.zero=!!M.zero,this.width=M.width===void 0?void 0:+M.width,this.comma=!!M.comma,this.precision=M.precision===void 0?void 0:+M.precision,this.trim=!!M.trim,this.type=M.type===void 0?"":M.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(M){e:for(var S=M.length,E=1,P=-1,R;E0&&(P=0);break}return P>0?M.slice(0,P)+M.slice(R+1):M}var f;function c(M,S){var E=t(M,S);if(!E)return M+"";var P=E[0],R=E[1],D=R-(f=Math.max(-8,Math.min(8,Math.floor(R/3)))*3)+1,z=P.length;return D===z?P:D>z?P+new Array(D-z+1).join("0"):D>0?P.slice(0,D)+"."+P.slice(D):"0."+new Array(1-D).join("0")+t(M,Math.max(0,S+D-1))[0]}function v(M,S){var E=t(M,S);if(!E)return M+"";var P=E[0],R=E[1];return R<0?"0."+new Array(-R).join("0")+P:P.length>R+1?P.slice(0,R+1)+"."+P.slice(R+1):P+new Array(R-P.length+2).join("0")}var d={"%":function(M,S){return(M*100).toFixed(S)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,S){return M.toExponential(S)},f:function(M,S){return M.toFixed(S)},g:function(M,S){return M.toPrecision(S)},o:function(M){return Math.round(M).toString(8)},p:function(M,S){return v(M*100,S)},r:v,s:c,X:function(M){return Math.round(M).toString(16).toUpperCase()},x:function(M){return Math.round(M).toString(16)}};function p(M){return M}var m=Array.prototype.map,y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function x(M){var S=M.grouping===void 0||M.thousands===void 0?p:n(m.call(M.grouping,Number),M.thousands+""),E=M.currency===void 0?"":M.currency[0]+"",P=M.currency===void 0?"":M.currency[1]+"",R=M.decimal===void 0?".":M.decimal+"",D=M.numerals===void 0?p:i(m.call(M.numerals,String)),z=M.percent===void 0?"%":M.percent+"",O=M.minus===void 0?"-":M.minus+"",H=M.nan===void 0?"NaN":M.nan+"";function Y(B){B=l(B);var V=B.fill,X=B.align,Z=B.sign,te=B.symbol,fe=B.zero,le=B.width,ie=B.comma,K=B.precision,he=B.trim,oe=B.type;oe==="n"?(ie=!0,oe="g"):d[oe]||(K===void 0&&(K=12),he=!0,oe="g"),(fe||V==="0"&&X==="=")&&(fe=!0,V="0",X="=");var ye=te==="$"?E:te==="#"&&/[boxX]/.test(oe)?"0"+oe.toLowerCase():"",ue=te==="$"?P:/[%p]/.test(oe)?z:"",de=d[oe],W=/[defgprs%]/.test(oe);K=K===void 0?6:/[gprs]/.test(oe)?Math.max(1,Math.min(21,K)):Math.max(0,Math.min(20,K));function Q(j){var pe=ye,me=ue,we,Ne,Fe;if(oe==="c")me=de(j)+me,j="";else{j=+j;var Re=j<0||1/j<0;if(j=isNaN(j)?H:de(Math.abs(j),K),he&&(j=u(j)),Re&&+j==0&&Z!=="+"&&(Re=!1),pe=(Re?Z==="("?Z:O:Z==="-"||Z==="("?"":Z)+pe,me=(oe==="s"?y[8+f/3]:"")+me+(Re&&Z==="("?")":""),W){for(we=-1,Ne=j.length;++weFe||Fe>57){me=(Fe===46?R+j.slice(we+1):j.slice(we))+me,j=j.slice(0,we);break}}}ie&&!fe&&(j=S(j,1/0));var Ie=pe.length+j.length+me.length,Be=Ie>1)+pe+j+me+Be.slice(Ie);break;default:j=Be+pe+j+me;break}return D(j)}return Q.toString=function(){return B+""},Q}function G(B,V){var X=Y((B=l(B),B.type="f",B)),Z=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,te=Math.pow(10,-Z),fe=y[8+Z/3];return function(le){return X(te*le)+fe}}return{format:Y,formatPrefix:G}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(M){return _=x(M),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function b(M){return Math.max(0,-a(Math.abs(M)))}function T(M,S){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(S)/3)))*3-a(Math.abs(M)))}function k(M,S){return M=Math.abs(M),S=Math.abs(S)-M,Math.max(0,a(S)-a(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=w,e.formatLocale=x,e.formatSpecifier=l,e.precisionFixed=b,e.precisionPrefix=T,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var ZA=N((aCe,jA)=>{"use strict";jA.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var Pr=N((nCe,XA)=>{"use strict";var Zie=ZA();XA.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&Zie(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Ft=N((iCe,JA)=>{"use strict";JA.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var eb=N((sp,$A)=>{(function(e,r){typeof sp=="object"&&typeof $A!="undefined"?r(sp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(sp,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(l[s]&3)<<4|l[s+1]>>4],f+=r[(l[s+1]&15)<<2|l[s+2]>>6],f+=r[l[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(o){var l=o.length*.75,s=o.length,u,f=0,c,v,d,p;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var m=new ArrayBuffer(l),y=new Uint8Array(m);for(u=0;u>4,y[f++]=(v&15)<<4|d>>2,y[f++]=(d&3)<<6|p&63;return m};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var zl=N((oCe,KA)=>{"use strict";KA.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var Wn=N(Zi=>{"use strict";var Xie=eb().decode,Jie=zl(),rb=Array.isArray,$ie=ArrayBuffer,Kie=DataView;function QA(e){return $ie.isView(e)&&!(e instanceof Kie)}Zi.isTypedArray=QA;function up(e){return rb(e)||QA(e)}Zi.isArrayOrTypedArray=up;function Qie(e){return!up(e[0])}Zi.isArray1D=Qie;Zi.ensureArray=function(e,r){return rb(e)||(e=[]),e.length=r,e};var qa={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};qa.uint8c=qa.u1c;qa.uint8=qa.u1;qa.int8=qa.i1;qa.uint16=qa.u2;qa.int16=qa.i2;qa.uint32=qa.u4;qa.int32=qa.i4;qa.float32=qa.f4;qa.float64=qa.f8;function tb(e){return e.constructor===ArrayBuffer}Zi.isArrayBuffer=tb;Zi.decodeTypedArraySpec=function(e){var r=[],t=eoe(e),a=t.dtype,n=qa[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;tb(o)||(o=Xie(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,u,f,c=+l[0],v=i*c,d=0;if(s===1)r=new n(o);else if(s===2)for(u=+l[1],f=0;f{"use strict";var rM=Pr(),nb=Wn().isArrayOrTypedArray;iM.exports=function(r,t){if(rM(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,o,l;for(l=0;l{"use strict";var _f=fp(),ioe=/^\w*$/,ooe=0,oM=1,cp=2,lM=3,Ys=4;sM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=_f(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|cp,c.set(v,null);if(f){for(i=d;i{"use strict";var loe=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,soe=/^[^\.\[\]]+$/;fM.exports=function(e,r){for(;r;){var t=e.match(loe);if(t)e=t[1];else if(e.match(soe))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var vp=N((cCe,vM)=>{"use strict";var uoe=Pr();vM.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return uoe(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var pM=N((vCe,dM)=>{"use strict";var hM=Wn().isArrayOrTypedArray,Hv=zl();dM.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(hM(n)&&hM(i)&&Hv(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function foe(e,r){var t=e%r;return t<0?t+r:t}function coe(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}yM.exports={mod:foe,modHalf:coe}});var Sn=N((dCe,hp)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,o=e.max,l=e.random;function s(W,Q){if(W=W||"",Q=Q||{},W instanceof s)return W;if(!(this instanceof s))return new s(W,Q);var j=u(W);this._originalInput=W,this._r=j.r,this._g=j.g,this._b=j.b,this._a=j.a,this._roundA=n(100*this._a)/100,this._format=Q.format||j.format,this._gradientType=Q.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=j.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var W=this.toRgb();return(W.r*299+W.g*587+W.b*114)/1e3},getLuminance:function(){var W=this.toRgb(),Q,j,pe,me,we,Ne;return Q=W.r/255,j=W.g/255,pe=W.b/255,Q<=.03928?me=Q/12.92:me=e.pow((Q+.055)/1.055,2.4),j<=.03928?we=j/12.92:we=e.pow((j+.055)/1.055,2.4),pe<=.03928?Ne=pe/12.92:Ne=e.pow((pe+.055)/1.055,2.4),.2126*me+.7152*we+.0722*Ne},setAlpha:function(W){return this._a=B(W),this._roundA=n(100*this._a)/100,this},toHsv:function(){var W=d(this._r,this._g,this._b);return{h:W.h*360,s:W.s,v:W.v,a:this._a}},toHsvString:function(){var W=d(this._r,this._g,this._b),Q=n(W.h*360),j=n(W.s*100),pe=n(W.v*100);return this._a==1?"hsv("+Q+", "+j+"%, "+pe+"%)":"hsva("+Q+", "+j+"%, "+pe+"%, "+this._roundA+")"},toHsl:function(){var W=c(this._r,this._g,this._b);return{h:W.h*360,s:W.s,l:W.l,a:this._a}},toHslString:function(){var W=c(this._r,this._g,this._b),Q=n(W.h*360),j=n(W.s*100),pe=n(W.l*100);return this._a==1?"hsl("+Q+", "+j+"%, "+pe+"%)":"hsla("+Q+", "+j+"%, "+pe+"%, "+this._roundA+")"},toHex:function(W){return m(this._r,this._g,this._b,W)},toHexString:function(W){return"#"+this.toHex(W)},toHex8:function(W){return y(this._r,this._g,this._b,this._a,W)},toHex8String:function(W){return"#"+this.toHex8(W)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(V(this._r,255)*100)+"%",g:n(V(this._g,255)*100)+"%",b:n(V(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%)":"rgba("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Y[m(this._r,this._g,this._b,!0)]||!1},toFilter:function(W){var Q="#"+x(this._r,this._g,this._b,this._a),j=Q,pe=this._gradientType?"GradientType = 1, ":"";if(W){var me=s(W);j="#"+x(me._r,me._g,me._b,me._a)}return"progid:DXImageTransform.Microsoft.gradient("+pe+"startColorstr="+Q+",endColorstr="+j+")"},toString:function(W){var Q=!!W;W=W||this._format;var j=!1,pe=this._a<1&&this._a>=0,me=!Q&&pe&&(W==="hex"||W==="hex6"||W==="hex3"||W==="hex4"||W==="hex8"||W==="name");return me?W==="name"&&this._a===0?this.toName():this.toRgbString():(W==="rgb"&&(j=this.toRgbString()),W==="prgb"&&(j=this.toPercentageRgbString()),(W==="hex"||W==="hex6")&&(j=this.toHexString()),W==="hex3"&&(j=this.toHexString(!0)),W==="hex4"&&(j=this.toHex8String(!0)),W==="hex8"&&(j=this.toHex8String()),W==="name"&&(j=this.toName()),W==="hsl"&&(j=this.toHslString()),W==="hsv"&&(j=this.toHsvString()),j||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(W,Q){var j=W.apply(null,[this].concat([].slice.call(Q)));return this._r=j._r,this._g=j._g,this._b=j._b,this.setAlpha(j._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(k,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(S,arguments)},_applyCombination:function(W,Q){return W.apply(null,[this].concat([].slice.call(Q)))},analogous:function(){return this._applyCombination(z,arguments)},complement:function(){return this._applyCombination(E,arguments)},monochromatic:function(){return this._applyCombination(O,arguments)},splitcomplement:function(){return this._applyCombination(D,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(R,arguments)}},s.fromRatio=function(W,Q){if(typeof W=="object"){var j={};for(var pe in W)W.hasOwnProperty(pe)&&(pe==="a"?j[pe]=W[pe]:j[pe]=ie(W[pe]));W=j}return s(W,Q)};function u(W){var Q={r:0,g:0,b:0},j=1,pe=null,me=null,we=null,Ne=!1,Fe=!1;return typeof W=="string"&&(W=ue(W)),typeof W=="object"&&(ye(W.r)&&ye(W.g)&&ye(W.b)?(Q=f(W.r,W.g,W.b),Ne=!0,Fe=String(W.r).substr(-1)==="%"?"prgb":"rgb"):ye(W.h)&&ye(W.s)&&ye(W.v)?(pe=ie(W.s),me=ie(W.v),Q=p(W.h,pe,me),Ne=!0,Fe="hsv"):ye(W.h)&&ye(W.s)&&ye(W.l)&&(pe=ie(W.s),we=ie(W.l),Q=v(W.h,pe,we),Ne=!0,Fe="hsl"),W.hasOwnProperty("a")&&(j=W.a)),j=B(j),{ok:Ne,format:W.format||Fe,r:i(255,o(Q.r,0)),g:i(255,o(Q.g,0)),b:i(255,o(Q.b,0)),a:j}}function f(W,Q,j){return{r:V(W,255)*255,g:V(Q,255)*255,b:V(j,255)*255}}function c(W,Q,j){W=V(W,255),Q=V(Q,255),j=V(j,255);var pe=o(W,Q,j),me=i(W,Q,j),we,Ne,Fe=(pe+me)/2;if(pe==me)we=Ne=0;else{var Re=pe-me;switch(Ne=Fe>.5?Re/(2-pe-me):Re/(pe+me),pe){case W:we=(Q-j)/Re+(Q1&&(ze-=1),ze<1/6?Ie+(Be-Ie)*6*ze:ze<1/2?Be:ze<2/3?Ie+(Be-Ie)*(2/3-ze)*6:Ie}if(Q===0)pe=me=we=j;else{var Fe=j<.5?j*(1+Q):j+Q-j*Q,Re=2*j-Fe;pe=Ne(Re,Fe,W+1/3),me=Ne(Re,Fe,W),we=Ne(Re,Fe,W-1/3)}return{r:pe*255,g:me*255,b:we*255}}function d(W,Q,j){W=V(W,255),Q=V(Q,255),j=V(j,255);var pe=o(W,Q,j),me=i(W,Q,j),we,Ne,Fe=pe,Re=pe-me;if(Ne=pe===0?0:Re/pe,pe==me)we=0;else{switch(pe){case W:we=(Q-j)/Re+(Q>1)+720)%360;--Q;)pe.h=(pe.h+me)%360,we.push(s(pe));return we}function O(W,Q){Q=Q||6;for(var j=s(W).toHsv(),pe=j.h,me=j.s,we=j.v,Ne=[],Fe=1/Q;Q--;)Ne.push(s({h:pe,s:me,v:we})),we=(we+Fe)%1;return Ne}s.mix=function(W,Q,j){j=j===0?0:j||50;var pe=s(W).toRgb(),me=s(Q).toRgb(),we=j/100,Ne={r:(me.r-pe.r)*we+pe.r,g:(me.g-pe.g)*we+pe.g,b:(me.b-pe.b)*we+pe.b,a:(me.a-pe.a)*we+pe.a};return s(Ne)},s.readability=function(W,Q){var j=s(W),pe=s(Q);return(e.max(j.getLuminance(),pe.getLuminance())+.05)/(e.min(j.getLuminance(),pe.getLuminance())+.05)},s.isReadable=function(W,Q,j){var pe=s.readability(W,Q),me,we;switch(we=!1,me=de(j),me.level+me.size){case"AAsmall":case"AAAlarge":we=pe>=4.5;break;case"AAlarge":we=pe>=3;break;case"AAAsmall":we=pe>=7;break}return we},s.mostReadable=function(W,Q,j){var pe=null,me=0,we,Ne,Fe,Re;j=j||{},Ne=j.includeFallbackColors,Fe=j.level,Re=j.size;for(var Ie=0;Ieme&&(me=we,pe=s(Q[Ie]));return s.isReadable(W,pe,{level:Fe,size:Re})||!Ne?pe:(j.includeFallbackColors=!1,s.mostReadable(W,["#fff","#000"],j))};var H=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Y=s.hexNames=G(H);function G(W){var Q={};for(var j in W)W.hasOwnProperty(j)&&(Q[W[j]]=j);return Q}function B(W){return W=parseFloat(W),(isNaN(W)||W<0||W>1)&&(W=1),W}function V(W,Q){te(W)&&(W="100%");var j=fe(W);return W=i(Q,o(0,parseFloat(W))),j&&(W=parseInt(W*Q,10)/100),e.abs(W-Q)<1e-6?1:W%Q/parseFloat(Q)}function X(W){return i(1,o(0,W))}function Z(W){return parseInt(W,16)}function te(W){return typeof W=="string"&&W.indexOf(".")!=-1&&parseFloat(W)===1}function fe(W){return typeof W=="string"&&W.indexOf("%")!=-1}function le(W){return W.length==1?"0"+W:""+W}function ie(W){return W<=1&&(W=W*100+"%"),W}function K(W){return e.round(parseFloat(W)*255).toString(16)}function he(W){return Z(W)/255}var oe=function(){var W="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",j="(?:"+Q+")|(?:"+W+")",pe="[\\s|\\(]+("+j+")[,|\\s]+("+j+")[,|\\s]+("+j+")\\s*\\)?",me="[\\s|\\(]+("+j+")[,|\\s]+("+j+")[,|\\s]+("+j+")[,|\\s]+("+j+")\\s*\\)?";return{CSS_UNIT:new RegExp(j),rgb:new RegExp("rgb"+pe),rgba:new RegExp("rgba"+me),hsl:new RegExp("hsl"+pe),hsla:new RegExp("hsla"+me),hsv:new RegExp("hsv"+pe),hsva:new RegExp("hsva"+me),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function ye(W){return!!oe.CSS_UNIT.exec(W)}function ue(W){W=W.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(H[W])W=H[W],Q=!0;else if(W=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var j;return(j=oe.rgb.exec(W))?{r:j[1],g:j[2],b:j[3]}:(j=oe.rgba.exec(W))?{r:j[1],g:j[2],b:j[3],a:j[4]}:(j=oe.hsl.exec(W))?{h:j[1],s:j[2],l:j[3]}:(j=oe.hsla.exec(W))?{h:j[1],s:j[2],l:j[3],a:j[4]}:(j=oe.hsv.exec(W))?{h:j[1],s:j[2],v:j[3]}:(j=oe.hsva.exec(W))?{h:j[1],s:j[2],v:j[3],a:j[4]}:(j=oe.hex8.exec(W))?{r:Z(j[1]),g:Z(j[2]),b:Z(j[3]),a:he(j[4]),format:Q?"name":"hex8"}:(j=oe.hex6.exec(W))?{r:Z(j[1]),g:Z(j[2]),b:Z(j[3]),format:Q?"name":"hex"}:(j=oe.hex4.exec(W))?{r:Z(j[1]+""+j[1]),g:Z(j[2]+""+j[2]),b:Z(j[3]+""+j[3]),a:he(j[4]+""+j[4]),format:Q?"name":"hex8"}:(j=oe.hex3.exec(W))?{r:Z(j[1]+""+j[1]),g:Z(j[2]+""+j[2]),b:Z(j[3]+""+j[3]),format:Q?"name":"hex"}:!1}function de(W){var Q,j;return W=W||{level:"AA",size:"small"},Q=(W.level||"AA").toUpperCase(),j=(W.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA"&&(Q="AA"),j!=="small"&&j!=="large"&&(j="small"),{level:Q,size:j}}typeof hp!="undefined"&&hp.exports?hp.exports=s:window.tinycolor=s})(Math)});var bt=N(Yv=>{"use strict";var mM=zl(),Uv=Array.isArray;function voe(e,r){var t,a;for(t=0;t{"use strict";gM.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var Vv=N((mCe,bM)=>{"use strict";bM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var Tf=N((gCe,wM)=>{"use strict";var xM=Vv(),_M=ca(),ib=_M({editType:"none"});ib.family.dflt=xM.HOVERFONT;ib.size.dflt=xM.HOVERFONTSIZE;wM.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:ib,grouptitlefont:_M({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var yp=N((bCe,TM)=>{"use strict";var hoe=ca(),dp=Tf().hoverlabel,pp=bt().extendFlat;TM.exports={hoverlabel:{bgcolor:pp({},dp.bgcolor,{arrayOk:!0}),bordercolor:pp({},dp.bordercolor,{arrayOk:!0}),font:hoe({arrayOk:!0,editType:"none"}),align:pp({},dp.align,{arrayOk:!0}),namelength:pp({},dp.namelength,{arrayOk:!0}),editType:"none"}}});var mn=N((xCe,AM)=>{"use strict";var doe=ca(),poe=yp();AM.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:doe({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:poe.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var Vs=N((_Ce,SM)=>{"use strict";var yoe=Sn(),mp={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},MM=mp.RdBu;function moe(e,r){if(r||(r=MM),!e)return r;function t(){try{e=mp[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),kM(e)?e:r}function kM(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";Ws.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Ws.defaultLine="#444";Ws.lightLine="#eee";Ws.background="#fff";Ws.borderLine="#BEC8D9";Ws.lightFraction=100*10/11});var Tr=N((TCe,qM)=>{"use strict";var qn=Sn(),boe=Pr(),xoe=Wn().isTypedArray,_a=qM.exports={},gp=li();_a.defaults=gp.defaults;var _oe=_a.defaultLine=gp.defaultLine;_a.lightLine=gp.lightLine;var lb=_a.background=gp.background;_a.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};_a.rgb=function(e){return _a.tinyRGB(qn(e))};_a.opacity=function(e){return e?qn(e).getAlpha():0};_a.addOpacity=function(e,r){var t=qn(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};_a.combine=function(e,r){var t=qn(e).toRgb();if(t.a===1)return qn(e).toRgbString();var a=qn(r||lb).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return qn(i).toRgbString()};_a.interpolate=function(e,r,t){var a=qn(e).toRgb(),n=qn(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return qn(i).toRgbString()};_a.contrast=function(e,r,t){var a=qn(e);a.getAlpha()!==1&&(a=qn(_a.combine(e,lb)));var n=a.isDark()?r?a.lighten(r):lb:t?a.darken(t):_oe;return n.toString()};_a.stroke=function(e,r){var t=qn(r);e.style({stroke:_a.tinyRGB(t),"stroke-opacity":t.getAlpha()})};_a.fill=function(e,r){var t=qn(r);e.style({fill:_a.tinyRGB(t),"fill-opacity":t.getAlpha()})};_a.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var o=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+o+", "+a[3]+")":"rgb("+o+")"}});var bp=N((ACe,LM)=>{"use strict";LM.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Af=N(CM=>{"use strict";CM.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var RM=N(Ln=>{"use strict";var sb=Pr(),EM=Sn(),DM=bt().extendFlat,woe=mn(),Toe=Vs(),Aoe=Tr(),Moe=bp().DESELECTDIM,Mf=fp(),PM=Af().counter,koe=wf().modHalf,To=Wn().isArrayOrTypedArray,Il=Wn().isTypedArraySpec,Ol=Wn().decodeTypedArraySpec;Ln.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(To(e)?e:Il(e)?Ol(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}Il(e)&&(e=Ol(e)),e%1||!sb(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Il(e)&&(e=Ol(e)),EM(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return EM(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(Toe.get(e,t))}},angle:{coerceFunction:function(e,r,t){Il(e)&&(e=Ol(e)),e==="auto"?r.set("auto"):sb(e)?r.set(koe(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||PM(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!PM(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var FM={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},NM={};function zM(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),zM(a,r[t]))}}zM(FM,NM);IM.exports={configAttributes:FM,dfltConfig:NM}});var fb=N((qCe,OM)=>{"use strict";var ub=Sr(),Soe=Pr(),Wv=[];OM.exports=function(e,r){if(Wv.indexOf(e)!==-1)return;Wv.push(e);var t=1e3;Soe(r)?t=r:r==="long"&&(t=3e3);var a=ub.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Wv);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=Wv.indexOf(l);s!==-1&&Wv.splice(s,1),ub.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=ub.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),u=o.split(//g),f=0;f{"use strict";var kf=js().dfltConfig,cb=fb(),vb=BM.exports={};vb.log=function(){var e;if(kf.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};vb.warn=function(){var e;if(kf.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};vb.error=function(){var e;if(kf.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var _p=N((CCe,HM)=>{"use strict";HM.exports=function(){}});var hb=N((ECe,UM)=>{"use strict";UM.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{GM.exports=qoe;function qoe(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var WM=N((PCe,VM)=>{VM.exports=Loe;function Loe(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var ZM=N((RCe,jM)=>{jM.exports=Coe;function Coe(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var db=N((FCe,XM)=>{XM.exports=Eoe;function Eoe(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var $M=N((NCe,JM)=>{JM.exports=Doe;function Doe(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],o=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=o,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var QM=N((zCe,KM)=>{KM.exports=Poe;function Poe(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],m=r[13],y=r[14],x=r[15],_=t*l-a*o,w=t*s-n*o,b=t*u-i*o,T=a*s-n*l,k=a*u-i*l,M=n*u-i*s,S=f*m-c*p,E=f*y-v*p,P=f*x-d*p,R=c*y-v*m,D=c*x-d*m,z=v*x-d*y,O=_*z-w*D+b*R+T*P-k*E+M*S;return O?(O=1/O,e[0]=(l*z-s*D+u*R)*O,e[1]=(n*D-a*z-i*R)*O,e[2]=(m*M-y*k+x*T)*O,e[3]=(v*k-c*M-d*T)*O,e[4]=(s*P-o*z-u*E)*O,e[5]=(t*z-n*P+i*E)*O,e[6]=(y*b-p*M-x*w)*O,e[7]=(f*M-v*b+d*w)*O,e[8]=(o*D-l*P+u*S)*O,e[9]=(a*P-t*D-i*S)*O,e[10]=(p*k-m*b+x*_)*O,e[11]=(c*b-f*k-d*_)*O,e[12]=(l*E-o*R-s*S)*O,e[13]=(t*R-a*E+n*S)*O,e[14]=(m*w-p*T-y*_)*O,e[15]=(f*T-c*w+v*_)*O,e):null}});var r9=N((ICe,e9)=>{e9.exports=Roe;function Roe(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],m=r[13],y=r[14],x=r[15];return e[0]=l*(v*x-d*y)-c*(s*x-u*y)+m*(s*d-u*v),e[1]=-(a*(v*x-d*y)-c*(n*x-i*y)+m*(n*d-i*v)),e[2]=a*(s*x-u*y)-l*(n*x-i*y)+m*(n*u-i*s),e[3]=-(a*(s*d-u*v)-l*(n*d-i*v)+c*(n*u-i*s)),e[4]=-(o*(v*x-d*y)-f*(s*x-u*y)+p*(s*d-u*v)),e[5]=t*(v*x-d*y)-f*(n*x-i*y)+p*(n*d-i*v),e[6]=-(t*(s*x-u*y)-o*(n*x-i*y)+p*(n*u-i*s)),e[7]=t*(s*d-u*v)-o*(n*d-i*v)+f*(n*u-i*s),e[8]=o*(c*x-d*m)-f*(l*x-u*m)+p*(l*d-u*c),e[9]=-(t*(c*x-d*m)-f*(a*x-i*m)+p*(a*d-i*c)),e[10]=t*(l*x-u*m)-o*(a*x-i*m)+p*(a*u-i*l),e[11]=-(t*(l*d-u*c)-o*(a*d-i*c)+f*(a*u-i*l)),e[12]=-(o*(c*y-v*m)-f*(l*y-s*m)+p*(l*v-s*c)),e[13]=t*(c*y-v*m)-f*(a*y-n*m)+p*(a*v-n*c),e[14]=-(t*(l*y-s*m)-o*(a*y-n*m)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+f*(a*s-n*l),e}});var a9=N((OCe,t9)=>{t9.exports=Foe;function Foe(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],o=e[5],l=e[6],s=e[7],u=e[8],f=e[9],c=e[10],v=e[11],d=e[12],p=e[13],m=e[14],y=e[15],x=r*o-t*i,_=r*l-a*i,w=r*s-n*i,b=t*l-a*o,T=t*s-n*o,k=a*s-n*l,M=u*p-f*d,S=u*m-c*d,E=u*y-v*d,P=f*m-c*p,R=f*y-v*p,D=c*y-v*m;return x*D-_*R+w*P+b*E-T*S+k*M}});var i9=N((BCe,n9)=>{n9.exports=Noe;function Noe(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=r[4],s=r[5],u=r[6],f=r[7],c=r[8],v=r[9],d=r[10],p=r[11],m=r[12],y=r[13],x=r[14],_=r[15],w=t[0],b=t[1],T=t[2],k=t[3];return e[0]=w*a+b*l+T*c+k*m,e[1]=w*n+b*s+T*v+k*y,e[2]=w*i+b*u+T*d+k*x,e[3]=w*o+b*f+T*p+k*_,w=t[4],b=t[5],T=t[6],k=t[7],e[4]=w*a+b*l+T*c+k*m,e[5]=w*n+b*s+T*v+k*y,e[6]=w*i+b*u+T*d+k*x,e[7]=w*o+b*f+T*p+k*_,w=t[8],b=t[9],T=t[10],k=t[11],e[8]=w*a+b*l+T*c+k*m,e[9]=w*n+b*s+T*v+k*y,e[10]=w*i+b*u+T*d+k*x,e[11]=w*o+b*f+T*p+k*_,w=t[12],b=t[13],T=t[14],k=t[15],e[12]=w*a+b*l+T*c+k*m,e[13]=w*n+b*s+T*v+k*y,e[14]=w*i+b*u+T*d+k*x,e[15]=w*o+b*f+T*p+k*_,e}});var l9=N((HCe,o9)=>{o9.exports=zoe;function zoe(e,r,t){var a=t[0],n=t[1],i=t[2],o,l,s,u,f,c,v,d,p,m,y,x;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(o=r[0],l=r[1],s=r[2],u=r[3],f=r[4],c=r[5],v=r[6],d=r[7],p=r[8],m=r[9],y=r[10],x=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=u,e[4]=f,e[5]=c,e[6]=v,e[7]=d,e[8]=p,e[9]=m,e[10]=y,e[11]=x,e[12]=o*a+f*n+p*i+r[12],e[13]=l*a+c*n+m*i+r[13],e[14]=s*a+v*n+y*i+r[14],e[15]=u*a+d*n+x*i+r[15]),e}});var u9=N((UCe,s9)=>{s9.exports=Ioe;function Ioe(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var c9=N((GCe,f9)=>{f9.exports=Ooe;function Ooe(e,r,t,a){var n=a[0],i=a[1],o=a[2],l=Math.sqrt(n*n+i*i+o*o),s,u,f,c,v,d,p,m,y,x,_,w,b,T,k,M,S,E,P,R,D,z,O,H;return Math.abs(l)<1e-6?null:(l=1/l,n*=l,i*=l,o*=l,s=Math.sin(t),u=Math.cos(t),f=1-u,c=r[0],v=r[1],d=r[2],p=r[3],m=r[4],y=r[5],x=r[6],_=r[7],w=r[8],b=r[9],T=r[10],k=r[11],M=n*n*f+u,S=i*n*f+o*s,E=o*n*f-i*s,P=n*i*f-o*s,R=i*i*f+u,D=o*i*f+n*s,z=n*o*f+i*s,O=i*o*f-n*s,H=o*o*f+u,e[0]=c*M+m*S+w*E,e[1]=v*M+y*S+b*E,e[2]=d*M+x*S+T*E,e[3]=p*M+_*S+k*E,e[4]=c*P+m*R+w*D,e[5]=v*P+y*R+b*D,e[6]=d*P+x*R+T*D,e[7]=p*P+_*R+k*D,e[8]=c*z+m*O+w*H,e[9]=v*z+y*O+b*H,e[10]=d*z+x*O+T*H,e[11]=p*z+_*O+k*H,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var h9=N((YCe,v9)=>{v9.exports=Boe;function Boe(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=o*n+f*a,e[6]=l*n+c*a,e[7]=s*n+v*a,e[8]=u*n-i*a,e[9]=f*n-o*a,e[10]=c*n-l*a,e[11]=v*n-s*a,e}});var p9=N((VCe,d9)=>{d9.exports=Hoe;function Hoe(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=o*n-f*a,e[2]=l*n-c*a,e[3]=s*n-v*a,e[8]=i*a+u*n,e[9]=o*a+f*n,e[10]=l*a+c*n,e[11]=s*a+v*n,e}});var m9=N((WCe,y9)=>{y9.exports=Uoe;function Uoe(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[4],f=r[5],c=r[6],v=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=o*n+f*a,e[2]=l*n+c*a,e[3]=s*n+v*a,e[4]=u*n-i*a,e[5]=f*n-o*a,e[6]=c*n-l*a,e[7]=v*n-s*a,e}});var b9=N((jCe,g9)=>{g9.exports=Goe;function Goe(e,r,t){var a,n,i,o=t[0],l=t[1],s=t[2],u=Math.sqrt(o*o+l*l+s*s);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,l*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=o*o*i+n,e[1]=l*o*i+s*a,e[2]=s*o*i-l*a,e[3]=0,e[4]=o*l*i-s*a,e[5]=l*l*i+n,e[6]=s*l*i+o*a,e[7]=0,e[8]=o*s*i+l*a,e[9]=l*s*i-o*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var _9=N((ZCe,x9)=>{x9.exports=Yoe;function Yoe(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=a+a,s=n+n,u=i+i,f=a*l,c=a*s,v=a*u,d=n*s,p=n*u,m=i*u,y=o*l,x=o*s,_=o*u;return e[0]=1-(d+m),e[1]=c+_,e[2]=v-x,e[3]=0,e[4]=c-_,e[5]=1-(f+m),e[6]=p+y,e[7]=0,e[8]=v+x,e[9]=p-y,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var T9=N((XCe,w9)=>{w9.exports=Voe;function Voe(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var M9=N((JCe,A9)=>{A9.exports=Woe;function Woe(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var S9=N(($Ce,k9)=>{k9.exports=joe;function joe(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var L9=N((KCe,q9)=>{q9.exports=Zoe;function Zoe(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var E9=N((QCe,C9)=>{C9.exports=Xoe;function Xoe(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var pb=N((eEe,D9)=>{D9.exports=Joe;function Joe(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=t+t,l=a+a,s=n+n,u=t*o,f=a*o,c=a*l,v=n*o,d=n*l,p=n*s,m=i*o,y=i*l,x=i*s;return e[0]=1-c-p,e[1]=f+x,e[2]=v-y,e[3]=0,e[4]=f-x,e[5]=1-u-p,e[6]=d+m,e[7]=0,e[8]=v+y,e[9]=d-m,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var R9=N((rEe,P9)=>{P9.exports=$oe;function $oe(e,r,t,a,n,i,o){var l=1/(t-r),s=1/(n-a),u=1/(i-o);return e[0]=i*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(n+a)*s,e[10]=(o+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*u,e[15]=0,e}});var N9=N((tEe,F9)=>{F9.exports=Koe;function Koe(e,r,t,a,n){var i=1/Math.tan(r/2),o=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*o,e[15]=0,e}});var I9=N((aEe,z9)=>{z9.exports=Qoe;function Qoe(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),o=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),s=2/(o+l),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var B9=N((nEe,O9)=>{O9.exports=ele;function ele(e,r,t,a,n,i,o){var l=1/(r-t),s=1/(a-n),u=1/(i-o);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*l,e[13]=(n+a)*s,e[14]=(o+i)*u,e[15]=1,e}});var U9=N((iEe,H9)=>{var rle=db();H9.exports=tle;function tle(e,r,t,a){var n,i,o,l,s,u,f,c,v,d,p=r[0],m=r[1],y=r[2],x=a[0],_=a[1],w=a[2],b=t[0],T=t[1],k=t[2];return Math.abs(p-b)<1e-6&&Math.abs(m-T)<1e-6&&Math.abs(y-k)<1e-6?rle(e):(f=p-b,c=m-T,v=y-k,d=1/Math.sqrt(f*f+c*c+v*v),f*=d,c*=d,v*=d,n=_*v-w*c,i=w*f-x*v,o=x*c-_*f,d=Math.sqrt(n*n+i*i+o*o),d?(d=1/d,n*=d,i*=d,o*=d):(n=0,i=0,o=0),l=c*o-v*i,s=v*n-f*o,u=f*i-c*n,d=Math.sqrt(l*l+s*s+u*u),d?(d=1/d,l*=d,s*=d,u*=d):(l=0,s=0,u=0),e[0]=n,e[1]=l,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=o,e[9]=u,e[10]=v,e[11]=0,e[12]=-(n*p+i*m+o*y),e[13]=-(l*p+s*m+u*y),e[14]=-(f*p+c*m+v*y),e[15]=1,e)}});var Y9=N((oEe,G9)=>{G9.exports=ale;function ale(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var yb=N((lEe,V9)=>{V9.exports={create:YM(),clone:WM(),copy:ZM(),identity:db(),transpose:$M(),invert:QM(),adjoint:r9(),determinant:a9(),multiply:i9(),translate:l9(),scale:u9(),rotate:c9(),rotateX:h9(),rotateY:p9(),rotateZ:m9(),fromRotation:b9(),fromRotationTranslation:_9(),fromScaling:T9(),fromTranslation:M9(),fromXRotation:S9(),fromYRotation:L9(),fromZRotation:E9(),fromQuat:pb(),frustum:R9(),perspective:N9(),perspectiveFromFieldOfView:I9(),ortho:B9(),lookAt:U9(),str:Y9()}});var wp=N($t=>{"use strict";var nle=yb();$t.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var ile=Sr(),W9=Zs(),ole=wp(),lle=yb();function sle(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function ule(e){var r=ile.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function j9(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function fle(e,r){Z9("global",e,r)}function Z9(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):W9.warn("addStyleRule failed"):W9.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function cle(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&j9(t)}function vle(e,r,t,a,n,i){var o=a.split(":"),l=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[o[0]]=o[1]:f.style[l[0]]=l[1])}),u.setAttribute(s,!0))})}function hle(e){var r=J9(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=X9(a);if(n){var i=ole.convertCssMatrix(n);t=lle.multiply(t,t,i)}}),t}function X9(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function J9(e){for(var r=[];dle(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function dle(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function ple(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}$9.exports={getGraphDiv:sle,isPlotDiv:ule,removeElement:j9,addStyleRule:fle,addRelatedStyleRule:Z9,deleteRelatedStyleRule:cle,setStyleOnHover:vle,getFullTransformMatrix:hle,getElementTransformMatrix:X9,getElementAndAncestors:J9,equalDomRects:ple}});var Zv=N((fEe,K9)=>{"use strict";K9.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var Xi=N((cEe,ik)=>{"use strict";var ek=bt().extendFlat,yle=zl(),rk={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},tk={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},mle=rk.flags.slice().concat(["fullReplot"]),gle=tk.flags.slice().concat("layoutReplot");ik.exports={traces:rk,layout:tk,traceFlags:function(){return Q9(mle)},layoutFlags:function(){return Q9(gle)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";mb.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};mb.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var gb=N((hEe,ok)=>{"use strict";ok.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var La=N(Tp=>{"use strict";var lk=gb(),dEe=lk.FORMAT_LINK,pEe=lk.DATE_FORMAT_LINK;function bb(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function Bl(e,r){return r?r.d2l(e):e}function sk(e,r){return r?r.l2d(e):e}function ble(e){return e.x0}function xle(e){return e.x1}function _le(e){return e.y0}function wle(e){return e.y1}function uk(e){return e.x0shift||0}function fk(e){return e.x1shift||0}function ck(e){return e.y0shift||0}function vk(e){return e.y1shift||0}function Ap(e,r){return Bl(e.x1,r)+fk(e)-Bl(e.x0,r)-uk(e)}function Mp(e,r,t){return Bl(e.y1,t)+vk(e)-Bl(e.y0,t)-ck(e)}function Tle(e,r){return Math.abs(Ap(e,r))}function Ale(e,r,t){return Math.abs(Mp(e,r,t))}function Mle(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Ap(e,r),2)+Math.pow(Mp(e,r,t),2))}function kle(e,r){return sk((Bl(e.x1,r)+fk(e)+Bl(e.x0,r)+uk(e))/2,r)}function Sle(e,r,t){return sk((Bl(e.y1,t)+vk(e)+Bl(e.y0,t)+ck(e))/2,t)}function qle(e,r,t){return e.type!=="line"?void 0:Mp(e,r,t)/Ap(e,r)}hk.exports={x0:ble,x1:xle,y0:_le,y1:wle,slope:qle,dx:Ap,dy:Mp,width:Tle,height:Ale,length:Mle,xcenter:kle,ycenter:Sle}});var yk=N((gEe,pk)=>{"use strict";var Lle=Xi().overrideAll,Xs=mn(),dk=ca(),Cle=si().dash,Hl=bt().extendFlat,Ele=La().shapeTexttemplateAttrs,Dle=kp();pk.exports=Lle({newshape:{visible:Hl({},Xs.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Hl({},Xs.legend,{}),legendgroup:Hl({},Xs.legendgroup,{}),legendgrouptitle:{text:Hl({},Xs.legendgrouptitle.text,{}),font:dk({})},legendrank:Hl({},Xs.legendrank,{}),legendwidth:Hl({},Xs.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Hl({},Cle,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Hl({},Xs.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Ele({newshape:!0},{keys:Object.keys(Dle)}),font:dk({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var gk=N((bEe,mk)=>{"use strict";var Ple=si().dash,Rle=bt().extendFlat;mk.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:Rle({},Ple,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var Sp=N((xEe,bk)=>{"use strict";bk.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var Sf=N((_Ee,Tk)=>{"use strict";var xb=ca(),Fle=Zv(),qp=li(),xk=yk(),_k=gk(),Nle=Sp(),wk=bt().extendFlat,Lp=xb({editType:"calc"});Lp.family.dflt='"Open Sans", verdana, arial, sans-serif';Lp.size.dflt=12;Lp.color.dflt=qp.defaultLine;Tk.exports={font:Lp,title:{text:{valType:"string",editType:"layoutstyle"},font:xb({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:xb({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:wk(Nle({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:qp.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:qp.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:qp.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:xk.newshape,activeshape:xk.activeshape,newselection:_k.newselection,activeselection:_k.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:wk({},Fle.transition,{editType:"none"})}});var Ak=BA(()=>{});var zle={};var Mk=BA(()=>{Ak()});var gr=N(Hr=>{"use strict";var qf=Zs(),kk=_p(),Sk=hb(),Ile=zl(),Ole=jv().addStyleRule,qk=bt(),Ble=mn(),Hle=Sf(),Ule=qk.extendFlat,_b=qk.extendDeepAll;Hr.modules={};Hr.allCategories={};Hr.allTypes=[];Hr.subplotsRegistry={};Hr.componentsRegistry={};Hr.layoutArrayContainers=[];Hr.layoutArrayRegexes=[];Hr.traceLayoutAttributes={};Hr.localeRegistry={};Hr.apiMethodRegistry={};Hr.collectableSubplotTypes=null;Hr.register=function(r){if(Hr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var Zle=xf().timeFormat,Ok=Pr(),wb=Zs(),Gl=wf().mod,Ef=Ft(),ui=Ef.BADNUM,Cn=Ef.ONEDAY,Xv=Ef.ONEHOUR,Ul=Ef.ONEMIN,Cf=Ef.ONESEC,Jv=Ef.EPOCHJD,rl=gr(),Pk=xf().utcFormat,Xle=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Jle=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Rk=new Date().getFullYear()-70;function tl(e){return e&&rl.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Kt.dateTick0=function(e,r){var t=$le(e,!!r);if(r<2)return t;var a=Kt.dateTime2ms(t,e);return a+=Cn*(r-1),Kt.ms2DateTime(a,0,e)};function $le(e,r){return tl(e)?r?rl.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:rl.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Kt.dfltRange=function(e){return tl(e)?rl.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Kt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Ep,Dp;Kt.dateTime2ms=function(e,r){if(Kt.isJSDate(e)){var t=e.getTimezoneOffset()*Ul,a=(e.getUTCMinutes()-e.getMinutes())*Ul+(e.getUTCSeconds()-e.getSeconds())*Cf+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Ul;t=t-n/2+Gl(a-t+n/2,n)}return e=Number(e)-t,e>=Ep&&e<=Dp?e:ui}if(typeof e!="string"&&typeof e!="number")return ui;e=String(e);var i=tl(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.substr(1),r="");var l=i&&r.substr(0,7)==="chinese",s=e.match(l?Jle:Xle);if(!s)return ui;var u=s[1],f=s[3]||"1",c=Number(s[5]||1),v=Number(s[7]||0),d=Number(s[9]||0),p=Number(s[11]||0);if(i){if(u.length===2)return ui;u=Number(u);var m;try{var y=rl.getComponentMethod("calendars","getCal")(r);if(l){var x=f.charAt(f.length-1)==="i";f=parseInt(f,10),m=y.newDate(u,y.toMonthIndex(u,f,x),c)}else m=y.newDate(u,Number(f),c)}catch(w){return ui}return m?(m.toJD()-Jv)*Cn+v*Xv+d*Ul+p*Cf:ui}u.length===2?u=(Number(u)+2e3-Rk)%100+Rk:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,v,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?ui:_.getTime()+p*Cf};Ep=Kt.MIN_MS=Kt.dateTime2ms("-9999");Dp=Kt.MAX_MS=Kt.dateTime2ms("9999-12-31 23:59:59.9999");Kt.isDateTime=function(e,r){return Kt.dateTime2ms(e,r)!==ui};function Lf(e,r){return String(e+Math.pow(10,r)).substr(1)}var Cp=90*Cn,Fk=3*Xv,Nk=5*Ul;Kt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Ep&&e<=Dp))return ui;r||(r=0);var a=Math.floor(Gl(e+.05,1)*10),n=Math.round(e-a/10),i,o,l,s,u,f;if(tl(t)){var c=Math.floor(n/Cn)+Jv,v=Math.floor(Gl(e,Cn));try{i=rl.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=Pk("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;o=r=Ep+Cn&&e<=Dp-Cn))return ui;var r=Math.floor(Gl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=Zle("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return Bk(a,n,i,o,l)};function Bk(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+Lf(r,2)+":"+Lf(t,2),(a||n)&&(e+=":"+Lf(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+Lf(n,i)}return e}Kt.cleanDate=function(e,r,t){if(e===ui)return r;if(Kt.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(tl(t))return wb.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Kt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Kt.isDateTime(e,t))return wb.error("unrecognized date",e),r;return e};var Kle=/%\d?f/g,Qle=/%h/g,ese={1:"1",2:"1",3:"2",4:"2"};function zk(e,r,t,a){e=e.replace(Kle,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return l});var n=new Date(Math.floor(r+.05));if(e=e.replace(Qle,function(){return ese[t("%q")(n)]}),tl(a))try{e=rl.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var rse=[59,59.9,59.99,59.999,59.9999];function tse(e,r){var t=Gl(e+.05,Cn),a=Lf(Math.floor(t/Xv),2)+":"+Lf(Gl(Math.floor(t/Ul),60),2);if(r!=="M"){Ok(r)||(r=0);var n=Math.min(Gl(e/Cf,60),rse[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Kt.formatDate=function(e,r,t,a,n,i){if(n=tl(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-finance.js b/dist/plotly-finance.js index 51f7978839c..7717b7f5fc8 100644 --- a/dist/plotly-finance.js +++ b/dist/plotly-finance.js @@ -1,5 +1,5 @@ /** -* plotly.js (finance) v3.0.2 +* plotly.js (finance) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -42,7 +42,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-finance.min.js b/dist/plotly-finance.min.js index 2da57a9af0d..4e9929f6c58 100644 --- a/dist/plotly-finance.min.js +++ b/dist/plotly-finance.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (finance - minified) v3.0.2 +* plotly.js (finance - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Ty=Object.defineProperty;var XW=Object.getOwnPropertyDescriptor;var ZW=Object.getOwnPropertyNames;var JW=Object.prototype.hasOwnProperty;var nt=(e,r)=>()=>(e&&(r=e(e=0)),r);var B=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),$W=(e,r)=>{for(var t in r)Ty(e,t,{get:r[t],enumerable:!0})},KW=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ZW(r))!JW.call(e,n)&&n!==t&&Ty(e,n,{get:()=>r[n],enumerable:!(a=XW(r,n))||a.enumerable});return e};var My=e=>KW(Ty({},"__esModule",{value:!0}),e);var Q0=B(G4=>{"use strict";G4.version="3.0.2"});var V4=B((U4,j0)=>{(function(r,t,a){t[r]=t[r]||a(),typeof j0!="undefined"&&j0.exports&&(j0.exports=t[r])})("Promise",typeof window!="undefined"?window:U4,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,T,x,M){return Object.defineProperty(_,T,{value:x,writable:!0,configurable:M!==!1})}}catch(b){r=function(T,x,M){return T[x]=M,T}}a=function(){var _,T,x;function M(A,k){this.fn=A,this.self=k,this.next=void 0}return{add:function(k,L){x=new M(k,L),T?T.next=x:_=x,T=x,x=void 0},drain:function(){var k=_;for(_=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(b,_){a.add(b,_),t||(t=i(a.drain))}function o(b){var _,T=typeof b;return b!=null&&(T=="object"||T=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&l(s,T))}catch(x){c.call(new d(T),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&l(s,_))}function h(b,_,T,x){for(var M=0;M<_.length;M++)(function(k){b.resolve(_[k]).then(function(D){T(k,D)},x)})(M)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function y(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,M){var A={success:typeof x=="function"?x:!0,failure:typeof M=="function"?M:!1};return A.promise=new this.constructor(function(L,D){if(typeof L!="function"||typeof D!="function")throw TypeError("Not a function");A.resolve=L,A.reject=D}),_.chain.push(A),_.state!==0&&l(s,_),A.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(T){c.call(_,T)}}var m=r({},"constructor",y,!1);return y.prototype=m,r(m,"__NPO__",0,!1),r(y,"resolve",function(_){var T=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");M(_)})}),r(y,"reject",function(_){return new this(function(x,M){if(typeof x!="function"||typeof M!="function")throw TypeError("Not a function");M(_)})}),r(y,"all",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):_.length===0?T.resolve([]):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");var k=_.length,L=Array(k),D=0;h(T,_,function(R,z){L[R]=z,++D===k&&M(L)},A)})}),r(y,"race",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");h(T,_,function(L,D){M(D)},A)})}),y})});var kr=B((Npe,eh)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(v){return r.call(v)},a=self.document;function n(v){return v&&(v.ownerDocument||v.document||v).documentElement}function i(v){return v&&(v.ownerDocument&&v.ownerDocument.defaultView||v.document&&v||v.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(v){t=function(g){for(var w=g.length,q=new Array(w);w--;)q[w]=g[w];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(v){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(g,w){o.call(this,g,w+"")},l.setAttributeNS=function(g,w,q){s.call(this,g,w,q+"")},u.setProperty=function(g,w,q){f.call(this,g,w+"",q)}}e.ascending=c;function c(v,g){return vg?1:v>=g?0:NaN}e.descending=function(v,g){return gv?1:g>=v?0:NaN},e.min=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wS&&(C=S)}else{for(;++w=S){C=S;break}for(;++wS&&(C=S)}return C},e.max=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wC&&(C=S)}else{for(;++w=S){C=S;break}for(;++wC&&(C=S)}return C},e.extent=function(v,g){var w=-1,q=v.length,C,S,N;if(arguments.length===1){for(;++w=S){C=N=S;break}for(;++wS&&(C=S),N=S){C=N=S;break}for(;++wS&&(C=S),N1)return N/(F-1)},e.deviation=function(){var v=e.variance.apply(this,arguments);return v&&Math.sqrt(v)};function p(v){return{left:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)<0?q=S+1:C=S}return q},right:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)>0?C=S:q=S+1}return q}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.right,e.bisector=function(v){return p(v.length===1?function(g,w){return c(v(g),w)}:v)},e.shuffle=function(v,g,w){(q=arguments.length)<3&&(w=v.length,q<2&&(g=0));for(var q=w-g,C,S;q;)S=Math.random()*q--|0,C=v[q+g],v[q+g]=v[S+g],v[S+g]=C;return v},e.permute=function(v,g){for(var w=g.length,q=new Array(w);w--;)q[w]=v[g[w]];return q},e.pairs=function(v){for(var g=0,w=v.length-1,q,C=v[0],S=new Array(w<0?0:w);g=0;)for(N=v[g],w=N.length;--w>=0;)S[--C]=N[w];return S};var b=Math.abs;e.range=function(v,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=v,v=0)),(g-v)/w===1/0)throw new Error("infinite range");var q=[],C=_(b(w)),S=-1,N;if(v*=C,g*=C,w*=C,w<0)for(;(N=v+w*++S)>g;)q.push(N/C);else for(;(N=v+w*++S)=g.length)return C?C.call(v,F):q?F.sort(q):F;for(var $=-1,j=F.length,ee=g[J++],me,Te,ae,oe=new x,he;++$=g.length)return E;var J=[],$=w[F++];return E.forEach(function(j,ee){J.push({key:j,values:N(ee,F)})}),$?J.sort(function(j,ee){return $(j.key,ee.key)}):J}return v.map=function(E,F){return S(F,E,0)},v.entries=function(E){return N(S(e.map,E,0),0)},v.key=function(E){return g.push(E),v},v.sortKeys=function(E){return w[g.length-1]=E,v},v.sortValues=function(E){return q=E,v},v.rollup=function(E){return C=E,v},v},e.set=function(v){var g=new O;if(v)for(var w=0,q=v.length;w=0&&(q=v.slice(w+1),v=v.slice(0,w)),v)return arguments.length<2?this[v].on(q):this[v].on(q,g);if(arguments.length===2){if(g==null)for(v in this)this.hasOwnProperty(v)&&this[v].on(q,null);return this}};function K(v){var g=[],w=new x;function q(){for(var C=g,S=-1,N=C.length,E;++S=0&&(w=v.slice(0,g))!=="xmlns"&&(v=v.slice(g+1)),ye.hasOwnProperty(w)?{space:ye[w],local:v}:v}},be.attr=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node();return v=e.ns.qualify(v),v.local?w.getAttributeNS(v.space,v.local):w.getAttribute(v)}for(g in v)this.each(_e(g,v[g]));return this}return this.each(_e(v,g))};function _e(v,g){v=e.ns.qualify(v);function w(){this.removeAttribute(v)}function q(){this.removeAttributeNS(v.space,v.local)}function C(){this.setAttribute(v,g)}function S(){this.setAttributeNS(v.space,v.local,g)}function N(){var F=g.apply(this,arguments);F==null?this.removeAttribute(v):this.setAttribute(v,F)}function E(){var F=g.apply(this,arguments);F==null?this.removeAttributeNS(v.space,v.local):this.setAttributeNS(v.space,v.local,F)}return g==null?v.local?q:w:typeof g=="function"?v.local?E:N:v.local?S:C}function xe(v){return v.trim().replace(/\s+/g," ")}be.classed=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node(),q=(v=ze(v)).length,C=-1;if(g=w.classList){for(;++C=0;)(S=w[q])&&(C&&C!==S.nextSibling&&C.parentNode.insertBefore(S,C),C=S);return this},be.sort=function(v){v=Ae.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=C+1);!(F=N[g])&&++g0&&(v=v.slice(0,C));var N=Ye.get(v);N&&(v=N,S=Ge);function E(){var $=this[q];$&&(this.removeEventListener(v,$,$.$),delete this[q])}function F(){var $=S(g,t(arguments));E.call(this),this.addEventListener(v,this[q]=$,$.$=w),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(v)+"$"),j;for(var ee in this)if(j=ee.match($)){var me=this[ee];this.removeEventListener(j[1],me,me.$),delete this[ee]}}return C?g?F:E:g?G:J}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(v){"on"+v in a&&Ye.remove(v)});function Xe(v,g){return function(w){var q=e.event;e.event=w,g[0]=this.__data__;try{v.apply(this,g)}finally{e.event=q}}}function Ge(v,g){var w=Xe(v,g);return function(q){var C=this,S=q.relatedTarget;(!S||S!==C&&!(S.compareDocumentPosition(C)&8))&&w.call(C,q)}}var Oe,$e=0;function fr(v){var g=".dragsuppress-"+ ++$e,w="click"+g,q=e.select(i(v)).on("touchmove"+g,re).on("dragstart"+g,re).on("selectstart"+g,re);if(Oe==null&&(Oe="onselectstart"in v?!1:Y(v.style,"userSelect")),Oe){var C=n(v).style,S=C[Oe];C[Oe]="none"}return function(N){if(q.on(g,null),Oe&&(C[Oe]=S),N){var E=function(){q.on(w,null)};q.on(w,function(){re(),E()},!0),setTimeout(E,0)}}}e.mouse=function(v){return Ne(v,se())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ne(v,g){g.changedTouches&&(g=g.changedTouches[0]);var w=v.ownerSVGElement||v;if(w.createSVGPoint){var q=w.createSVGPoint();if(lr<0){var C=i(v);if(C.scrollX||C.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var S=w[0][0].getScreenCTM();lr=!(S.f||S.e),w.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(v.getScreenCTM().inverse()),[q.x,q.y]}var N=v.getBoundingClientRect();return[g.clientX-N.left-v.clientLeft,g.clientY-N.top-v.clientTop]}e.touch=function(v,g,w){if(arguments.length<3&&(w=g,g=se().changedTouches),g){for(var q=0,C=g.length,S;q0?1:v<0?-1:0}function Wr(v,g,w){return(g[0]-v[0])*(w[1]-v[1])-(g[1]-v[1])*(w[0]-v[0])}function Nt(v){return v>1?0:v<-1?qe:Math.acos(v)}function oa(v){return v>1?sr:v<-1?-sr:Math.asin(v)}function Na(v){return((v=Math.exp(v))-1/v)/2}function sa(v){return((v=Math.exp(v))+1/v)/2}function Sn(v){return((v=Math.exp(2*v))-1)/(v+1)}function Za(v){return(v=Math.sin(v/2))*v}var ua=Math.SQRT2,Ja=2,gr=4;e.interpolateZoom=function(v,g){var w=v[0],q=v[1],C=v[2],S=g[0],N=g[1],E=g[2],F=S-w,J=N-q,$=F*F+J*J,j,ee;if($0&&(er=er.transition().duration(N)),er.call(Me.event)}function hr(){oe&&oe.domain(ae.range().map(function(er){return(er-v.x)/v.k}).map(ae.invert)),we&&we.domain(he.range().map(function(er){return(er-v.y)/v.k}).map(he.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:v.k,translate:[v.x,v.y]})}function pr(er){--E||(er({type:"zoomend"}),w=null)}function Mr(){var er=this,Dr=Te.of(er,arguments),Pr=0,Qr=e.select(i(er)).on(J,xa).on($,Ha),kt=pe(e.mouse(er)),Zt=fr(er);Z0.call(er),dr(Dr);function xa(){Pr=1,or(e.mouse(er),kt),Sr(Dr)}function Ha(){Qr.on(J,null).on($,null),Zt(Pr),pr(Dr)}}function Kr(){var er=this,Dr=Te.of(er,arguments),Pr={},Qr=0,kt,Zt=".zoom-"+e.event.changedTouches[0].identifier,xa="touchmove"+Zt,Ha="touchend"+Zt,$a=[],Oa=e.select(er),en=fr(er);rn(),dr(Dr),Oa.on(F,null).on(ee,rn);function La(){var oi=e.touches(er);return kt=v.k,oi.forEach(function(ba){ba.identifier in Pr&&(Pr[ba.identifier]=pe(ba))}),oi}function rn(){var oi=e.event.target;e.select(oi).on(xa,Fo).on(Ha,WW),$a.push(oi);for(var ba=e.event.changedTouches,Pn=0,zi=ba.length;Pn1){var Io=En[0],Pl=En[1],K0=Io[0]-Pl[0],Y4=Io[1]-Pl[1];Qr=K0*K0+Y4*Y4}}function Fo(){var oi=e.touches(er),ba,Pn,zi,En;Z0.call(er);for(var fu=0,Io=oi.length;fu1?1:g,w=w<0?0:w>1?1:w,C=w<=.5?w*(1+g):w+g-w*g,q=2*w-C;function S(E){return E>360?E-=360:E<0&&(E+=360),E<60?q+(C-q)*E/60:E<180?C:E<240?q+(C-q)*(240-E)/60:q}function N(E){return Math.round(S(E)*255)}return new Ia(N(v+120),N(v),N(v-120))}e.hcl=fa;function fa(v,g,w){return this instanceof fa?(this.h=+v,this.c=+g,void(this.l=+w)):arguments.length<2?v instanceof fa?new fa(v.h,v.c,v.l):v instanceof Qt?q0(v.l,v.a,v.b):q0((v=nr((v=e.rgb(v)).r,v.g,v.b)).l,v.a,v.b):new fa(v,g,w)}var ai=fa.prototype=new Lt;ai.brighter=function(v){return new fa(this.h,this.c,Math.min(100,this.l+it*(arguments.length?v:1)))},ai.darker=function(v){return new fa(this.h,this.c,Math.max(0,this.l-it*(arguments.length?v:1)))},ai.rgb=function(){return ni(this.h,this.c,this.l).rgb()};function ni(v,g,w){return isNaN(v)&&(v=0),isNaN(g)&&(g=0),new Qt(w,Math.cos(v*=Ar)*g,Math.sin(v)*g)}e.lab=Qt;function Qt(v,g,w){return this instanceof Qt?(this.l=+v,this.a=+g,void(this.b=+w)):arguments.length<2?v instanceof Qt?new Qt(v.l,v.a,v.b):v instanceof fa?ni(v.h,v.c,v.l):nr((v=Ia(v)).r,v.g,v.b):new Qt(v,g,w)}var it=18,ma=.95047,Do=1,Po=1.08883,Sl=Qt.prototype=new Lt;Sl.brighter=function(v){return new Qt(Math.min(100,this.l+it*(arguments.length?v:1)),this.a,this.b)},Sl.darker=function(v){return new Qt(Math.max(0,this.l-it*(arguments.length?v:1)),this.a,this.b)},Sl.rgb=function(){return k0(this.l,this.a,this.b)};function k0(v,g,w){var q=(v+16)/116,C=q+g/500,S=q-w/200;return C=ac(C)*ma,q=ac(q)*Do,S=ac(S)*Po,new Ia(ic(3.2404542*C-1.5371385*q-.4985314*S),ic(-.969266*C+1.8760108*q+.041556*S),ic(.0556434*C-.2040259*q+1.0572252*S))}function q0(v,g,w){return v>0?new fa(Math.atan2(w,g)*Ur,Math.sqrt(g*g+w*w),v):new fa(NaN,NaN,v)}function ac(v){return v>.206893034?v*v*v:(v-4/29)/7.787037}function nc(v){return v>.008856?Math.pow(v,1/3):7.787037*v+4/29}function ic(v){return Math.round(255*(v<=.00304?12.92*v:1.055*Math.pow(v,1/2.4)-.055))}e.rgb=Ia;function Ia(v,g,w){return this instanceof Ia?(this.r=~~v,this.g=~~g,void(this.b=~~w)):arguments.length<2?v instanceof Ia?new Ia(v.r,v.g,v.b):Zr(""+v,Ia,Fa):new Ia(v,g,w)}function C0(v){return new Ia(v>>16,v>>8&255,v&255)}function tu(v){return C0(v)+""}var au=Ia.prototype=new Lt;au.brighter=function(v){v=Math.pow(.7,arguments.length?v:1);var g=this.r,w=this.g,q=this.b,C=30;return!g&&!w&&!q?new Ia(C,C,C):(g&&g>4,q=q>>4|q,C=F&240,C=C>>4|C,S=F&15,S=S<<4|S):v.length===7&&(q=(F&16711680)>>16,C=(F&65280)>>8,S=F&255)),g(q,C,S))}function rt(v,g,w){var q=Math.min(v/=255,g/=255,w/=255),C=Math.max(v,g,w),S=C-q,N,E,F=(C+q)/2;return S?(E=F<.5?S/(C+q):S/(2-C-q),v==C?N=(g-w)/S+(g0&&F<1?0:N),new ct(N,E,F)}function nr(v,g,w){v=ya(v),g=ya(g),w=ya(w);var q=nc((.4124564*v+.3575761*g+.1804375*w)/ma),C=nc((.2126729*v+.7151522*g+.072175*w)/Do),S=nc((.0193339*v+.119192*g+.9503041*w)/Po);return Qt(116*C-16,500*(q-C),200*(C-S))}function ya(v){return(v/=255)<=.04045?v/12.92:Math.pow((v+.055)/1.055,2.4)}function vt(v){var g=parseFloat(v);return v.charAt(v.length-1)==="%"?Math.round(g*2.55):g}var ga=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});ga.forEach(function(v,g){ga.set(v,C0(g))});function Nr(v){return typeof v=="function"?v:function(){return v}}e.functor=Nr,e.xhr=ii(U);function ii(v){return function(g,w,q){return arguments.length===2&&typeof w=="function"&&(q=w,w=null),Eo(g,w,v,q)}}function Eo(v,g,w,q){var C={},S=e.dispatch("beforesend","progress","load","error"),N={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(v)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=J:E.onreadystatechange=function(){E.readyState>3&&J()};function J(){var $=E.status,j;if(!$&&ZU(E)||$>=200&&$<300||$===304){try{j=w.call(C,E)}catch(ee){S.error.call(C,ee);return}S.load.call(C,j)}else S.error.call(C,E)}return E.onprogress=function($){var j=e.event;e.event=$;try{S.progress.call(C,E)}finally{e.event=j}},C.header=function($,j){return $=($+"").toLowerCase(),arguments.length<2?N[$]:(j==null?delete N[$]:N[$]=j+"",C)},C.mimeType=function($){return arguments.length?(g=$==null?null:$+"",C):g},C.responseType=function($){return arguments.length?(F=$,C):F},C.response=function($){return w=$,C},["get","post"].forEach(function($){C[$]=function(){return C.send.apply(C,[$].concat(t(arguments)))}}),C.send=function($,j,ee){if(arguments.length===2&&typeof j=="function"&&(ee=j,j=null),E.open($,v,!0),g!=null&&!("accept"in N)&&(N.accept=g+",*/*"),E.setRequestHeader)for(var me in N)E.setRequestHeader(me,N[me]);return g!=null&&E.overrideMimeType&&E.overrideMimeType(g),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(Te){ee(null,Te)}),S.beforesend.call(C,E),E.send(j==null?null:j),C},C.abort=function(){return E.abort(),C},e.rebind(C,S,"on"),q==null?C:C.get(XU(q))}function XU(v){return v.length===1?function(g,w){v(g==null?w:null)}:v}function ZU(v){var g=v.responseType;return g&&g!=="text"?v.response:v.responseText}e.dsv=function(v,g){var w=new RegExp('["'+v+` +"use strict";var Plotly=(()=>{var Ty=Object.defineProperty;var XW=Object.getOwnPropertyDescriptor;var ZW=Object.getOwnPropertyNames;var JW=Object.prototype.hasOwnProperty;var nt=(e,r)=>()=>(e&&(r=e(e=0)),r);var B=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),$W=(e,r)=>{for(var t in r)Ty(e,t,{get:r[t],enumerable:!0})},KW=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ZW(r))!JW.call(e,n)&&n!==t&&Ty(e,n,{get:()=>r[n],enumerable:!(a=XW(r,n))||a.enumerable});return e};var My=e=>KW(Ty({},"__esModule",{value:!0}),e);var Q0=B(G4=>{"use strict";G4.version="3.0.3"});var V4=B((U4,j0)=>{(function(r,t,a){t[r]=t[r]||a(),typeof j0!="undefined"&&j0.exports&&(j0.exports=t[r])})("Promise",typeof window!="undefined"?window:U4,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,T,x,M){return Object.defineProperty(_,T,{value:x,writable:!0,configurable:M!==!1})}}catch(b){r=function(T,x,M){return T[x]=M,T}}a=function(){var _,T,x;function M(A,k){this.fn=A,this.self=k,this.next=void 0}return{add:function(k,L){x=new M(k,L),T?T.next=x:_=x,T=x,x=void 0},drain:function(){var k=_;for(_=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(b,_){a.add(b,_),t||(t=i(a.drain))}function o(b){var _,T=typeof b;return b!=null&&(T=="object"||T=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&l(s,T))}catch(x){c.call(new d(T),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&l(s,_))}function h(b,_,T,x){for(var M=0;M<_.length;M++)(function(k){b.resolve(_[k]).then(function(D){T(k,D)},x)})(M)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function y(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,M){var A={success:typeof x=="function"?x:!0,failure:typeof M=="function"?M:!1};return A.promise=new this.constructor(function(L,D){if(typeof L!="function"||typeof D!="function")throw TypeError("Not a function");A.resolve=L,A.reject=D}),_.chain.push(A),_.state!==0&&l(s,_),A.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(T){c.call(_,T)}}var m=r({},"constructor",y,!1);return y.prototype=m,r(m,"__NPO__",0,!1),r(y,"resolve",function(_){var T=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");M(_)})}),r(y,"reject",function(_){return new this(function(x,M){if(typeof x!="function"||typeof M!="function")throw TypeError("Not a function");M(_)})}),r(y,"all",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):_.length===0?T.resolve([]):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");var k=_.length,L=Array(k),D=0;h(T,_,function(R,z){L[R]=z,++D===k&&M(L)},A)})}),r(y,"race",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");h(T,_,function(L,D){M(D)},A)})}),y})});var kr=B((Npe,eh)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(v){return r.call(v)},a=self.document;function n(v){return v&&(v.ownerDocument||v.document||v).documentElement}function i(v){return v&&(v.ownerDocument&&v.ownerDocument.defaultView||v.document&&v||v.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(v){t=function(g){for(var w=g.length,q=new Array(w);w--;)q[w]=g[w];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(v){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(g,w){o.call(this,g,w+"")},l.setAttributeNS=function(g,w,q){s.call(this,g,w,q+"")},u.setProperty=function(g,w,q){f.call(this,g,w+"",q)}}e.ascending=c;function c(v,g){return vg?1:v>=g?0:NaN}e.descending=function(v,g){return gv?1:g>=v?0:NaN},e.min=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wS&&(C=S)}else{for(;++w=S){C=S;break}for(;++wS&&(C=S)}return C},e.max=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wC&&(C=S)}else{for(;++w=S){C=S;break}for(;++wC&&(C=S)}return C},e.extent=function(v,g){var w=-1,q=v.length,C,S,N;if(arguments.length===1){for(;++w=S){C=N=S;break}for(;++wS&&(C=S),N=S){C=N=S;break}for(;++wS&&(C=S),N1)return N/(F-1)},e.deviation=function(){var v=e.variance.apply(this,arguments);return v&&Math.sqrt(v)};function p(v){return{left:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)<0?q=S+1:C=S}return q},right:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)>0?C=S:q=S+1}return q}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.right,e.bisector=function(v){return p(v.length===1?function(g,w){return c(v(g),w)}:v)},e.shuffle=function(v,g,w){(q=arguments.length)<3&&(w=v.length,q<2&&(g=0));for(var q=w-g,C,S;q;)S=Math.random()*q--|0,C=v[q+g],v[q+g]=v[S+g],v[S+g]=C;return v},e.permute=function(v,g){for(var w=g.length,q=new Array(w);w--;)q[w]=v[g[w]];return q},e.pairs=function(v){for(var g=0,w=v.length-1,q,C=v[0],S=new Array(w<0?0:w);g=0;)for(N=v[g],w=N.length;--w>=0;)S[--C]=N[w];return S};var b=Math.abs;e.range=function(v,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=v,v=0)),(g-v)/w===1/0)throw new Error("infinite range");var q=[],C=_(b(w)),S=-1,N;if(v*=C,g*=C,w*=C,w<0)for(;(N=v+w*++S)>g;)q.push(N/C);else for(;(N=v+w*++S)=g.length)return C?C.call(v,F):q?F.sort(q):F;for(var $=-1,j=F.length,ee=g[J++],me,Te,ae,oe=new x,he;++$=g.length)return E;var J=[],$=w[F++];return E.forEach(function(j,ee){J.push({key:j,values:N(ee,F)})}),$?J.sort(function(j,ee){return $(j.key,ee.key)}):J}return v.map=function(E,F){return S(F,E,0)},v.entries=function(E){return N(S(e.map,E,0),0)},v.key=function(E){return g.push(E),v},v.sortKeys=function(E){return w[g.length-1]=E,v},v.sortValues=function(E){return q=E,v},v.rollup=function(E){return C=E,v},v},e.set=function(v){var g=new O;if(v)for(var w=0,q=v.length;w=0&&(q=v.slice(w+1),v=v.slice(0,w)),v)return arguments.length<2?this[v].on(q):this[v].on(q,g);if(arguments.length===2){if(g==null)for(v in this)this.hasOwnProperty(v)&&this[v].on(q,null);return this}};function K(v){var g=[],w=new x;function q(){for(var C=g,S=-1,N=C.length,E;++S=0&&(w=v.slice(0,g))!=="xmlns"&&(v=v.slice(g+1)),ye.hasOwnProperty(w)?{space:ye[w],local:v}:v}},be.attr=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node();return v=e.ns.qualify(v),v.local?w.getAttributeNS(v.space,v.local):w.getAttribute(v)}for(g in v)this.each(_e(g,v[g]));return this}return this.each(_e(v,g))};function _e(v,g){v=e.ns.qualify(v);function w(){this.removeAttribute(v)}function q(){this.removeAttributeNS(v.space,v.local)}function C(){this.setAttribute(v,g)}function S(){this.setAttributeNS(v.space,v.local,g)}function N(){var F=g.apply(this,arguments);F==null?this.removeAttribute(v):this.setAttribute(v,F)}function E(){var F=g.apply(this,arguments);F==null?this.removeAttributeNS(v.space,v.local):this.setAttributeNS(v.space,v.local,F)}return g==null?v.local?q:w:typeof g=="function"?v.local?E:N:v.local?S:C}function xe(v){return v.trim().replace(/\s+/g," ")}be.classed=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node(),q=(v=ze(v)).length,C=-1;if(g=w.classList){for(;++C=0;)(S=w[q])&&(C&&C!==S.nextSibling&&C.parentNode.insertBefore(S,C),C=S);return this},be.sort=function(v){v=Ae.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=C+1);!(F=N[g])&&++g0&&(v=v.slice(0,C));var N=Ye.get(v);N&&(v=N,S=Ge);function E(){var $=this[q];$&&(this.removeEventListener(v,$,$.$),delete this[q])}function F(){var $=S(g,t(arguments));E.call(this),this.addEventListener(v,this[q]=$,$.$=w),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(v)+"$"),j;for(var ee in this)if(j=ee.match($)){var me=this[ee];this.removeEventListener(j[1],me,me.$),delete this[ee]}}return C?g?F:E:g?G:J}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(v){"on"+v in a&&Ye.remove(v)});function Xe(v,g){return function(w){var q=e.event;e.event=w,g[0]=this.__data__;try{v.apply(this,g)}finally{e.event=q}}}function Ge(v,g){var w=Xe(v,g);return function(q){var C=this,S=q.relatedTarget;(!S||S!==C&&!(S.compareDocumentPosition(C)&8))&&w.call(C,q)}}var Oe,$e=0;function fr(v){var g=".dragsuppress-"+ ++$e,w="click"+g,q=e.select(i(v)).on("touchmove"+g,re).on("dragstart"+g,re).on("selectstart"+g,re);if(Oe==null&&(Oe="onselectstart"in v?!1:Y(v.style,"userSelect")),Oe){var C=n(v).style,S=C[Oe];C[Oe]="none"}return function(N){if(q.on(g,null),Oe&&(C[Oe]=S),N){var E=function(){q.on(w,null)};q.on(w,function(){re(),E()},!0),setTimeout(E,0)}}}e.mouse=function(v){return Ne(v,se())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ne(v,g){g.changedTouches&&(g=g.changedTouches[0]);var w=v.ownerSVGElement||v;if(w.createSVGPoint){var q=w.createSVGPoint();if(lr<0){var C=i(v);if(C.scrollX||C.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var S=w[0][0].getScreenCTM();lr=!(S.f||S.e),w.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(v.getScreenCTM().inverse()),[q.x,q.y]}var N=v.getBoundingClientRect();return[g.clientX-N.left-v.clientLeft,g.clientY-N.top-v.clientTop]}e.touch=function(v,g,w){if(arguments.length<3&&(w=g,g=se().changedTouches),g){for(var q=0,C=g.length,S;q0?1:v<0?-1:0}function Wr(v,g,w){return(g[0]-v[0])*(w[1]-v[1])-(g[1]-v[1])*(w[0]-v[0])}function Nt(v){return v>1?0:v<-1?qe:Math.acos(v)}function oa(v){return v>1?sr:v<-1?-sr:Math.asin(v)}function Na(v){return((v=Math.exp(v))-1/v)/2}function sa(v){return((v=Math.exp(v))+1/v)/2}function Sn(v){return((v=Math.exp(2*v))-1)/(v+1)}function Za(v){return(v=Math.sin(v/2))*v}var ua=Math.SQRT2,Ja=2,gr=4;e.interpolateZoom=function(v,g){var w=v[0],q=v[1],C=v[2],S=g[0],N=g[1],E=g[2],F=S-w,J=N-q,$=F*F+J*J,j,ee;if($0&&(er=er.transition().duration(N)),er.call(Me.event)}function hr(){oe&&oe.domain(ae.range().map(function(er){return(er-v.x)/v.k}).map(ae.invert)),we&&we.domain(he.range().map(function(er){return(er-v.y)/v.k}).map(he.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:v.k,translate:[v.x,v.y]})}function pr(er){--E||(er({type:"zoomend"}),w=null)}function Mr(){var er=this,Dr=Te.of(er,arguments),Pr=0,Qr=e.select(i(er)).on(J,xa).on($,Ha),kt=pe(e.mouse(er)),Zt=fr(er);Z0.call(er),dr(Dr);function xa(){Pr=1,or(e.mouse(er),kt),Sr(Dr)}function Ha(){Qr.on(J,null).on($,null),Zt(Pr),pr(Dr)}}function Kr(){var er=this,Dr=Te.of(er,arguments),Pr={},Qr=0,kt,Zt=".zoom-"+e.event.changedTouches[0].identifier,xa="touchmove"+Zt,Ha="touchend"+Zt,$a=[],Oa=e.select(er),en=fr(er);rn(),dr(Dr),Oa.on(F,null).on(ee,rn);function La(){var oi=e.touches(er);return kt=v.k,oi.forEach(function(ba){ba.identifier in Pr&&(Pr[ba.identifier]=pe(ba))}),oi}function rn(){var oi=e.event.target;e.select(oi).on(xa,Fo).on(Ha,WW),$a.push(oi);for(var ba=e.event.changedTouches,Pn=0,zi=ba.length;Pn1){var Io=En[0],Pl=En[1],K0=Io[0]-Pl[0],Y4=Io[1]-Pl[1];Qr=K0*K0+Y4*Y4}}function Fo(){var oi=e.touches(er),ba,Pn,zi,En;Z0.call(er);for(var fu=0,Io=oi.length;fu1?1:g,w=w<0?0:w>1?1:w,C=w<=.5?w*(1+g):w+g-w*g,q=2*w-C;function S(E){return E>360?E-=360:E<0&&(E+=360),E<60?q+(C-q)*E/60:E<180?C:E<240?q+(C-q)*(240-E)/60:q}function N(E){return Math.round(S(E)*255)}return new Ia(N(v+120),N(v),N(v-120))}e.hcl=fa;function fa(v,g,w){return this instanceof fa?(this.h=+v,this.c=+g,void(this.l=+w)):arguments.length<2?v instanceof fa?new fa(v.h,v.c,v.l):v instanceof Qt?q0(v.l,v.a,v.b):q0((v=nr((v=e.rgb(v)).r,v.g,v.b)).l,v.a,v.b):new fa(v,g,w)}var ai=fa.prototype=new Lt;ai.brighter=function(v){return new fa(this.h,this.c,Math.min(100,this.l+it*(arguments.length?v:1)))},ai.darker=function(v){return new fa(this.h,this.c,Math.max(0,this.l-it*(arguments.length?v:1)))},ai.rgb=function(){return ni(this.h,this.c,this.l).rgb()};function ni(v,g,w){return isNaN(v)&&(v=0),isNaN(g)&&(g=0),new Qt(w,Math.cos(v*=Ar)*g,Math.sin(v)*g)}e.lab=Qt;function Qt(v,g,w){return this instanceof Qt?(this.l=+v,this.a=+g,void(this.b=+w)):arguments.length<2?v instanceof Qt?new Qt(v.l,v.a,v.b):v instanceof fa?ni(v.h,v.c,v.l):nr((v=Ia(v)).r,v.g,v.b):new Qt(v,g,w)}var it=18,ma=.95047,Do=1,Po=1.08883,Sl=Qt.prototype=new Lt;Sl.brighter=function(v){return new Qt(Math.min(100,this.l+it*(arguments.length?v:1)),this.a,this.b)},Sl.darker=function(v){return new Qt(Math.max(0,this.l-it*(arguments.length?v:1)),this.a,this.b)},Sl.rgb=function(){return k0(this.l,this.a,this.b)};function k0(v,g,w){var q=(v+16)/116,C=q+g/500,S=q-w/200;return C=ac(C)*ma,q=ac(q)*Do,S=ac(S)*Po,new Ia(ic(3.2404542*C-1.5371385*q-.4985314*S),ic(-.969266*C+1.8760108*q+.041556*S),ic(.0556434*C-.2040259*q+1.0572252*S))}function q0(v,g,w){return v>0?new fa(Math.atan2(w,g)*Ur,Math.sqrt(g*g+w*w),v):new fa(NaN,NaN,v)}function ac(v){return v>.206893034?v*v*v:(v-4/29)/7.787037}function nc(v){return v>.008856?Math.pow(v,1/3):7.787037*v+4/29}function ic(v){return Math.round(255*(v<=.00304?12.92*v:1.055*Math.pow(v,1/2.4)-.055))}e.rgb=Ia;function Ia(v,g,w){return this instanceof Ia?(this.r=~~v,this.g=~~g,void(this.b=~~w)):arguments.length<2?v instanceof Ia?new Ia(v.r,v.g,v.b):Zr(""+v,Ia,Fa):new Ia(v,g,w)}function C0(v){return new Ia(v>>16,v>>8&255,v&255)}function tu(v){return C0(v)+""}var au=Ia.prototype=new Lt;au.brighter=function(v){v=Math.pow(.7,arguments.length?v:1);var g=this.r,w=this.g,q=this.b,C=30;return!g&&!w&&!q?new Ia(C,C,C):(g&&g>4,q=q>>4|q,C=F&240,C=C>>4|C,S=F&15,S=S<<4|S):v.length===7&&(q=(F&16711680)>>16,C=(F&65280)>>8,S=F&255)),g(q,C,S))}function rt(v,g,w){var q=Math.min(v/=255,g/=255,w/=255),C=Math.max(v,g,w),S=C-q,N,E,F=(C+q)/2;return S?(E=F<.5?S/(C+q):S/(2-C-q),v==C?N=(g-w)/S+(g0&&F<1?0:N),new ct(N,E,F)}function nr(v,g,w){v=ya(v),g=ya(g),w=ya(w);var q=nc((.4124564*v+.3575761*g+.1804375*w)/ma),C=nc((.2126729*v+.7151522*g+.072175*w)/Do),S=nc((.0193339*v+.119192*g+.9503041*w)/Po);return Qt(116*C-16,500*(q-C),200*(C-S))}function ya(v){return(v/=255)<=.04045?v/12.92:Math.pow((v+.055)/1.055,2.4)}function vt(v){var g=parseFloat(v);return v.charAt(v.length-1)==="%"?Math.round(g*2.55):g}var ga=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});ga.forEach(function(v,g){ga.set(v,C0(g))});function Nr(v){return typeof v=="function"?v:function(){return v}}e.functor=Nr,e.xhr=ii(U);function ii(v){return function(g,w,q){return arguments.length===2&&typeof w=="function"&&(q=w,w=null),Eo(g,w,v,q)}}function Eo(v,g,w,q){var C={},S=e.dispatch("beforesend","progress","load","error"),N={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(v)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=J:E.onreadystatechange=function(){E.readyState>3&&J()};function J(){var $=E.status,j;if(!$&&ZU(E)||$>=200&&$<300||$===304){try{j=w.call(C,E)}catch(ee){S.error.call(C,ee);return}S.load.call(C,j)}else S.error.call(C,E)}return E.onprogress=function($){var j=e.event;e.event=$;try{S.progress.call(C,E)}finally{e.event=j}},C.header=function($,j){return $=($+"").toLowerCase(),arguments.length<2?N[$]:(j==null?delete N[$]:N[$]=j+"",C)},C.mimeType=function($){return arguments.length?(g=$==null?null:$+"",C):g},C.responseType=function($){return arguments.length?(F=$,C):F},C.response=function($){return w=$,C},["get","post"].forEach(function($){C[$]=function(){return C.send.apply(C,[$].concat(t(arguments)))}}),C.send=function($,j,ee){if(arguments.length===2&&typeof j=="function"&&(ee=j,j=null),E.open($,v,!0),g!=null&&!("accept"in N)&&(N.accept=g+",*/*"),E.setRequestHeader)for(var me in N)E.setRequestHeader(me,N[me]);return g!=null&&E.overrideMimeType&&E.overrideMimeType(g),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(Te){ee(null,Te)}),S.beforesend.call(C,E),E.send(j==null?null:j),C},C.abort=function(){return E.abort(),C},e.rebind(C,S,"on"),q==null?C:C.get(XU(q))}function XU(v){return v.length===1?function(g,w){v(g==null?w:null)}:v}function ZU(v){var g=v.responseType;return g&&g!=="text"?v.response:v.responseText}e.dsv=function(v,g){var w=new RegExp('["'+v+` ]`),q=v.charCodeAt(0);function C(J,$,j){arguments.length<3&&(j=$,$=null);var ee=Eo(J,g,$==null?S:N($),j);return ee.row=function(me){return arguments.length?ee.response(($=me)==null?S:N(me)):$},ee}function S(J){return C.parse(J.responseText)}function N(J){return function($){return C.parse($.responseText,J)}}C.parse=function(J,$){var j;return C.parseRows(J,function(ee,me){if(j)return j(ee,me-1);var Te=function(ae){for(var oe={},he=ee.length,we=0;we=Te)return ee;if(we)return we=!1,j;var Ue=ae;if(J.charCodeAt(Ue)===34){for(var rr=Ue;rr++24?(isFinite(g)&&(clearTimeout(P0),P0=setTimeout(Jm,g)),D0=0):(D0=1,C_(Jm))}e.timer.flush=function(){L_(),S_()};function L_(){for(var v=Date.now(),g=L0;g;)v>=g.t&&g.c(v-g.t)&&(g.c=null),g=g.n;return v}function S_(){for(var v,g=L0,w=1/0;g;)g.c?(g.t=0;--E)ae.push(C[J[j[E]][2]]);for(E=+me;E1&&Wr(v[w[q-2]],v[w[q-1]],v[C])<=0;)--q;w[q++]=C}return w.slice(0,q)}function JU(v,g){return v[0]-g[0]||v[1]-g[1]}e.geom.polygon=function(v){return Q(v,R0),v};var R0=e.geom.polygon.prototype=[];R0.area=function(){for(var v=-1,g=this.length,w,q=this[g-1],C=0;++vfe)E=E.L;else if(N=g-jU(E,w),N>fe){if(!E.R){q=E;break}E=E.R}else{S>-fe?(q=E.P,C=E):N>-fe?(q=E,C=E.N):q=C=E;break}var F=z_(v);if(lu.insert(q,F),!(!q&&!C)){if(q===C){su(q),C=z_(q.site),lu.insert(F,C),F.edge=C.edge=sc(q.site,F.site),ou(q),ou(C);return}if(!C){F.edge=sc(q.site,F.site);return}su(q),su(C);var J=q.site,$=J.x,j=J.y,ee=v.x-$,me=v.y-j,Te=C.site,ae=Te.x-$,oe=Te.y-j,he=2*(ee*oe-me*ae),we=ee*ee+me*me,Me=ae*ae+oe*oe,pe={x:(oe*we-me*Me)/he+$,y:(ee*Me-ae*we)/he+j};z0(C.edge,J,Te,pe),F.edge=sc(J,v,null,pe),C.edge=sc(v,Te,null,pe),ou(q),ou(C)}}function N_(v,g){var w=v.site,q=w.x,C=w.y,S=C-g;if(!S)return q;var N=v.P;if(!N)return-1/0;w=N.site;var E=w.x,F=w.y,J=F-g;if(!J)return E;var $=E-q,j=1/S-1/J,ee=$/J;return j?(-ee+Math.sqrt(ee*ee-2*j*($*$/(-2*J)-F+J/2+C-S/2)))/j+q:(q+E)/2}function jU(v,g){var w=v.N;if(w)return N_(w,g);var q=v.site;return q.y===g?q.x:1/0}function F_(v){this.site=v,this.edges=[]}F_.prototype.prepare=function(){for(var v=this.edges,g=v.length,w;g--;)w=v[g].edge,(!w.b||!w.a)&&v.splice(g,1);return v.sort(I_),v.length};function eV(v){for(var g=v[0][0],w=v[1][0],q=v[0][1],C=v[1][1],S,N,E,F,J=Ro,$=J.length,j,ee,me,Te,ae,oe;$--;)if(j=J[$],!(!j||!j.prepare()))for(me=j.edges,Te=me.length,ee=0;eefe||b(F-N)>fe)&&(me.splice(ee,0,new N0(iV(j.site,oe,b(E-g)fe?{x:g,y:b(S-g)fe?{x:b(N-C)fe?{x:w,y:b(S-w)fe?{x:b(N-q)=-Se)){var ee=F*F+J*J,me=$*$+oe*oe,Te=(oe*ee-J*me)/j,ae=(F*me-$*ee)/j,oe=ae+E,he=R_.pop()||new rV;he.arc=v,he.site=C,he.x=Te+N,he.y=oe+Math.sqrt(Te*Te+ae*ae),he.cy=oe,v.circle=he;for(var we=null,Me=oc._;Me;)if(he.y0)){if(ae/=me,me<0){if(ae0){if(ae>ee)return;ae>j&&(j=ae)}if(ae=w-E,!(!me&&ae<0)){if(ae/=me,me<0){if(ae>ee)return;ae>j&&(j=ae)}else if(me>0){if(ae0)){if(ae/=Te,Te<0){if(ae0){if(ae>ee)return;ae>j&&(j=ae)}if(ae=q-F,!(!Te&&ae<0)){if(ae/=Te,Te<0){if(ae>ee)return;ae>j&&(j=ae)}else if(Te>0){if(ae0&&(C.a={x:E+j*me,y:F+j*Te}),ee<1&&(C.b={x:E+ee*me,y:F+ee*Te}),C}}}}}}function aV(v){for(var g=iu,w=tV(v[0][0],v[0][1],v[1][0],v[1][1]),q=g.length,C;q--;)C=g[q],(!nV(C,v)||!w(C)||b(C.a.x-C.b.x)=S)return;if($>ee){if(!q)q={x:Te,y:N};else if(q.y>=E)return;w={x:Te,y:E}}else{if(!q)q={x:Te,y:E};else if(q.y1)if($>ee){if(!q)q={x:(N-he)/oe,y:N};else if(q.y>=E)return;w={x:(E-he)/oe,y:E}}else{if(!q)q={x:(E-he)/oe,y:E};else if(q.y=S)return;w={x:S,y:oe*S+he}}else{if(!q)q={x:S,y:oe*S+he};else if(q.x=$&&he.x<=ee&&he.y>=j&&he.y<=me?[[$,me],[ee,me],[ee,j],[$,j]]:[];we.point=F[ae]}),J}function E(F){return F.map(function(J,$){return{x:Math.round(q(J,$)/fe)*fe,y:Math.round(C(J,$)/fe)*fe,i:$}})}return N.links=function(F){return ry(E(F)).edges.filter(function(J){return J.l&&J.r}).map(function(J){return{source:F[J.l.i],target:F[J.r.i]}})},N.triangles=function(F){var J=[];return ry(E(F)).cells.forEach(function($,j){for(var ee=$.site,me=$.edges.sort(I_),Te=-1,ae=me.length,oe,he,we=me[ae-1].edge,Me=we.l===ee?we.r:we.l;++TeMe&&(Me=$.x),$.y>pe&&(pe=$.y),me.push($.x),Te.push($.y);else for(ae=0;aeMe&&(Me=Ue),rr>pe&&(pe=rr),me.push(Ue),Te.push(rr)}var or=Me-he,ar=pe-we;or>ar?pe=we+or:Me=he+ar;function hr(pr,Mr,Kr,Ft,at,er,Dr,Pr){if(!(isNaN(Kr)||isNaN(Ft)))if(pr.leaf){var Qr=pr.x,kt=pr.y;if(Qr!=null)if(b(Qr-Kr)+b(kt-Ft)<.01)dr(pr,Mr,Kr,Ft,at,er,Dr,Pr);else{var Zt=pr.point;pr.x=pr.y=pr.point=null,dr(pr,Zt,Qr,kt,at,er,Dr,Pr),dr(pr,Mr,Kr,Ft,at,er,Dr,Pr)}else pr.x=Kr,pr.y=Ft,pr.point=Mr}else dr(pr,Mr,Kr,Ft,at,er,Dr,Pr)}function dr(pr,Mr,Kr,Ft,at,er,Dr,Pr){var Qr=(at+Dr)*.5,kt=(er+Pr)*.5,Zt=Kr>=Qr,xa=Ft>=kt,Ha=xa<<1|Zt;pr.leaf=!1,pr=pr.nodes[Ha]||(pr.nodes[Ha]=B_()),Zt?at=Qr:Dr=Qr,xa?er=kt:Pr=kt,hr(pr,Mr,Kr,Ft,at,er,Dr,Pr)}var Sr=B_();if(Sr.add=function(pr){hr(Sr,pr,+j(pr,++ae),+ee(pr,ae),he,we,Me,pe)},Sr.visit=function(pr){cc(pr,Sr,he,we,Me,pe)},Sr.find=function(pr){return fV(Sr,pr[0],pr[1],he,we,Me,pe)},ae=-1,g==null){for(;++aeS||ee>N||me=Ue,ar=w>=rr,hr=ar<<1|or,dr=hr+4;hrw&&(S=g.slice(w,S),E[N]?E[N]+=S:E[++N]=S),(q=q[0])===(C=C[0])?E[N]?E[N]+=C:E[++N]=C:(E[++N]=null,F.push({i:N,x:nl(q,C)})),w=ny.lastIndex;return w=0&&!(q=e.interpolators[w](v,g)););return q}e.interpolators=[function(v,g){var w=typeof g;return(w==="string"?ga.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?ty:G_:g instanceof Lt?ty:Array.isArray(g)?H0:w==="object"&&isNaN(g)?Y_:nl)(v,g)}],e.interpolateArray=H0;function H0(v,g){var w=[],q=[],C=v.length,S=g.length,N=Math.min(v.length,g.length),E;for(E=0;E=0?v.slice(0,g):v,q=g>=0?v.slice(g+1):"in";return w=cV.get(w)||U_,q=vV.get(q)||U,hV(q(w.apply(null,r.call(arguments,1))))};function hV(v){return function(g){return g<=0?0:g>=1?1:v(g)}}function V_(v){return function(g){return 1-v(1-g)}}function W_(v){return function(g){return .5*(g<.5?v(2*g):2-v(2-2*g))}}function dV(v){return v*v}function pV(v){return v*v*v}function mV(v){if(v<=0)return 0;if(v>=1)return 1;var g=v*v,w=g*v;return 4*(v<.5?w:3*(v-g)+w-.75)}function yV(v){return function(g){return Math.pow(g,v)}}function gV(v){return 1-Math.cos(v*sr)}function xV(v){return Math.pow(2,10*(v-1))}function bV(v){return 1-Math.sqrt(1-v*v)}function _V(v,g){var w;return arguments.length<2&&(g=.45),arguments.length?w=g/ir*Math.asin(1/v):(v=1,w=g/4),function(q){return 1+v*Math.pow(2,-10*q)*Math.sin((q-w)*ir/g)}}function wV(v){return v||(v=1.70158),function(g){return g*g*((v+1)*g-v)}}function TV(v){return v<1/2.75?7.5625*v*v:v<2/2.75?7.5625*(v-=1.5/2.75)*v+.75:v<2.5/2.75?7.5625*(v-=2.25/2.75)*v+.9375:7.5625*(v-=2.625/2.75)*v+.984375}e.interpolateHcl=MV;function MV(v,g){v=e.hcl(v),g=e.hcl(g);var w=v.h,q=v.c,C=v.l,S=g.h-w,N=g.c-q,E=g.l-C;return isNaN(N)&&(N=0,q=isNaN(q)?g.c:q),isNaN(S)?(S=0,w=isNaN(w)?g.h:w):S>180?S-=360:S<-180&&(S+=360),function(F){return ni(w+S*F,q+N*F,C+E*F)+""}}e.interpolateHsl=AV;function AV(v,g){v=e.hsl(v),g=e.hsl(g);var w=v.h,q=v.s,C=v.l,S=g.h-w,N=g.s-q,E=g.l-C;return isNaN(N)&&(N=0,q=isNaN(q)?g.s:q),isNaN(S)?(S=0,w=isNaN(w)?g.h:w):S>180?S-=360:S<-180&&(S+=360),function(F){return Fa(w+S*F,q+N*F,C+E*F)+""}}e.interpolateLab=kV;function kV(v,g){v=e.lab(v),g=e.lab(g);var w=v.l,q=v.a,C=v.b,S=g.l-w,N=g.a-q,E=g.b-C;return function(F){return k0(w+S*F,q+N*F,C+E*F)+""}}e.interpolateRound=X_;function X_(v,g){return g-=v,function(w){return Math.round(v+g*w)}}e.transform=function(v){var g=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(w){if(w!=null){g.setAttribute("transform",w);var q=g.transform.baseVal.consolidate()}return new Z_(q?q.matrix:CV)})(v)};function Z_(v){var g=[v.a,v.b],w=[v.c,v.d],q=$_(g),C=J_(g,w),S=$_(qV(w,g,-C))||0;g[0]*w[1]180?g+=360:g-v>180&&(v+=360),q.push({i:w.push(uu(w)+"rotate(",null,")")-2,x:nl(v,g)})):g&&w.push(uu(w)+"rotate("+g+")")}function DV(v,g,w,q){v!==g?q.push({i:w.push(uu(w)+"skewX(",null,")")-2,x:nl(v,g)}):g&&w.push(uu(w)+"skewX("+g+")")}function PV(v,g,w,q){if(v[0]!==g[0]||v[1]!==g[1]){var C=w.push(uu(w)+"scale(",null,",",null,")");q.push({i:C-4,x:nl(v[0],g[0])},{i:C-2,x:nl(v[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(uu(w)+"scale("+g+")")}function K_(v,g){var w=[],q=[];return v=e.transform(v),g=e.transform(g),LV(v.translate,g.translate,w,q),SV(v.rotate,g.rotate,w,q),DV(v.skew,g.skew,w,q),PV(v.scale,g.scale,w,q),v=g=null,function(C){for(var S=-1,N=q.length,E;++S0?S=pe:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:S=0})):pe>0&&(g.start({type:"start",alpha:S=pe}),w=E0(v.tick)),v):S},v.start=function(){var pe,Ue=me.length,rr=Te.length,or=q[0],ar=q[1],hr,dr;for(pe=0;pe=0;)S.push($=J[F]),$.parent=E,$.depth=E.depth+1;w&&(E.value=0),E.children=J}else w&&(E.value=+w.call(q,E,E.depth)||0),delete E.children;return Ri(C,function(j){var ee,me;v&&(ee=j.children)&&ee.sort(v),w&&(me=j.parent)&&(me.value+=j.value)}),N}return q.sort=function(C){return arguments.length?(v=C,q):v},q.children=function(C){return arguments.length?(g=C,q):g},q.value=function(C){return arguments.length?(w=C,q):w},q.revalue=function(C){return w&&(hc(C,function(S){S.children&&(S.value=0)}),Ri(C,function(S){var N;S.children||(S.value=+w.call(q,S,S.depth)||0),(N=S.parent)&&(N.value+=S.value)})),C},q};function vc(v,g){return e.rebind(v,g,"sort","children","value"),v.nodes=v,v.links=XV,v}function hc(v,g){for(var w=[v];(v=w.pop())!=null;)if(g(v),(C=v.children)&&(q=C.length))for(var q,C;--q>=0;)w.push(C[q])}function Ri(v,g){for(var w=[v],q=[];(v=w.pop())!=null;)if(q.push(v),(N=v.children)&&(S=N.length))for(var C=-1,S,N;++CC&&(C=E),q.push(E)}for(N=0;Nq&&(w=g,q=C);return w}function eW(v){return v.reduce(rW,0)}function rW(v,g){return v+g[1]}e.layout.histogram=function(){var v=!0,g=Number,w=aW,q=tW;function C(S,ee){for(var E=[],F=S.map(g,this),J=w.call(this,F,ee),$=q.call(this,J,F,ee),j,ee=-1,me=F.length,Te=$.length-1,ae=v?1:1/me,oe;++ee0)for(ee=-1;++ee=J[0]&&oe<=J[1]&&(j=E[e.bisect($,oe,1,Te)-1],j.y+=ae,j.push(S[ee]));return E}return C.value=function(S){return arguments.length?(g=S,C):g},C.range=function(S){return arguments.length?(w=Nr(S),C):w},C.bins=function(S){return arguments.length?(q=typeof S=="number"?function(N){return r4(N,S)}:Nr(S),C):q},C.frequency=function(S){return arguments.length?(v=!!S,C):v},C};function tW(v,g){return r4(v,Math.ceil(Math.log(g.length)/Math.LN2+1))}function r4(v,g){for(var w=-1,q=+v[0],C=(v[1]-q)/g,S=[];++w<=g;)S[w]=C*w+q;return S}function aW(v){return[e.min(v),e.max(v)]}e.layout.pack=function(){var v=e.layout.hierarchy().sort(nW),g=0,w=[1,1],q;function C(S,N){var E=v.call(this,S,N),F=E[0],J=w[0],$=w[1],j=q==null?Math.sqrt:typeof q=="function"?q:function(){return q};if(F.x=F.y=0,Ri(F,function(me){me.r=+j(me.value)}),Ri(F,n4),g){var ee=g*(q?1:Math.max(2*F.r/J,2*F.r/$))/2;Ri(F,function(me){me.r+=ee}),Ri(F,n4),Ri(F,function(me){me.r-=ee})}return i4(F,J/2,$/2,q?1:1/Math.max(2*F.r/J,2*F.r/$)),E}return C.size=function(S){return arguments.length?(w=S,C):w},C.radius=function(S){return arguments.length?(q=S==null||typeof S=="function"?S:+S,C):q},C.padding=function(S){return arguments.length?(g=+S,C):g},vc(C,v)};function nW(v,g){return v.value-g.value}function oy(v,g){var w=v._pack_next;v._pack_next=g,g._pack_prev=v,g._pack_next=w,w._pack_prev=g}function t4(v,g){v._pack_next=g,g._pack_prev=v}function a4(v,g){var w=g.x-v.x,q=g.y-v.y,C=v.r+g.r;return .999*C*C>w*w+q*q}function n4(v){if(!(g=v.children)||!(ee=g.length))return;var g,w=1/0,q=-1/0,C=1/0,S=-1/0,N,E,F,J,$,j,ee;function me(pe){w=Math.min(pe.x-pe.r,w),q=Math.max(pe.x+pe.r,q),C=Math.min(pe.y-pe.r,C),S=Math.max(pe.y+pe.r,S)}if(g.forEach(iW),N=g[0],N.x=-N.r,N.y=0,me(N),ee>1&&(E=g[1],E.x=E.r,E.y=0,me(E),ee>2))for(F=g[2],l4(N,E,F),me(F),oy(N,F),N._pack_prev=F,oy(F,E),E=N._pack_next,J=3;Joe.x&&(oe=Ue),Ue.depth>he.depth&&(he=Ue)});var we=g(ae,oe)/2-ae.x,Me=w[0]/(oe.x+g(oe,ae)/2+we),pe=w[1]/(he.depth||1);hc(me,function(Ue){Ue.x=(Ue.x+we)*Me,Ue.y=Ue.depth*pe})}return ee}function S($){for(var j={A:null,children:[$]},ee=[j],me;(me=ee.pop())!=null;)for(var Te=me.children,ae,oe=0,he=Te.length;oe0&&(oW(uW(ae,$,ee),$,Ue),he+=Ue,we+=Ue),Me+=ae.m,he+=me.m,pe+=oe.m,we+=Te.m;ae&&!uy(Te)&&(Te.t=ae,Te.m+=Me-we),me&&!sy(oe)&&(oe.t=me,oe.m+=he-pe,ee=$)}return ee}function J($){$.x*=w[0],$.y=$.depth*w[1]}return C.separation=function($){return arguments.length?(g=$,C):g},C.size=function($){return arguments.length?(q=(w=$)==null?J:null,C):q?null:w},C.nodeSize=function($){return arguments.length?(q=(w=$)==null?null:J,C):q?w:null},vc(C,v)};function o4(v,g){return v.parent==g.parent?1:2}function sy(v){var g=v.children;return g.length?g[0]:v.t}function uy(v){var g=v.children,w;return(w=g.length)?g[w-1]:v.t}function oW(v,g,w){var q=w/(g.i-v.i);g.c-=q,g.s+=w,v.c+=q,g.z+=w,g.m+=w}function sW(v){for(var g=0,w=0,q=v.children,C=q.length,S;--C>=0;)S=q[C],S.z+=g,S.m+=g,g+=S.s+(w+=S.c)}function uW(v,g,w){return v.a.parent===g.parent?v.a:w}e.layout.cluster=function(){var v=e.layout.hierarchy().sort(null).value(null),g=o4,w=[1,1],q=!1;function C(S,N){var E=v.call(this,S,N),F=E[0],J,$=0;Ri(F,function(ae){var oe=ae.children;oe&&oe.length?(ae.x=cW(oe),ae.y=fW(oe)):(ae.x=J?$+=g(ae,J):0,ae.y=0,J=ae)});var j=s4(F),ee=u4(F),me=j.x-g(j,ee)/2,Te=ee.x+g(ee,j)/2;return Ri(F,q?function(ae){ae.x=(ae.x-F.x)*w[0],ae.y=(F.y-ae.y)*w[1]}:function(ae){ae.x=(ae.x-me)/(Te-me)*w[0],ae.y=(1-(F.y?ae.y/F.y:1))*w[1]}),E}return C.separation=function(S){return arguments.length?(g=S,C):g},C.size=function(S){return arguments.length?(q=(w=S)==null,C):q?null:w},C.nodeSize=function(S){return arguments.length?(q=(w=S)!=null,C):q?w:null},vc(C,v)};function fW(v){return 1+e.max(v,function(g){return g.y})}function cW(v){return v.reduce(function(g,w){return g+w.x},0)/v.length}function s4(v){var g=v.children;return g&&g.length?s4(g[0]):v}function u4(v){var g=v.children,w;return g&&(w=g.length)?u4(g[w-1]):v}e.layout.treemap=function(){var v=e.layout.hierarchy(),g=Math.round,w=[1,1],q=null,C=fy,S=!1,N,E="squarify",F=.5*(1+Math.sqrt(5));function J(ae,oe){for(var he=-1,we=ae.length,Me,pe;++he0;)we.push(pe=Me[ar-1]),we.area+=pe.area,E!=="squarify"||(rr=ee(we,or))<=Ue?(Me.pop(),Ue=rr):(we.area-=we.pop().area,me(we,or,he,!1),or=Math.min(he.dx,he.dy),we.length=we.area=0,Ue=1/0);we.length&&(me(we,or,he,!0),we.length=we.area=0),oe.forEach($)}}function j(ae){var oe=ae.children;if(oe&&oe.length){var he=C(ae),we=oe.slice(),Me,pe=[];for(J(we,he.dx*he.dy/ae.value),pe.area=0;Me=we.pop();)pe.push(Me),pe.area+=Me.area,Me.z!=null&&(me(pe,Me.z?he.dx:he.dy,he,!we.length),pe.length=pe.area=0);oe.forEach(j)}}function ee(ae,oe){for(var he=ae.area,we,Me=0,pe=1/0,Ue=-1,rr=ae.length;++UeMe&&(Me=we));return he*=he,oe*=oe,he?Math.max(oe*Me*F/he,he/(oe*pe*F)):1/0}function me(ae,oe,he,we){var Me=-1,pe=ae.length,Ue=he.x,rr=he.y,or=oe?g(ae.area/oe):0,ar;if(oe==he.dx){for((we||or>he.dy)&&(or=he.dy);++Mehe.dx)&&(or=he.dx);++Me1);return v+g*q*Math.sqrt(-2*Math.log(S)/S)}},logNormal:function(){var v=e.random.normal.apply(e,arguments);return function(){return Math.exp(v())}},bates:function(v){var g=e.random.irwinHall(v);return function(){return g()/v}},irwinHall:function(v){return function(){for(var g=0,w=0;w2?dW:vW,J=q?RV:EV;return C=F(v,g,J,w),S=F(g,v,J,zo),E}function E(F){return C(F)}return E.invert=function(F){return S(F)},E.domain=function(F){return arguments.length?(v=F.map(Number),N()):v},E.range=function(F){return arguments.length?(g=F,N()):g},E.rangeRound=function(F){return E.range(F).interpolate(X_)},E.clamp=function(F){return arguments.length?(q=F,N()):q},E.interpolate=function(F){return arguments.length?(w=F,N()):w},E.ticks=function(F){return hy(v,F)},E.tickFormat=function(F,J){return d3_scale_linearTickFormat(v,F,J)},E.nice=function(F){return d4(v,F),N()},E.copy=function(){return v4(v,g,w,q)},N()}function h4(v,g){return e.rebind(v,g,"range","rangeRound","interpolate","clamp")}function d4(v,g){return cy(v,c4(vy(v,g)[2])),cy(v,c4(vy(v,g)[2])),v}function vy(v,g){g==null&&(g=10);var w=O0(v),q=w[1]-w[0],C=Math.pow(10,Math.floor(Math.log(q/g)/Math.LN10)),S=g/q*C;return S<=.15?C*=10:S<=.35?C*=5:S<=.75&&(C*=2),w[0]=Math.ceil(w[0]/C)*C,w[1]=Math.floor(w[1]/C)*C+C*.5,w[2]=C,w}function hy(v,g){return e.range.apply(e,vy(v,g))}var pW={s:1,g:1,p:1,r:1,e:1};function p4(v){return-Math.floor(Math.log(v)/Math.LN10+.01)}function Epe(v,g){var w=p4(g[2]);return v in pW?Math.abs(w-p4(Math.max(b(g[0]),b(g[1]))))+ +(v!=="e"):w-(v==="%")*2}e.scale.log=function(){return m4(e.scale.linear().domain([0,1]),10,!0,[1,10])};function m4(v,g,w,q){function C(E){return(w?Math.log(E<0?0:E):-Math.log(E>0?0:-E))/Math.log(g)}function S(E){return w?Math.pow(g,E):-Math.pow(g,-E)}function N(E){return v(C(E))}return N.invert=function(E){return S(v.invert(E))},N.domain=function(E){return arguments.length?(w=E[0]>=0,v.domain((q=E.map(Number)).map(C)),N):q},N.base=function(E){return arguments.length?(g=+E,v.domain(q.map(C)),N):g},N.nice=function(){var E=cy(q.map(C),w?Math:mW);return v.domain(E),q=E.map(S),N},N.ticks=function(){var E=O0(q),F=[],J=E[0],$=E[1],j=Math.floor(C(J)),ee=Math.ceil(C($)),me=g%1?2:g;if(isFinite(ee-j)){if(w){for(;j0;Te--)F.push(S(j)*Te);for(j=0;F[j]$;ee--);F=F.slice(j,ee)}return F},N.copy=function(){return m4(v.copy(),g,w,q)},h4(N,v)}var mW={floor:function(v){return-Math.ceil(-v)},ceil:function(v){return-Math.floor(-v)}};e.scale.pow=function(){return y4(e.scale.linear(),1,[0,1])};function y4(v,g,w){var q=Y0(g),C=Y0(1/g);function S(N){return v(q(N))}return S.invert=function(N){return C(v.invert(N))},S.domain=function(N){return arguments.length?(v.domain((w=N.map(Number)).map(q)),S):w},S.ticks=function(N){return hy(w,N)},S.tickFormat=function(N,E){return d3_scale_linearTickFormat(w,N,E)},S.nice=function(N){return S.domain(d4(w,N))},S.exponent=function(N){return arguments.length?(q=Y0(g=N),C=Y0(1/g),v.domain(w.map(q)),S):g},S.copy=function(){return y4(v.copy(),g,w)},h4(S,v)}function Y0(v){return function(g){return g<0?-Math.pow(-g,v):Math.pow(g,v)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return g4([],{t:"range",a:[[]]})};function g4(v,g){var w,q,C;function S(E){return q[((w.get(E)||(g.t==="range"?w.set(E,v.push(E)):NaN))-1)%q.length]}function N(E,F){return e.range(v.length).map(function(J){return E+F*J})}return S.domain=function(E){if(!arguments.length)return v;v=[],w=new x;for(var F=-1,J=E.length,$;++F0?w[S-1]:v[0],See?0:1;if($=vr)return F($,Te)+(J?F(J,1-Te):"")+"Z";var ae,oe,he,we,Me=0,pe=0,Ue,rr,or,ar,hr,dr,Sr,pr,Mr=[];if((we=(+N.apply(this,arguments)||0)/2)&&(he=q===G0?Math.sqrt(J*J+$*$):+q.apply(this,arguments),Te||(pe*=-1),$&&(pe=oa(he/$*Math.sin(we))),J&&(Me=oa(he/J*Math.sin(we)))),$){Ue=$*Math.cos(j+pe),rr=$*Math.sin(j+pe),or=$*Math.cos(ee-pe),ar=$*Math.sin(ee-pe);var Kr=Math.abs(ee-j-2*pe)<=qe?0:1;if(pe&&U0(Ue,rr,or,ar)===Te^Kr){var Ft=(j+ee)/2;Ue=$*Math.cos(Ft),rr=$*Math.sin(Ft),or=ar=null}}else Ue=rr=0;if(J){hr=J*Math.cos(ee-Me),dr=J*Math.sin(ee-Me),Sr=J*Math.cos(j+Me),pr=J*Math.sin(j+Me);var at=Math.abs(j-ee+2*Me)<=qe?0:1;if(Me&&U0(hr,dr,Sr,pr)===1-Te^at){var er=(j+ee)/2;hr=J*Math.cos(er),dr=J*Math.sin(er),Sr=pr=null}}else hr=dr=0;if(me>fe&&(ae=Math.min(Math.abs($-J)/2,+w.apply(this,arguments)))>.001){oe=J<$^Te?0:1;var Dr=ae,Pr=ae;if(me0?0:1}function V0(v,g,w,q,C){var S=v[0]-g[0],N=v[1]-g[1],E=(C?q:-q)/Math.sqrt(S*S+N*N),F=E*N,J=-E*S,$=v[0]+F,j=v[1]+J,ee=g[0]+F,me=g[1]+J,Te=($+ee)/2,ae=(j+me)/2,oe=ee-$,he=me-j,we=oe*oe+he*he,Me=w-q,pe=$*me-ee*j,Ue=(he<0?-1:1)*Math.sqrt(Math.max(0,Me*Me*we-pe*pe)),rr=(pe*he-oe*Ue)/we,or=(-pe*oe-he*Ue)/we,ar=(pe*he+oe*Ue)/we,hr=(-pe*oe+he*Ue)/we,dr=rr-Te,Sr=or-ae,pr=ar-Te,Mr=hr-ae;return dr*dr+Sr*Sr>pr*pr+Mr*Mr&&(rr=ar,or=hr),[[rr-F,or-J],[rr*w/Me,or*w/Me]]}function A4(){return!0}function k4(v){var g=nu,w=lc,q=A4,C=li,S=C.key,N=.7;function E(F){var J=[],$=[],j=-1,ee=F.length,me,Te=Nr(g),ae=Nr(w);function oe(){J.push("M",C(v($),N))}for(;++j1?v.join("L"):v+"Z"}function q4(v){return v.join("L")+"Z"}function AW(v){for(var g=0,w=v.length,q=v[0],C=[q[0],",",q[1]];++g1&&C.push("H",q[0]),C.join("")}function py(v){for(var g=0,w=v.length,q=v[0],C=[q[0],",",q[1]];++g1){E=g[1],S=v[F],F++,q+="C"+(C[0]+N[0])+","+(C[1]+N[1])+","+(S[0]-E[0])+","+(S[1]-E[1])+","+S[0]+","+S[1];for(var J=2;J9&&(S=w*3/Math.sqrt(S),N[E]=S*q,N[E+1]=S*C));for(E=-1;++E<=F;)S=(v[Math.min(F,E+1)][0]-v[Math.max(0,E-1)][0])/(6*(1+N[E]*N[E])),g.push([S||0,N[E]*S||0]);return g}function RW(v){return v.length<3?li(v):v[0]+W0(v,EW(v))}e.svg.line.radial=function(){var v=k4(D4);return v.radius=v.x,delete v.x,v.angle=v.y,delete v.y,v};function D4(v){for(var g,w=-1,q=v.length,C,S;++wqe)+",1 "+j}function J($,j,ee,me){return"Q 0,0 "+me}return S.radius=function($){return arguments.length?(w=Nr($),S):w},S.source=function($){return arguments.length?(v=Nr($),S):v},S.target=function($){return arguments.length?(g=Nr($),S):g},S.startAngle=function($){return arguments.length?(q=Nr($),S):q},S.endAngle=function($){return arguments.length?(C=Nr($),S):C},S};function zW(v){return v.radius}e.svg.diagonal=function(){var v=E4,g=R4,w=z4;function q(C,S){var N=v.call(this,C,S),E=g.call(this,C,S),F=(N.y+E.y)/2,J=[N,{x:N.x,y:F},{x:E.x,y:F},E];return J=J.map(w),"M"+J[0]+"C"+J[1]+" "+J[2]+" "+J[3]}return q.source=function(C){return arguments.length?(v=Nr(C),q):v},q.target=function(C){return arguments.length?(g=Nr(C),q):g},q.projection=function(C){return arguments.length?(w=C,q):w},q};function z4(v){return[v.x,v.y]}e.svg.diagonal.radial=function(){var v=e.svg.diagonal(),g=z4,w=v.projection;return v.projection=function(q){return arguments.length?w(NW(g=q)):g},v};function NW(v){return function(){var g=v.apply(this,arguments),w=g[0],q=g[1]-sr;return[w*Math.cos(q),w*Math.sin(q)]}}e.svg.symbol=function(){var v=IW,g=FW;function w(q,C){return(F4.get(v.call(this,q,C))||N4)(g.call(this,q,C))}return w.type=function(q){return arguments.length?(v=Nr(q),w):v},w.size=function(q){return arguments.length?(g=Nr(q),w):g},w};function FW(){return 64}function IW(){return"circle"}function N4(v){var g=Math.sqrt(v/qe);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var F4=e.map({circle:N4,cross:function(v){var g=Math.sqrt(v/5)/2;return"M"+-3*g+","+-g+"H"+-g+"V"+-3*g+"H"+g+"V"+-g+"H"+3*g+"V"+g+"H"+g+"V"+3*g+"H"+-g+"V"+g+"H"+-3*g+"Z"},diamond:function(v){var g=Math.sqrt(v/(2*I4)),w=g*I4;return"M0,"+-g+"L"+w+",0 0,"+g+" "+-w+",0Z"},square:function(v){var g=Math.sqrt(v)/2;return"M"+-g+","+-g+"L"+g+","+-g+" "+g+","+g+" "+-g+","+g+"Z"},"triangle-down":function(v){var g=Math.sqrt(v/X0),w=g*X0/2;return"M0,"+w+"L"+g+","+-w+" "+-g+","+-w+"Z"},"triangle-up":function(v){var g=Math.sqrt(v/X0),w=g*X0/2;return"M0,"+-w+"L"+g+","+w+" "+-g+","+w+"Z"}});e.svg.symbolTypes=F4.keys();var X0=Math.sqrt(3),I4=Math.tan(30*Ar);be.transition=function(v){for(var g=No||++O4,w=_y(v),q=[],C,S,N=J0||{time:Date.now(),ease:mV,delay:0,duration:250},E=-1,F=this.length;++E0;)j[--we].call(v,he);if(oe>=1)return N.event&&N.event.end.call(v,v.__data__,g),--S.count?delete S[q]:delete v[w],1}N||(E=C.time,F=E0(ee,0,E),N=S[q]={tween:new x,time:E,timer:F,delay:C.delay,duration:C.duration,ease:C.ease,index:g},C=null,++S.count)}e.svg.axis=function(){var v=e.scale.linear(),g=B4,w=6,q=6,C=3,S=[10],N=null,E;function F(J){J.each(function(){var $=e.select(this),j=this.__chart__||v,ee=this.__chart__=v.copy(),me=N==null?ee.ticks?ee.ticks.apply(ee,S):ee.domain():N,Te=E==null?ee.tickFormat?ee.tickFormat.apply(ee,S):U:E,ae=$.selectAll(".tick").data(me,ee),oe=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",fe),he=e.transition(ae.exit()).style("opacity",fe).remove(),we=e.transition(ae.order()).style("opacity",1),Me=Math.max(w,0)+C,pe,Ue=B0(ee),rr=$.selectAll(".domain").data([0]),or=(rr.enter().append("path").attr("class","domain"),e.transition(rr));oe.append("line"),oe.append("text");var ar=oe.select("line"),hr=we.select("line"),dr=ae.select("text").text(Te),Sr=oe.select("text"),pr=we.select("text"),Mr=g==="top"||g==="left"?-1:1,Kr,Ft,at,er;if(g==="bottom"||g==="top"?(pe=BW,Kr="x",at="y",Ft="x2",er="y2",dr.attr("dy",Mr<0?"0em":".71em").style("text-anchor","middle"),or.attr("d","M"+Ue[0]+","+Mr*q+"V0H"+Ue[1]+"V"+Mr*q)):(pe=YW,Kr="y",at="x",Ft="y2",er="x2",dr.attr("dy",".32em").style("text-anchor",Mr<0?"end":"start"),or.attr("d","M"+Mr*q+","+Ue[0]+"H0V"+Ue[1]+"H"+Mr*q)),ar.attr(er,Mr*w),Sr.attr(at,Mr*Me),hr.attr(Ft,0).attr(er,Mr*w),pr.attr(Kr,0).attr(at,Mr*Me),ee.rangeBand){var Dr=ee,Pr=Dr.rangeBand()/2;j=ee=function(Qr){return Dr(Qr)+Pr}}else j.rangeBand?j=ee:he.call(pe,ee,j);oe.call(pe,j,ee),we.call(pe,ee,ee)})}return F.scale=function(J){return arguments.length?(v=J,F):v},F.orient=function(J){return arguments.length?(g=J in OW?J+"":B4,F):g},F.ticks=function(){return arguments.length?(S=t(arguments),F):S},F.tickValues=function(J){return arguments.length?(N=J,F):N},F.tickFormat=function(J){return arguments.length?(E=J,F):E},F.tickSize=function(J){var $=arguments.length;return $?(w=+J,q=+arguments[$-1],F):w},F.innerTickSize=function(J){return arguments.length?(w=+J,F):w},F.outerTickSize=function(J){return arguments.length?(q=+J,F):q},F.tickPadding=function(J){return arguments.length?(C=+J,F):C},F.tickSubdivide=function(){return arguments.length&&F},F};var B4="bottom",OW={top:1,right:1,bottom:1,left:1};function BW(v,g,w){v.attr("transform",function(q){var C=g(q);return"translate("+(isFinite(C)?C:w(q))+",0)"})}function YW(v,g,w){v.attr("transform",function(q){var C=g(q);return"translate(0,"+(isFinite(C)?C:w(q))+")"})}e.svg.brush=function(){var v=ce($,"brushstart","brush","brushend"),g=null,w=null,q=[0,0],C=[0,0],S,N,E=!0,F=!0,J=wy[0];function $(ae){ae.each(function(){var oe=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Te).on("touchstart.brush",Te),he=oe.selectAll(".background").data([0]);he.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),oe.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var we=oe.selectAll(".resize").data(J,U);we.exit().remove(),we.enter().append("g").attr("class",function(rr){return"resize "+rr}).style("cursor",function(rr){return GW[rr]}).append("rect").attr("x",function(rr){return/[ew]$/.test(rr)?-3:null}).attr("y",function(rr){return/^[ns]/.test(rr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),we.style("display",$.empty()?"none":null);var Me=e.transition(oe),pe=e.transition(he),Ue;g&&(Ue=B0(g),pe.attr("x",Ue[0]).attr("width",Ue[1]-Ue[0]),ee(Me)),w&&(Ue=B0(w),pe.attr("y",Ue[0]).attr("height",Ue[1]-Ue[0]),me(Me)),j(Me)})}$.event=function(ae){ae.each(function(){var oe=v.of(this,arguments),he={x:q,y:C,i:S,j:N},we=this.__chart__||he;this.__chart__=he,No?e.select(this).transition().each("start.brush",function(){S=we.i,N=we.j,q=we.x,C=we.y,oe({type:"brushstart"})}).tween("brush:brush",function(){var Me=H0(q,he.x),pe=H0(C,he.y);return S=N=null,function(Ue){q=he.x=Me(Ue),C=he.y=pe(Ue),oe({type:"brush",mode:"resize"})}}).each("end.brush",function(){S=he.i,N=he.j,oe({type:"brush",mode:"resize"}),oe({type:"brushend"})}):(oe({type:"brushstart"}),oe({type:"brush",mode:"resize"}),oe({type:"brushend"}))})};function j(ae){ae.selectAll(".resize").attr("transform",function(oe){return"translate("+q[+/e$/.test(oe)]+","+C[+/^s/.test(oe)]+")"})}function ee(ae){ae.select(".extent").attr("x",q[0]),ae.selectAll(".extent,.n>rect,.s>rect").attr("width",q[1]-q[0])}function me(ae){ae.select(".extent").attr("y",C[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",C[1]-C[0])}function Te(){var ae=this,oe=e.select(e.event.target),he=v.of(ae,arguments),we=e.select(ae),Me=oe.datum(),pe=!/^(n|s)$/.test(Me)&&g,Ue=!/^(e|w)$/.test(Me)&&w,rr=oe.classed("extent"),or=fr(ae),ar,hr=e.mouse(ae),dr,Sr=e.select(i(ae)).on("keydown.brush",Kr).on("keyup.brush",Ft);if(e.event.changedTouches?Sr.on("touchmove.brush",at).on("touchend.brush",Dr):Sr.on("mousemove.brush",at).on("mouseup.brush",Dr),we.interrupt().selectAll("*").interrupt(),rr)hr[0]=q[0]-hr[0],hr[1]=C[0]-hr[1];else if(Me){var pr=+/w$/.test(Me),Mr=+/^n/.test(Me);dr=[q[1-pr]-hr[0],C[1-Mr]-hr[1]],hr[0]=q[pr],hr[1]=C[Mr]}else e.event.altKey&&(ar=hr.slice());we.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",oe.style("cursor")),he({type:"brushstart"}),at();function Kr(){e.event.keyCode==32&&(rr||(ar=null,hr[0]-=q[1],hr[1]-=C[1],rr=2),re())}function Ft(){e.event.keyCode==32&&rr==2&&(hr[0]+=q[1],hr[1]+=C[1],rr=0,re())}function at(){var Pr=e.mouse(ae),Qr=!1;dr&&(Pr[0]+=dr[0],Pr[1]+=dr[1]),rr||(e.event.altKey?(ar||(ar=[(q[0]+q[1])/2,(C[0]+C[1])/2]),hr[0]=q[+(Pr[0]{(function(e,r){typeof rh=="object"&&typeof W4!="undefined"?r(rh):(e=e||self,r(e.d3=e.d3||{}))})(rh,function(e){"use strict";var r=new Date,t=new Date;function a(ie,Ae,Ce,cr){function tr(De){return ie(De=arguments.length===0?new Date:new Date(+De)),De}return tr.floor=function(De){return ie(De=new Date(+De)),De},tr.ceil=function(De){return ie(De=new Date(De-1)),Ae(De,1),ie(De),De},tr.round=function(De){var Le=tr(De),Ye=tr.ceil(De);return De-Le0))return Xe;do Xe.push(Ge=new Date(+De)),Ae(De,Ye),ie(De);while(Ge=Le)for(;ie(Le),!De(Le);)Le.setTime(Le-1)},function(Le,Ye){if(Le>=Le)if(Ye<0)for(;++Ye<=0;)for(;Ae(Le,-1),!De(Le););else for(;--Ye>=0;)for(;Ae(Le,1),!De(Le););})},Ce&&(tr.count=function(De,Le){return r.setTime(+De),t.setTime(+Le),ie(r),ie(t),Math.floor(Ce(r,t))},tr.every=function(De){return De=Math.floor(De),!isFinite(De)||!(De>0)?null:De>1?tr.filter(cr?function(Le){return cr(Le)%De===0}:function(Le){return tr.count(0,Le)%De===0}):tr}),tr}var n=a(function(){},function(ie,Ae){ie.setTime(+ie+Ae)},function(ie,Ae){return Ae-ie});n.every=function(ie){return ie=Math.floor(ie),!isFinite(ie)||!(ie>0)?null:ie>1?a(function(Ae){Ae.setTime(Math.floor(Ae/ie)*ie)},function(Ae,Ce){Ae.setTime(+Ae+Ce*ie)},function(Ae,Ce){return(Ce-Ae)/ie}):n};var i=n.range,l=1e3,o=6e4,s=36e5,u=864e5,f=6048e5,c=a(function(ie){ie.setTime(ie-ie.getMilliseconds())},function(ie,Ae){ie.setTime(+ie+Ae*l)},function(ie,Ae){return(Ae-ie)/l},function(ie){return ie.getUTCSeconds()}),h=c.range,d=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l)},function(ie,Ae){ie.setTime(+ie+Ae*o)},function(ie,Ae){return(Ae-ie)/o},function(ie){return ie.getMinutes()}),p=d.range,y=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l-ie.getMinutes()*o)},function(ie,Ae){ie.setTime(+ie+Ae*s)},function(ie,Ae){return(Ae-ie)/s},function(ie){return ie.getHours()}),m=y.range,b=a(function(ie){ie.setHours(0,0,0,0)},function(ie,Ae){ie.setDate(ie.getDate()+Ae)},function(ie,Ae){return(Ae-ie-(Ae.getTimezoneOffset()-ie.getTimezoneOffset())*o)/u},function(ie){return ie.getDate()-1}),_=b.range;function T(ie){return a(function(Ae){Ae.setDate(Ae.getDate()-(Ae.getDay()+7-ie)%7),Ae.setHours(0,0,0,0)},function(Ae,Ce){Ae.setDate(Ae.getDate()+Ce*7)},function(Ae,Ce){return(Ce-Ae-(Ce.getTimezoneOffset()-Ae.getTimezoneOffset())*o)/f})}var x=T(0),M=T(1),A=T(2),k=T(3),L=T(4),D=T(5),P=T(6),R=x.range,z=M.range,H=A.range,O=k.range,U=L.range,V=D.range,Y=P.range,I=a(function(ie){ie.setDate(1),ie.setHours(0,0,0,0)},function(ie,Ae){ie.setMonth(ie.getMonth()+Ae)},function(ie,Ae){return Ae.getMonth()-ie.getMonth()+(Ae.getFullYear()-ie.getFullYear())*12},function(ie){return ie.getMonth()}),G=I.range,Z=a(function(ie){ie.setMonth(0,1),ie.setHours(0,0,0,0)},function(ie,Ae){ie.setFullYear(ie.getFullYear()+Ae)},function(ie,Ae){return Ae.getFullYear()-ie.getFullYear()},function(ie){return ie.getFullYear()});Z.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(Ae){Ae.setFullYear(Math.floor(Ae.getFullYear()/ie)*ie),Ae.setMonth(0,1),Ae.setHours(0,0,0,0)},function(Ae,Ce){Ae.setFullYear(Ae.getFullYear()+Ce*ie)})};var K=Z.range,re=a(function(ie){ie.setUTCSeconds(0,0)},function(ie,Ae){ie.setTime(+ie+Ae*o)},function(ie,Ae){return(Ae-ie)/o},function(ie){return ie.getUTCMinutes()}),se=re.range,ce=a(function(ie){ie.setUTCMinutes(0,0,0)},function(ie,Ae){ie.setTime(+ie+Ae*s)},function(ie,Ae){return(Ae-ie)/s},function(ie){return ie.getUTCHours()}),le=ce.range,Q=a(function(ie){ie.setUTCHours(0,0,0,0)},function(ie,Ae){ie.setUTCDate(ie.getUTCDate()+Ae)},function(ie,Ae){return(Ae-ie)/u},function(ie){return ie.getUTCDate()-1}),ge=Q.range;function ue(ie){return a(function(Ae){Ae.setUTCDate(Ae.getUTCDate()-(Ae.getUTCDay()+7-ie)%7),Ae.setUTCHours(0,0,0,0)},function(Ae,Ce){Ae.setUTCDate(Ae.getUTCDate()+Ce*7)},function(Ae,Ce){return(Ce-Ae)/f})}var ke=ue(0),ve=ue(1),be=ue(2),W=ue(3),te=ue(4),X=ue(5),ye=ue(6),_e=ke.range,xe=ve.range,Ie=be.range,ze=W.range,Re=te.range,He=X.range,Be=ye.range,Fe=a(function(ie){ie.setUTCDate(1),ie.setUTCHours(0,0,0,0)},function(ie,Ae){ie.setUTCMonth(ie.getUTCMonth()+Ae)},function(ie,Ae){return Ae.getUTCMonth()-ie.getUTCMonth()+(Ae.getUTCFullYear()-ie.getUTCFullYear())*12},function(ie){return ie.getUTCMonth()}),Pe=Fe.range,Je=a(function(ie){ie.setUTCMonth(0,1),ie.setUTCHours(0,0,0,0)},function(ie,Ae){ie.setUTCFullYear(ie.getUTCFullYear()+Ae)},function(ie,Ae){return Ae.getUTCFullYear()-ie.getUTCFullYear()},function(ie){return ie.getUTCFullYear()});Je.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(Ae){Ae.setUTCFullYear(Math.floor(Ae.getUTCFullYear()/ie)*ie),Ae.setUTCMonth(0,1),Ae.setUTCHours(0,0,0,0)},function(Ae,Ce){Ae.setUTCFullYear(Ae.getUTCFullYear()+Ce*ie)})};var We=Je.range;e.timeDay=b,e.timeDays=_,e.timeFriday=D,e.timeFridays=V,e.timeHour=y,e.timeHours=m,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=M,e.timeMondays=z,e.timeMonth=I,e.timeMonths=G,e.timeSaturday=P,e.timeSaturdays=Y,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=x,e.timeSundays=R,e.timeThursday=L,e.timeThursdays=U,e.timeTuesday=A,e.timeTuesdays=H,e.timeWednesday=k,e.timeWednesdays=O,e.timeWeek=x,e.timeWeeks=R,e.timeYear=Z,e.timeYears=K,e.utcDay=Q,e.utcDays=ge,e.utcFriday=X,e.utcFridays=He,e.utcHour=ce,e.utcHours=le,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=re,e.utcMinutes=se,e.utcMonday=ve,e.utcMondays=xe,e.utcMonth=Fe,e.utcMonths=Pe,e.utcSaturday=ye,e.utcSaturdays=Be,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=ke,e.utcSundays=_e,e.utcThursday=te,e.utcThursdays=Re,e.utcTuesday=be,e.utcTuesdays=Ie,e.utcWednesday=W,e.utcWednesdays=ze,e.utcWeek=ke,e.utcWeeks=_e,e.utcYear=Je,e.utcYears=We,Object.defineProperty(e,"__esModule",{value:!0})})});var cu=B((th,X4)=>{(function(e,r){typeof th=="object"&&typeof X4!="undefined"?r(th,Ay()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(th,function(e,r){"use strict";function t(ne){if(0<=ne.y&&ne.y<100){var fe=new Date(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L);return fe.setFullYear(ne.y),fe}return new Date(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L)}function a(ne){if(0<=ne.y&&ne.y<100){var fe=new Date(Date.UTC(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L));return fe.setUTCFullYear(ne.y),fe}return new Date(Date.UTC(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L))}function n(ne,fe,Se){return{y:ne,m:fe,d:Se,H:0,M:0,S:0,L:0}}function i(ne){var fe=ne.dateTime,Se=ne.date,qe=ne.time,ir=ne.periods,vr=ne.days,sr=ne.shortDays,Ar=ne.months,Ur=ne.shortMonths,et=h(ir),Wr=d(ir),Nt=h(vr),oa=d(vr),Na=h(sr),sa=d(sr),Sn=h(Ar),Za=d(Ar),ua=h(Ur),Ja=d(Ur),gr={a:Do,A:Po,b:Sl,B:k0,c:null,d:I,e:I,f:se,H:G,I:Z,j:K,L:re,m:ce,M:le,p:q0,q:ac,Q:Le,s:Ye,S:Q,u:ge,U:ue,V:ke,w:ve,W:be,x:null,X:null,y:W,Y:te,Z:X,"%":De},ft={a:nc,A:ic,b:Ia,B:C0,c:null,d:ye,e:ye,f:Re,H:_e,I:xe,j:Ie,L:ze,m:He,M:Be,p:tu,q:au,Q:Le,s:Ye,S:Fe,u:Pe,U:Je,V:We,w:ie,W:Ae,x:null,X:null,y:Ce,Y:cr,Z:tr,"%":De},Xr={a:Fa,A:fa,b:ai,B:ni,c:Qt,d:L,e:L,f:O,H:P,I:P,j:D,L:H,m:k,M:R,p:_t,q:A,Q:V,s:Y,S:z,u:y,U:m,V:b,w:p,W:_,x:it,X:ma,y:x,Y:T,Z:M,"%":U};gr.x=bt(Se,gr),gr.X=bt(qe,gr),gr.c=bt(fe,gr),ft.x=bt(Se,ft),ft.X=bt(qe,ft),ft.c=bt(fe,ft);function bt(mr,Zr){return function(rt){var nr=[],ya=-1,vt=0,ga=mr.length,Nr,ii,Eo;for(rt instanceof Date||(rt=new Date(+rt));++ya53)return null;"w"in nr||(nr.w=1),"Z"in nr?(vt=a(n(nr.y,0,1)),ga=vt.getUTCDay(),vt=ga>4||ga===0?r.utcMonday.ceil(vt):r.utcMonday(vt),vt=r.utcDay.offset(vt,(nr.V-1)*7),nr.y=vt.getUTCFullYear(),nr.m=vt.getUTCMonth(),nr.d=vt.getUTCDate()+(nr.w+6)%7):(vt=t(n(nr.y,0,1)),ga=vt.getDay(),vt=ga>4||ga===0?r.timeMonday.ceil(vt):r.timeMonday(vt),vt=r.timeDay.offset(vt,(nr.V-1)*7),nr.y=vt.getFullYear(),nr.m=vt.getMonth(),nr.d=vt.getDate()+(nr.w+6)%7)}else("W"in nr||"U"in nr)&&("w"in nr||(nr.w="u"in nr?nr.u%7:"W"in nr?1:0),ga="Z"in nr?a(n(nr.y,0,1)).getUTCDay():t(n(nr.y,0,1)).getDay(),nr.m=0,nr.d="W"in nr?(nr.w+6)%7+nr.W*7-(ga+5)%7:nr.w+nr.U*7-(ga+6)%7);return"Z"in nr?(nr.H+=nr.Z/100|0,nr.M+=nr.Z%100,a(nr)):t(nr)}}function ct(mr,Zr,rt,nr){for(var ya=0,vt=Zr.length,ga=rt.length,Nr,ii;ya=ga)return-1;if(Nr=Zr.charCodeAt(ya++),Nr===37){if(Nr=Zr.charAt(ya++),ii=Xr[Nr in l?Zr.charAt(ya++):Nr],!ii||(nr=ii(mr,rt,nr))<0)return-1}else if(Nr!=rt.charCodeAt(nr++))return-1}return nr}function _t(mr,Zr,rt){var nr=et.exec(Zr.slice(rt));return nr?(mr.p=Wr[nr[0].toLowerCase()],rt+nr[0].length):-1}function Fa(mr,Zr,rt){var nr=Na.exec(Zr.slice(rt));return nr?(mr.w=sa[nr[0].toLowerCase()],rt+nr[0].length):-1}function fa(mr,Zr,rt){var nr=Nt.exec(Zr.slice(rt));return nr?(mr.w=oa[nr[0].toLowerCase()],rt+nr[0].length):-1}function ai(mr,Zr,rt){var nr=ua.exec(Zr.slice(rt));return nr?(mr.m=Ja[nr[0].toLowerCase()],rt+nr[0].length):-1}function ni(mr,Zr,rt){var nr=Sn.exec(Zr.slice(rt));return nr?(mr.m=Za[nr[0].toLowerCase()],rt+nr[0].length):-1}function Qt(mr,Zr,rt){return ct(mr,fe,Zr,rt)}function it(mr,Zr,rt){return ct(mr,Se,Zr,rt)}function ma(mr,Zr,rt){return ct(mr,qe,Zr,rt)}function Do(mr){return sr[mr.getDay()]}function Po(mr){return vr[mr.getDay()]}function Sl(mr){return Ur[mr.getMonth()]}function k0(mr){return Ar[mr.getMonth()]}function q0(mr){return ir[+(mr.getHours()>=12)]}function ac(mr){return 1+~~(mr.getMonth()/3)}function nc(mr){return sr[mr.getUTCDay()]}function ic(mr){return vr[mr.getUTCDay()]}function Ia(mr){return Ur[mr.getUTCMonth()]}function C0(mr){return Ar[mr.getUTCMonth()]}function tu(mr){return ir[+(mr.getUTCHours()>=12)]}function au(mr){return 1+~~(mr.getUTCMonth()/3)}return{format:function(mr){var Zr=bt(mr+="",gr);return Zr.toString=function(){return mr},Zr},parse:function(mr){var Zr=Lt(mr+="",!1);return Zr.toString=function(){return mr},Zr},utcFormat:function(mr){var Zr=bt(mr+="",ft);return Zr.toString=function(){return mr},Zr},utcParse:function(mr){var Zr=Lt(mr+="",!0);return Zr.toString=function(){return mr},Zr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,fe,Se){var qe=ne<0?"-":"",ir=(qe?-ne:ne)+"",vr=ir.length;return qe+(vr68?1900:2e3),Se+qe[0].length):-1}function M(ne,fe,Se){var qe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(fe.slice(Se,Se+6));return qe?(ne.Z=qe[1]?0:-(qe[2]+(qe[3]||"00")),Se+qe[0].length):-1}function A(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+1));return qe?(ne.q=qe[0]*3-3,Se+qe[0].length):-1}function k(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.m=qe[0]-1,Se+qe[0].length):-1}function L(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.d=+qe[0],Se+qe[0].length):-1}function D(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+3));return qe?(ne.m=0,ne.d=+qe[0],Se+qe[0].length):-1}function P(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.H=+qe[0],Se+qe[0].length):-1}function R(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.M=+qe[0],Se+qe[0].length):-1}function z(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.S=+qe[0],Se+qe[0].length):-1}function H(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+3));return qe?(ne.L=+qe[0],Se+qe[0].length):-1}function O(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+6));return qe?(ne.L=Math.floor(qe[0]/1e3),Se+qe[0].length):-1}function U(ne,fe,Se){var qe=s.exec(fe.slice(Se,Se+1));return qe?Se+qe[0].length:-1}function V(ne,fe,Se){var qe=o.exec(fe.slice(Se));return qe?(ne.Q=+qe[0],Se+qe[0].length):-1}function Y(ne,fe,Se){var qe=o.exec(fe.slice(Se));return qe?(ne.s=+qe[0],Se+qe[0].length):-1}function I(ne,fe){return f(ne.getDate(),fe,2)}function G(ne,fe){return f(ne.getHours(),fe,2)}function Z(ne,fe){return f(ne.getHours()%12||12,fe,2)}function K(ne,fe){return f(1+r.timeDay.count(r.timeYear(ne),ne),fe,3)}function re(ne,fe){return f(ne.getMilliseconds(),fe,3)}function se(ne,fe){return re(ne,fe)+"000"}function ce(ne,fe){return f(ne.getMonth()+1,fe,2)}function le(ne,fe){return f(ne.getMinutes(),fe,2)}function Q(ne,fe){return f(ne.getSeconds(),fe,2)}function ge(ne){var fe=ne.getDay();return fe===0?7:fe}function ue(ne,fe){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),fe,2)}function ke(ne,fe){var Se=ne.getDay();return ne=Se>=4||Se===0?r.timeThursday(ne):r.timeThursday.ceil(ne),f(r.timeThursday.count(r.timeYear(ne),ne)+(r.timeYear(ne).getDay()===4),fe,2)}function ve(ne){return ne.getDay()}function be(ne,fe){return f(r.timeMonday.count(r.timeYear(ne)-1,ne),fe,2)}function W(ne,fe){return f(ne.getFullYear()%100,fe,2)}function te(ne,fe){return f(ne.getFullYear()%1e4,fe,4)}function X(ne){var fe=ne.getTimezoneOffset();return(fe>0?"-":(fe*=-1,"+"))+f(fe/60|0,"0",2)+f(fe%60,"0",2)}function ye(ne,fe){return f(ne.getUTCDate(),fe,2)}function _e(ne,fe){return f(ne.getUTCHours(),fe,2)}function xe(ne,fe){return f(ne.getUTCHours()%12||12,fe,2)}function Ie(ne,fe){return f(1+r.utcDay.count(r.utcYear(ne),ne),fe,3)}function ze(ne,fe){return f(ne.getUTCMilliseconds(),fe,3)}function Re(ne,fe){return ze(ne,fe)+"000"}function He(ne,fe){return f(ne.getUTCMonth()+1,fe,2)}function Be(ne,fe){return f(ne.getUTCMinutes(),fe,2)}function Fe(ne,fe){return f(ne.getUTCSeconds(),fe,2)}function Pe(ne){var fe=ne.getUTCDay();return fe===0?7:fe}function Je(ne,fe){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),fe,2)}function We(ne,fe){var Se=ne.getUTCDay();return ne=Se>=4||Se===0?r.utcThursday(ne):r.utcThursday.ceil(ne),f(r.utcThursday.count(r.utcYear(ne),ne)+(r.utcYear(ne).getUTCDay()===4),fe,2)}function ie(ne){return ne.getUTCDay()}function Ae(ne,fe){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),fe,2)}function Ce(ne,fe){return f(ne.getUTCFullYear()%100,fe,2)}function cr(ne,fe){return f(ne.getUTCFullYear()%1e4,fe,4)}function tr(){return"+0000"}function De(){return"%"}function Le(ne){return+ne}function Ye(ne){return Math.floor(+ne/1e3)}var Xe;Ge({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ge(ne){return Xe=i(ne),e.timeFormat=Xe.format,e.timeParse=Xe.parse,e.utcFormat=Xe.utcFormat,e.utcParse=Xe.utcParse,Xe}var Oe="%Y-%m-%dT%H:%M:%S.%LZ";function $e(ne){return ne.toISOString()}var fr=Date.prototype.toISOString?$e:e.utcFormat(Oe);function lr(ne){var fe=new Date(ne);return isNaN(fe)?null:fe}var Ne=+new Date("2000-01-01T00:00:00.000Z")?lr:e.utcParse(Oe);e.isoFormat=fr,e.isoParse=Ne,e.timeFormatDefaultLocale=Ge,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var ky=B((ah,Z4)=>{(function(e,r){typeof ah=="object"&&typeof Z4!="undefined"?r(ah):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(ah,function(e){"use strict";function r(k){return Math.abs(k=Math.round(k))>=1e21?k.toLocaleString("en").replace(/,/g,""):k.toString(10)}function t(k,L){if((D=(k=L?k.toExponential(L-1):k.toExponential()).indexOf("e"))<0)return null;var D,P=k.slice(0,D);return[P.length>1?P[0]+P.slice(2):P,+k.slice(D+1)]}function a(k){return k=t(Math.abs(k)),k?k[1]:NaN}function n(k,L){return function(D,P){for(var R=D.length,z=[],H=0,O=k[0],U=0;R>0&&O>0&&(U+O+1>P&&(O=Math.max(1,P-U)),z.push(D.substring(R-=O,R+O)),!((U+=O+1)>P));)O=k[H=(H+1)%k.length];return z.reverse().join(L)}}function i(k){return function(L){return L.replace(/[0-9]/g,function(D){return k[+D]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(k){if(!(L=l.exec(k)))throw new Error("invalid format: "+k);var L;return new s({fill:L[1],align:L[2],sign:L[3],symbol:L[4],zero:L[5],width:L[6],comma:L[7],precision:L[8]&&L[8].slice(1),trim:L[9],type:L[10]})}o.prototype=s.prototype;function s(k){this.fill=k.fill===void 0?" ":k.fill+"",this.align=k.align===void 0?">":k.align+"",this.sign=k.sign===void 0?"-":k.sign+"",this.symbol=k.symbol===void 0?"":k.symbol+"",this.zero=!!k.zero,this.width=k.width===void 0?void 0:+k.width,this.comma=!!k.comma,this.precision=k.precision===void 0?void 0:+k.precision,this.trim=!!k.trim,this.type=k.type===void 0?"":k.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(k){e:for(var L=k.length,D=1,P=-1,R;D0&&(P=0);break}return P>0?k.slice(0,P)+k.slice(R+1):k}var f;function c(k,L){var D=t(k,L);if(!D)return k+"";var P=D[0],R=D[1],z=R-(f=Math.max(-8,Math.min(8,Math.floor(R/3)))*3)+1,H=P.length;return z===H?P:z>H?P+new Array(z-H+1).join("0"):z>0?P.slice(0,z)+"."+P.slice(z):"0."+new Array(1-z).join("0")+t(k,Math.max(0,L+z-1))[0]}function h(k,L){var D=t(k,L);if(!D)return k+"";var P=D[0],R=D[1];return R<0?"0."+new Array(-R).join("0")+P:P.length>R+1?P.slice(0,R+1)+"."+P.slice(R+1):P+new Array(R-P.length+2).join("0")}var d={"%":function(k,L){return(k*100).toFixed(L)},b:function(k){return Math.round(k).toString(2)},c:function(k){return k+""},d:r,e:function(k,L){return k.toExponential(L)},f:function(k,L){return k.toFixed(L)},g:function(k,L){return k.toPrecision(L)},o:function(k){return Math.round(k).toString(8)},p:function(k,L){return h(k*100,L)},r:h,s:c,X:function(k){return Math.round(k).toString(16).toUpperCase()},x:function(k){return Math.round(k).toString(16)}};function p(k){return k}var y=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function b(k){var L=k.grouping===void 0||k.thousands===void 0?p:n(y.call(k.grouping,Number),k.thousands+""),D=k.currency===void 0?"":k.currency[0]+"",P=k.currency===void 0?"":k.currency[1]+"",R=k.decimal===void 0?".":k.decimal+"",z=k.numerals===void 0?p:i(y.call(k.numerals,String)),H=k.percent===void 0?"%":k.percent+"",O=k.minus===void 0?"-":k.minus+"",U=k.nan===void 0?"NaN":k.nan+"";function V(I){I=o(I);var G=I.fill,Z=I.align,K=I.sign,re=I.symbol,se=I.zero,ce=I.width,le=I.comma,Q=I.precision,ge=I.trim,ue=I.type;ue==="n"?(le=!0,ue="g"):d[ue]||(Q===void 0&&(Q=12),ge=!0,ue="g"),(se||G==="0"&&Z==="=")&&(se=!0,G="0",Z="=");var ke=re==="$"?D:re==="#"&&/[boxX]/.test(ue)?"0"+ue.toLowerCase():"",ve=re==="$"?P:/[%p]/.test(ue)?H:"",be=d[ue],W=/[defgprs%]/.test(ue);Q=Q===void 0?6:/[gprs]/.test(ue)?Math.max(1,Math.min(21,Q)):Math.max(0,Math.min(20,Q));function te(X){var ye=ke,_e=ve,xe,Ie,ze;if(ue==="c")_e=be(X)+_e,X="";else{X=+X;var Re=X<0||1/X<0;if(X=isNaN(X)?U:be(Math.abs(X),Q),ge&&(X=u(X)),Re&&+X==0&&K!=="+"&&(Re=!1),ye=(Re?K==="("?K:O:K==="-"||K==="("?"":K)+ye,_e=(ue==="s"?m[8+f/3]:"")+_e+(Re&&K==="("?")":""),W){for(xe=-1,Ie=X.length;++xeze||ze>57){_e=(ze===46?R+X.slice(xe+1):X.slice(xe))+_e,X=X.slice(0,xe);break}}}le&&!se&&(X=L(X,1/0));var He=ye.length+X.length+_e.length,Be=He>1)+ye+X+_e+Be.slice(He);break;default:X=Be+ye+X+_e;break}return z(X)}return te.toString=function(){return I+""},te}function Y(I,G){var Z=V((I=o(I),I.type="f",I)),K=Math.max(-8,Math.min(8,Math.floor(a(G)/3)))*3,re=Math.pow(10,-K),se=m[8+K/3];return function(ce){return Z(re*ce)+se}}return{format:V,formatPrefix:Y}}var _;T({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function T(k){return _=b(k),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function x(k){return Math.max(0,-a(Math.abs(k)))}function M(k,L){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(L)/3)))*3-a(Math.abs(k)))}function A(k,L){return k=Math.abs(k),L=Math.abs(L)-k,Math.max(0,a(L)-a(k))+1}e.FormatSpecifier=s,e.formatDefaultLocale=T,e.formatLocale=b,e.formatSpecifier=o,e.precisionFixed=x,e.precisionPrefix=M,e.precisionRound=A,Object.defineProperty(e,"__esModule",{value:!0})})});var $4=B((Fpe,J4)=>{"use strict";J4.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var zr=B((Ipe,K4)=>{"use strict";var QW=$4();K4.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&QW(t))return!1}else if(r!=="number")return!1;return e-e<1}});var wt=B((Hpe,Q4)=>{"use strict";Q4.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var qy=B((nh,j4)=>{(function(e,r){typeof nh=="object"&&typeof j4!="undefined"?r(nh):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(nh,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(o[s]&3)<<4|o[s+1]>>4],f+=r[(o[s+1]&15)<<2|o[s+2]>>6],f+=r[o[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(l){var o=l.length*.75,s=l.length,u,f=0,c,h,d,p;l[l.length-1]==="="&&(o--,l[l.length-2]==="="&&o--);var y=new ArrayBuffer(o),m=new Uint8Array(y);for(u=0;u>4,m[f++]=(h&15)<<4|d>>2,m[f++]=(d&3)<<6|p&63;return y};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var El=B((Ope,e6)=>{"use strict";e6.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var gn=B(si=>{"use strict";var jW=qy().decode,eX=El(),Cy=Array.isArray,rX=ArrayBuffer,tX=DataView;function r6(e){return rX.isView(e)&&!(e instanceof tX)}si.isTypedArray=r6;function ih(e){return Cy(e)||r6(e)}si.isArrayOrTypedArray=ih;function aX(e){return!ih(e[0])}si.isArray1D=aX;si.ensureArray=function(e,r){return Cy(e)||(e=[]),e.length=r,e};var ca={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};ca.uint8c=ca.u1c;ca.uint8=ca.u1;ca.int8=ca.i1;ca.uint16=ca.u2;ca.int16=ca.i2;ca.uint32=ca.u4;ca.int32=ca.i4;ca.float32=ca.f4;ca.float64=ca.f8;function Ly(e){return e.constructor===ArrayBuffer}si.isArrayBuffer=Ly;si.decodeTypedArraySpec=function(e){var r=[],t=nX(e),a=t.dtype,n=ca[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,l=t.bdata;Ly(l)||(l=jW(l));var o=t.shape===void 0?[l.byteLength/i]:(""+t.shape).split(",");o.reverse();var s=o.length,u,f,c=+o[0],h=i*c,d=0;if(s===1)r=new n(l);else if(s===2)for(u=+o[1],f=0;f{"use strict";var a6=zr(),Dy=gn().isArrayOrTypedArray;o6.exports=function(r,t){if(a6(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,l,o;for(o=0;o{"use strict";var vu=lh(),uX=/^\w*$/,fX=0,s6=1,oh=2,u6=3,Ho=4;f6.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=vu(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|oh,c.set(h,null);if(f){for(i=d;i{"use strict";var cX=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,vX=/^[^\.\[\]]+$/;v6.exports=function(e,r){for(;r;){var t=e.match(cX);if(t)e=t[1];else if(e.match(vX))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var sh=B((Vpe,d6)=>{"use strict";var hX=zr();d6.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return hX(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var y6=B((Wpe,m6)=>{"use strict";var p6=gn().isArrayOrTypedArray,pc=El();m6.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(p6(n)&&p6(i)&&pc(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function dX(e,r){var t=e%r;return t<0?t+r:t}function pX(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}g6.exports={mod:dX,modHalf:pX}});var Rn=B((Zpe,uh)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(W,te){if(W=W||"",te=te||{},W instanceof s)return W;if(!(this instanceof s))return new s(W,te);var X=u(W);this._originalInput=W,this._r=X.r,this._g=X.g,this._b=X.b,this._a=X.a,this._roundA=n(100*this._a)/100,this._format=te.format||X.format,this._gradientType=te.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=X.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var W=this.toRgb();return(W.r*299+W.g*587+W.b*114)/1e3},getLuminance:function(){var W=this.toRgb(),te,X,ye,_e,xe,Ie;return te=W.r/255,X=W.g/255,ye=W.b/255,te<=.03928?_e=te/12.92:_e=e.pow((te+.055)/1.055,2.4),X<=.03928?xe=X/12.92:xe=e.pow((X+.055)/1.055,2.4),ye<=.03928?Ie=ye/12.92:Ie=e.pow((ye+.055)/1.055,2.4),.2126*_e+.7152*xe+.0722*Ie},setAlpha:function(W){return this._a=I(W),this._roundA=n(100*this._a)/100,this},toHsv:function(){var W=d(this._r,this._g,this._b);return{h:W.h*360,s:W.s,v:W.v,a:this._a}},toHsvString:function(){var W=d(this._r,this._g,this._b),te=n(W.h*360),X=n(W.s*100),ye=n(W.v*100);return this._a==1?"hsv("+te+", "+X+"%, "+ye+"%)":"hsva("+te+", "+X+"%, "+ye+"%, "+this._roundA+")"},toHsl:function(){var W=c(this._r,this._g,this._b);return{h:W.h*360,s:W.s,l:W.l,a:this._a}},toHslString:function(){var W=c(this._r,this._g,this._b),te=n(W.h*360),X=n(W.s*100),ye=n(W.l*100);return this._a==1?"hsl("+te+", "+X+"%, "+ye+"%)":"hsla("+te+", "+X+"%, "+ye+"%, "+this._roundA+")"},toHex:function(W){return y(this._r,this._g,this._b,W)},toHexString:function(W){return"#"+this.toHex(W)},toHex8:function(W){return m(this._r,this._g,this._b,this._a,W)},toHex8String:function(W){return"#"+this.toHex8(W)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(G(this._r,255)*100)+"%",g:n(G(this._g,255)*100)+"%",b:n(G(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(G(this._r,255)*100)+"%, "+n(G(this._g,255)*100)+"%, "+n(G(this._b,255)*100)+"%)":"rgba("+n(G(this._r,255)*100)+"%, "+n(G(this._g,255)*100)+"%, "+n(G(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:V[y(this._r,this._g,this._b,!0)]||!1},toFilter:function(W){var te="#"+b(this._r,this._g,this._b,this._a),X=te,ye=this._gradientType?"GradientType = 1, ":"";if(W){var _e=s(W);X="#"+b(_e._r,_e._g,_e._b,_e._a)}return"progid:DXImageTransform.Microsoft.gradient("+ye+"startColorstr="+te+",endColorstr="+X+")"},toString:function(W){var te=!!W;W=W||this._format;var X=!1,ye=this._a<1&&this._a>=0,_e=!te&&ye&&(W==="hex"||W==="hex6"||W==="hex3"||W==="hex4"||W==="hex8"||W==="name");return _e?W==="name"&&this._a===0?this.toName():this.toRgbString():(W==="rgb"&&(X=this.toRgbString()),W==="prgb"&&(X=this.toPercentageRgbString()),(W==="hex"||W==="hex6")&&(X=this.toHexString()),W==="hex3"&&(X=this.toHexString(!0)),W==="hex4"&&(X=this.toHex8String(!0)),W==="hex8"&&(X=this.toHex8String()),W==="name"&&(X=this.toName()),W==="hsl"&&(X=this.toHslString()),W==="hsv"&&(X=this.toHsvString()),X||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(W,te){var X=W.apply(null,[this].concat([].slice.call(te)));return this._r=X._r,this._g=X._g,this._b=X._b,this.setAlpha(X._a),this},lighten:function(){return this._applyModification(M,arguments)},brighten:function(){return this._applyModification(A,arguments)},darken:function(){return this._applyModification(k,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(T,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(L,arguments)},_applyCombination:function(W,te){return W.apply(null,[this].concat([].slice.call(te)))},analogous:function(){return this._applyCombination(H,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(O,arguments)},splitcomplement:function(){return this._applyCombination(z,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(R,arguments)}},s.fromRatio=function(W,te){if(typeof W=="object"){var X={};for(var ye in W)W.hasOwnProperty(ye)&&(ye==="a"?X[ye]=W[ye]:X[ye]=le(W[ye]));W=X}return s(W,te)};function u(W){var te={r:0,g:0,b:0},X=1,ye=null,_e=null,xe=null,Ie=!1,ze=!1;return typeof W=="string"&&(W=ve(W)),typeof W=="object"&&(ke(W.r)&&ke(W.g)&&ke(W.b)?(te=f(W.r,W.g,W.b),Ie=!0,ze=String(W.r).substr(-1)==="%"?"prgb":"rgb"):ke(W.h)&&ke(W.s)&&ke(W.v)?(ye=le(W.s),_e=le(W.v),te=p(W.h,ye,_e),Ie=!0,ze="hsv"):ke(W.h)&&ke(W.s)&&ke(W.l)&&(ye=le(W.s),xe=le(W.l),te=h(W.h,ye,xe),Ie=!0,ze="hsl"),W.hasOwnProperty("a")&&(X=W.a)),X=I(X),{ok:Ie,format:W.format||ze,r:i(255,l(te.r,0)),g:i(255,l(te.g,0)),b:i(255,l(te.b,0)),a:X}}function f(W,te,X){return{r:G(W,255)*255,g:G(te,255)*255,b:G(X,255)*255}}function c(W,te,X){W=G(W,255),te=G(te,255),X=G(X,255);var ye=l(W,te,X),_e=i(W,te,X),xe,Ie,ze=(ye+_e)/2;if(ye==_e)xe=Ie=0;else{var Re=ye-_e;switch(Ie=ze>.5?Re/(2-ye-_e):Re/(ye+_e),ye){case W:xe=(te-X)/Re+(te1&&(Fe-=1),Fe<1/6?He+(Be-He)*6*Fe:Fe<1/2?Be:Fe<2/3?He+(Be-He)*(2/3-Fe)*6:He}if(te===0)ye=_e=xe=X;else{var ze=X<.5?X*(1+te):X+te-X*te,Re=2*X-ze;ye=Ie(Re,ze,W+1/3),_e=Ie(Re,ze,W),xe=Ie(Re,ze,W-1/3)}return{r:ye*255,g:_e*255,b:xe*255}}function d(W,te,X){W=G(W,255),te=G(te,255),X=G(X,255);var ye=l(W,te,X),_e=i(W,te,X),xe,Ie,ze=ye,Re=ye-_e;if(Ie=ye===0?0:Re/ye,ye==_e)xe=0;else{switch(ye){case W:xe=(te-X)/Re+(te>1)+720)%360;--te;)ye.h=(ye.h+_e)%360,xe.push(s(ye));return xe}function O(W,te){te=te||6;for(var X=s(W).toHsv(),ye=X.h,_e=X.s,xe=X.v,Ie=[],ze=1/te;te--;)Ie.push(s({h:ye,s:_e,v:xe})),xe=(xe+ze)%1;return Ie}s.mix=function(W,te,X){X=X===0?0:X||50;var ye=s(W).toRgb(),_e=s(te).toRgb(),xe=X/100,Ie={r:(_e.r-ye.r)*xe+ye.r,g:(_e.g-ye.g)*xe+ye.g,b:(_e.b-ye.b)*xe+ye.b,a:(_e.a-ye.a)*xe+ye.a};return s(Ie)},s.readability=function(W,te){var X=s(W),ye=s(te);return(e.max(X.getLuminance(),ye.getLuminance())+.05)/(e.min(X.getLuminance(),ye.getLuminance())+.05)},s.isReadable=function(W,te,X){var ye=s.readability(W,te),_e,xe;switch(xe=!1,_e=be(X),_e.level+_e.size){case"AAsmall":case"AAAlarge":xe=ye>=4.5;break;case"AAlarge":xe=ye>=3;break;case"AAAsmall":xe=ye>=7;break}return xe},s.mostReadable=function(W,te,X){var ye=null,_e=0,xe,Ie,ze,Re;X=X||{},Ie=X.includeFallbackColors,ze=X.level,Re=X.size;for(var He=0;He_e&&(_e=xe,ye=s(te[He]));return s.isReadable(W,ye,{level:ze,size:Re})||!Ie?ye:(X.includeFallbackColors=!1,s.mostReadable(W,["#fff","#000"],X))};var U=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},V=s.hexNames=Y(U);function Y(W){var te={};for(var X in W)W.hasOwnProperty(X)&&(te[W[X]]=X);return te}function I(W){return W=parseFloat(W),(isNaN(W)||W<0||W>1)&&(W=1),W}function G(W,te){re(W)&&(W="100%");var X=se(W);return W=i(te,l(0,parseFloat(W))),X&&(W=parseInt(W*te,10)/100),e.abs(W-te)<1e-6?1:W%te/parseFloat(te)}function Z(W){return i(1,l(0,W))}function K(W){return parseInt(W,16)}function re(W){return typeof W=="string"&&W.indexOf(".")!=-1&&parseFloat(W)===1}function se(W){return typeof W=="string"&&W.indexOf("%")!=-1}function ce(W){return W.length==1?"0"+W:""+W}function le(W){return W<=1&&(W=W*100+"%"),W}function Q(W){return e.round(parseFloat(W)*255).toString(16)}function ge(W){return K(W)/255}var ue=function(){var W="[-\\+]?\\d+%?",te="[-\\+]?\\d*\\.\\d+%?",X="(?:"+te+")|(?:"+W+")",ye="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?",_e="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?";return{CSS_UNIT:new RegExp(X),rgb:new RegExp("rgb"+ye),rgba:new RegExp("rgba"+_e),hsl:new RegExp("hsl"+ye),hsla:new RegExp("hsla"+_e),hsv:new RegExp("hsv"+ye),hsva:new RegExp("hsva"+_e),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function ke(W){return!!ue.CSS_UNIT.exec(W)}function ve(W){W=W.replace(r,"").replace(t,"").toLowerCase();var te=!1;if(U[W])W=U[W],te=!0;else if(W=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var X;return(X=ue.rgb.exec(W))?{r:X[1],g:X[2],b:X[3]}:(X=ue.rgba.exec(W))?{r:X[1],g:X[2],b:X[3],a:X[4]}:(X=ue.hsl.exec(W))?{h:X[1],s:X[2],l:X[3]}:(X=ue.hsla.exec(W))?{h:X[1],s:X[2],l:X[3],a:X[4]}:(X=ue.hsv.exec(W))?{h:X[1],s:X[2],v:X[3]}:(X=ue.hsva.exec(W))?{h:X[1],s:X[2],v:X[3],a:X[4]}:(X=ue.hex8.exec(W))?{r:K(X[1]),g:K(X[2]),b:K(X[3]),a:ge(X[4]),format:te?"name":"hex8"}:(X=ue.hex6.exec(W))?{r:K(X[1]),g:K(X[2]),b:K(X[3]),format:te?"name":"hex"}:(X=ue.hex4.exec(W))?{r:K(X[1]+""+X[1]),g:K(X[2]+""+X[2]),b:K(X[3]+""+X[3]),a:ge(X[4]+""+X[4]),format:te?"name":"hex8"}:(X=ue.hex3.exec(W))?{r:K(X[1]+""+X[1]),g:K(X[2]+""+X[2]),b:K(X[3]+""+X[3]),format:te?"name":"hex"}:!1}function be(W){var te,X;return W=W||{level:"AA",size:"small"},te=(W.level||"AA").toUpperCase(),X=(W.size||"small").toLowerCase(),te!=="AA"&&te!=="AAA"&&(te="AA"),X!=="small"&&X!=="large"&&(X="small"),{level:te,size:X}}typeof uh!="undefined"&&uh.exports?uh.exports=s:window.tinycolor=s})(Math)});var mt=B(gc=>{"use strict";var x6=El(),mc=Array.isArray;function mX(e,r){var t,a;for(t=0;t{"use strict";b6.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var xc=B((Kpe,_6)=>{"use strict";_6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var du=B((Qpe,M6)=>{"use strict";var w6=xc(),T6=jt(),Py=T6({editType:"none"});Py.family.dflt=w6.HOVERFONT;Py.size.dflt=w6.HOVERFONTSIZE;M6.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Py,grouptitlefont:T6({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var bc=B((jpe,A6)=>{"use strict";var yX=jt(),fh=du().hoverlabel,ch=mt().extendFlat;A6.exports={hoverlabel:{bgcolor:ch({},fh.bgcolor,{arrayOk:!0}),bordercolor:ch({},fh.bordercolor,{arrayOk:!0}),font:yX({arrayOk:!0,editType:"none"}),align:ch({},fh.align,{arrayOk:!0}),namelength:ch({},fh.namelength,{arrayOk:!0}),editType:"none"}}});var tn=B((eme,k6)=>{"use strict";var gX=jt(),xX=bc();k6.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:gX({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:xX.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var Oo=B((rme,L6)=>{"use strict";var bX=Rn(),vh={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},q6=vh.RdBu;function _X(e,r){if(r||(r=q6),!e)return r;function t(){try{e=vh[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),C6(e)?e:r}function C6(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";Bo.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Bo.defaultLine="#444";Bo.lightLine="#eee";Bo.background="#fff";Bo.borderLine="#BEC8D9";Bo.lightFraction=100*10/11});var xr=B((ame,S6)=>{"use strict";var an=Rn(),TX=zr(),MX=gn().isTypedArray,ea=S6.exports={},hh=zn();ea.defaults=hh.defaults;var AX=ea.defaultLine=hh.defaultLine;ea.lightLine=hh.lightLine;var Ry=ea.background=hh.background;ea.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};ea.rgb=function(e){return ea.tinyRGB(an(e))};ea.opacity=function(e){return e?an(e).getAlpha():0};ea.addOpacity=function(e,r){var t=an(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};ea.combine=function(e,r){var t=an(e).toRgb();if(t.a===1)return an(e).toRgbString();var a=an(r||Ry).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return an(i).toRgbString()};ea.interpolate=function(e,r,t){var a=an(e).toRgb(),n=an(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return an(i).toRgbString()};ea.contrast=function(e,r,t){var a=an(e);a.getAlpha()!==1&&(a=an(ea.combine(e,Ry)));var n=a.isDark()?r?a.lighten(r):Ry:t?a.darken(t):AX;return n.toString()};ea.stroke=function(e,r){var t=an(r);e.style({stroke:ea.tinyRGB(t),"stroke-opacity":t.getAlpha()})};ea.fill=function(e,r){var t=an(r);e.style({fill:ea.tinyRGB(t),"fill-opacity":t.getAlpha()})};ea.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var l=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+l+", "+a[3]+")":"rgb("+l+")"}});var pu=B((nme,D6)=>{"use strict";D6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var mu=B(P6=>{"use strict";P6.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var N6=B(nn=>{"use strict";var zy=zr(),E6=Rn(),R6=mt().extendFlat,kX=tn(),qX=Oo(),CX=xr(),LX=pu().DESELECTDIM,yu=lh(),z6=mu().counter,SX=hu().modHalf,Ni=gn().isArrayOrTypedArray,Rl=gn().isTypedArraySpec,zl=gn().decodeTypedArraySpec;nn.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Ni(e)?e:Rl(e)?zl(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}Rl(e)&&(e=zl(e)),e%1||!zy(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Rl(e)&&(e=zl(e)),E6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return E6(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(qX.get(e,t))}},angle:{coerceFunction:function(e,r,t){Rl(e)&&(e=zl(e)),e==="auto"?r.set("auto"):zy(e)?r.set(SX(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||z6(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!z6(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var F6={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},I6={};function H6(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),H6(a,r[t]))}}H6(F6,I6);O6.exports={configAttributes:F6,dfltConfig:I6}});var Fy=B((sme,B6)=>{"use strict";var Ny=kr(),DX=zr(),_c=[];B6.exports=function(e,r){if(_c.indexOf(e)!==-1)return;_c.push(e);var t=1e3;DX(r)?t=r:r==="long"&&(t=3e3);var a=Ny.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(_c);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=_c.indexOf(o);s!==-1&&_c.splice(s,1),Ny.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=Ny.select(this);o.append("button").classed("notifier-close",!0).html("×").on("click",function(){o.transition().call(i)});for(var s=o.append("p"),u=l.split(//g),f=0;f{"use strict";var gu=Yo().dfltConfig,Iy=Fy(),Hy=Y6.exports={};Hy.log=function(){var e;if(gu.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};Hy.warn=function(){var e;if(gu.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};Hy.error=function(){var e;if(gu.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var ph=B((fme,G6)=>{"use strict";G6.exports=function(){}});var Oy=B((cme,U6)=>{"use strict";U6.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{V6.exports=PX;function PX(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Z6=B((hme,X6)=>{X6.exports=EX;function EX(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var $6=B((dme,J6)=>{J6.exports=RX;function RX(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var By=B((pme,K6)=>{K6.exports=zX;function zX(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var j6=B((mme,Q6)=>{Q6.exports=NX;function NX(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],l=r[7],o=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=l,e[14]=o}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var r7=B((yme,e7)=>{e7.exports=FX;function FX(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],c=r[9],h=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15],_=t*o-a*l,T=t*s-n*l,x=t*u-i*l,M=a*s-n*o,A=a*u-i*o,k=n*u-i*s,L=f*y-c*p,D=f*m-h*p,P=f*b-d*p,R=c*m-h*y,z=c*b-d*y,H=h*b-d*m,O=_*H-T*z+x*R+M*P-A*D+k*L;return O?(O=1/O,e[0]=(o*H-s*z+u*R)*O,e[1]=(n*z-a*H-i*R)*O,e[2]=(y*k-m*A+b*M)*O,e[3]=(h*A-c*k-d*M)*O,e[4]=(s*P-l*H-u*D)*O,e[5]=(t*H-n*P+i*D)*O,e[6]=(m*x-p*k-b*T)*O,e[7]=(f*k-h*x+d*T)*O,e[8]=(l*z-o*P+u*L)*O,e[9]=(a*P-t*z-i*L)*O,e[10]=(p*A-y*x+b*_)*O,e[11]=(c*x-f*A-d*_)*O,e[12]=(o*D-l*R-s*L)*O,e[13]=(t*R-a*D+n*L)*O,e[14]=(y*T-p*M-m*_)*O,e[15]=(f*M-c*T+h*_)*O,e):null}});var a7=B((gme,t7)=>{t7.exports=IX;function IX(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],c=r[9],h=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15];return e[0]=o*(h*b-d*m)-c*(s*b-u*m)+y*(s*d-u*h),e[1]=-(a*(h*b-d*m)-c*(n*b-i*m)+y*(n*d-i*h)),e[2]=a*(s*b-u*m)-o*(n*b-i*m)+y*(n*u-i*s),e[3]=-(a*(s*d-u*h)-o*(n*d-i*h)+c*(n*u-i*s)),e[4]=-(l*(h*b-d*m)-f*(s*b-u*m)+p*(s*d-u*h)),e[5]=t*(h*b-d*m)-f*(n*b-i*m)+p*(n*d-i*h),e[6]=-(t*(s*b-u*m)-l*(n*b-i*m)+p*(n*u-i*s)),e[7]=t*(s*d-u*h)-l*(n*d-i*h)+f*(n*u-i*s),e[8]=l*(c*b-d*y)-f*(o*b-u*y)+p*(o*d-u*c),e[9]=-(t*(c*b-d*y)-f*(a*b-i*y)+p*(a*d-i*c)),e[10]=t*(o*b-u*y)-l*(a*b-i*y)+p*(a*u-i*o),e[11]=-(t*(o*d-u*c)-l*(a*d-i*c)+f*(a*u-i*o)),e[12]=-(l*(c*m-h*y)-f*(o*m-s*y)+p*(o*h-s*c)),e[13]=t*(c*m-h*y)-f*(a*m-n*y)+p*(a*h-n*c),e[14]=-(t*(o*m-s*y)-l*(a*m-n*y)+p*(a*s-n*o)),e[15]=t*(o*h-s*c)-l*(a*h-n*c)+f*(a*s-n*o),e}});var i7=B((xme,n7)=>{n7.exports=HX;function HX(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],l=e[5],o=e[6],s=e[7],u=e[8],f=e[9],c=e[10],h=e[11],d=e[12],p=e[13],y=e[14],m=e[15],b=r*l-t*i,_=r*o-a*i,T=r*s-n*i,x=t*o-a*l,M=t*s-n*l,A=a*s-n*o,k=u*p-f*d,L=u*y-c*d,D=u*m-h*d,P=f*y-c*p,R=f*m-h*p,z=c*m-h*y;return b*z-_*R+T*P+x*D-M*L+A*k}});var o7=B((bme,l7)=>{l7.exports=OX;function OX(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=r[4],s=r[5],u=r[6],f=r[7],c=r[8],h=r[9],d=r[10],p=r[11],y=r[12],m=r[13],b=r[14],_=r[15],T=t[0],x=t[1],M=t[2],A=t[3];return e[0]=T*a+x*o+M*c+A*y,e[1]=T*n+x*s+M*h+A*m,e[2]=T*i+x*u+M*d+A*b,e[3]=T*l+x*f+M*p+A*_,T=t[4],x=t[5],M=t[6],A=t[7],e[4]=T*a+x*o+M*c+A*y,e[5]=T*n+x*s+M*h+A*m,e[6]=T*i+x*u+M*d+A*b,e[7]=T*l+x*f+M*p+A*_,T=t[8],x=t[9],M=t[10],A=t[11],e[8]=T*a+x*o+M*c+A*y,e[9]=T*n+x*s+M*h+A*m,e[10]=T*i+x*u+M*d+A*b,e[11]=T*l+x*f+M*p+A*_,T=t[12],x=t[13],M=t[14],A=t[15],e[12]=T*a+x*o+M*c+A*y,e[13]=T*n+x*s+M*h+A*m,e[14]=T*i+x*u+M*d+A*b,e[15]=T*l+x*f+M*p+A*_,e}});var u7=B((_me,s7)=>{s7.exports=BX;function BX(e,r,t){var a=t[0],n=t[1],i=t[2],l,o,s,u,f,c,h,d,p,y,m,b;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(l=r[0],o=r[1],s=r[2],u=r[3],f=r[4],c=r[5],h=r[6],d=r[7],p=r[8],y=r[9],m=r[10],b=r[11],e[0]=l,e[1]=o,e[2]=s,e[3]=u,e[4]=f,e[5]=c,e[6]=h,e[7]=d,e[8]=p,e[9]=y,e[10]=m,e[11]=b,e[12]=l*a+f*n+p*i+r[12],e[13]=o*a+c*n+y*i+r[13],e[14]=s*a+h*n+m*i+r[14],e[15]=u*a+d*n+b*i+r[15]),e}});var c7=B((wme,f7)=>{f7.exports=YX;function YX(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var h7=B((Tme,v7)=>{v7.exports=GX;function GX(e,r,t,a){var n=a[0],i=a[1],l=a[2],o=Math.sqrt(n*n+i*i+l*l),s,u,f,c,h,d,p,y,m,b,_,T,x,M,A,k,L,D,P,R,z,H,O,U;return Math.abs(o)<1e-6?null:(o=1/o,n*=o,i*=o,l*=o,s=Math.sin(t),u=Math.cos(t),f=1-u,c=r[0],h=r[1],d=r[2],p=r[3],y=r[4],m=r[5],b=r[6],_=r[7],T=r[8],x=r[9],M=r[10],A=r[11],k=n*n*f+u,L=i*n*f+l*s,D=l*n*f-i*s,P=n*i*f-l*s,R=i*i*f+u,z=l*i*f+n*s,H=n*l*f+i*s,O=i*l*f-n*s,U=l*l*f+u,e[0]=c*k+y*L+T*D,e[1]=h*k+m*L+x*D,e[2]=d*k+b*L+M*D,e[3]=p*k+_*L+A*D,e[4]=c*P+y*R+T*z,e[5]=h*P+m*R+x*z,e[6]=d*P+b*R+M*z,e[7]=p*P+_*R+A*z,e[8]=c*H+y*O+T*U,e[9]=h*H+m*O+x*U,e[10]=d*H+b*O+M*U,e[11]=p*H+_*O+A*U,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var p7=B((Mme,d7)=>{d7.exports=UX;function UX(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],l=r[5],o=r[6],s=r[7],u=r[8],f=r[9],c=r[10],h=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=l*n+f*a,e[6]=o*n+c*a,e[7]=s*n+h*a,e[8]=u*n-i*a,e[9]=f*n-l*a,e[10]=c*n-o*a,e[11]=h*n-s*a,e}});var y7=B((Ame,m7)=>{m7.exports=VX;function VX(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[8],f=r[9],c=r[10],h=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=l*n-f*a,e[2]=o*n-c*a,e[3]=s*n-h*a,e[8]=i*a+u*n,e[9]=l*a+f*n,e[10]=o*a+c*n,e[11]=s*a+h*n,e}});var x7=B((kme,g7)=>{g7.exports=WX;function WX(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[4],f=r[5],c=r[6],h=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=l*n+f*a,e[2]=o*n+c*a,e[3]=s*n+h*a,e[4]=u*n-i*a,e[5]=f*n-l*a,e[6]=c*n-o*a,e[7]=h*n-s*a,e}});var _7=B((qme,b7)=>{b7.exports=XX;function XX(e,r,t){var a,n,i,l=t[0],o=t[1],s=t[2],u=Math.sqrt(l*l+o*o+s*s);return Math.abs(u)<1e-6?null:(u=1/u,l*=u,o*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=l*l*i+n,e[1]=o*l*i+s*a,e[2]=s*l*i-o*a,e[3]=0,e[4]=l*o*i-s*a,e[5]=o*o*i+n,e[6]=s*o*i+l*a,e[7]=0,e[8]=l*s*i+o*a,e[9]=o*s*i-l*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var T7=B((Cme,w7)=>{w7.exports=ZX;function ZX(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=a+a,s=n+n,u=i+i,f=a*o,c=a*s,h=a*u,d=n*s,p=n*u,y=i*u,m=l*o,b=l*s,_=l*u;return e[0]=1-(d+y),e[1]=c+_,e[2]=h-b,e[3]=0,e[4]=c-_,e[5]=1-(f+y),e[6]=p+m,e[7]=0,e[8]=h+b,e[9]=p-m,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var A7=B((Lme,M7)=>{M7.exports=JX;function JX(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var q7=B((Sme,k7)=>{k7.exports=$X;function $X(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var L7=B((Dme,C7)=>{C7.exports=KX;function KX(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var D7=B((Pme,S7)=>{S7.exports=QX;function QX(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var E7=B((Eme,P7)=>{P7.exports=jX;function jX(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Yy=B((Rme,R7)=>{R7.exports=eZ;function eZ(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=t+t,o=a+a,s=n+n,u=t*l,f=a*l,c=a*o,h=n*l,d=n*o,p=n*s,y=i*l,m=i*o,b=i*s;return e[0]=1-c-p,e[1]=f+b,e[2]=h-m,e[3]=0,e[4]=f-b,e[5]=1-u-p,e[6]=d+y,e[7]=0,e[8]=h+m,e[9]=d-y,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var N7=B((zme,z7)=>{z7.exports=rZ;function rZ(e,r,t,a,n,i,l){var o=1/(t-r),s=1/(n-a),u=1/(i-l);return e[0]=i*2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*o,e[9]=(n+a)*s,e[10]=(l+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=l*i*2*u,e[15]=0,e}});var I7=B((Nme,F7)=>{F7.exports=tZ;function tZ(e,r,t,a,n){var i=1/Math.tan(r/2),l=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*l,e[15]=0,e}});var O7=B((Fme,H7)=>{H7.exports=aZ;function aZ(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),l=Math.tan(r.leftDegrees*Math.PI/180),o=Math.tan(r.rightDegrees*Math.PI/180),s=2/(l+o),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((l-o)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var Y7=B((Ime,B7)=>{B7.exports=nZ;function nZ(e,r,t,a,n,i,l){var o=1/(r-t),s=1/(a-n),u=1/(i-l);return e[0]=-2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*o,e[13]=(n+a)*s,e[14]=(l+i)*u,e[15]=1,e}});var U7=B((Hme,G7)=>{var iZ=By();G7.exports=lZ;function lZ(e,r,t,a){var n,i,l,o,s,u,f,c,h,d,p=r[0],y=r[1],m=r[2],b=a[0],_=a[1],T=a[2],x=t[0],M=t[1],A=t[2];return Math.abs(p-x)<1e-6&&Math.abs(y-M)<1e-6&&Math.abs(m-A)<1e-6?iZ(e):(f=p-x,c=y-M,h=m-A,d=1/Math.sqrt(f*f+c*c+h*h),f*=d,c*=d,h*=d,n=_*h-T*c,i=T*f-b*h,l=b*c-_*f,d=Math.sqrt(n*n+i*i+l*l),d?(d=1/d,n*=d,i*=d,l*=d):(n=0,i=0,l=0),o=c*l-h*i,s=h*n-f*l,u=f*i-c*n,d=Math.sqrt(o*o+s*s+u*u),d?(d=1/d,o*=d,s*=d,u*=d):(o=0,s=0,u=0),e[0]=n,e[1]=o,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=l,e[9]=u,e[10]=h,e[11]=0,e[12]=-(n*p+i*y+l*m),e[13]=-(o*p+s*y+u*m),e[14]=-(f*p+c*y+h*m),e[15]=1,e)}});var W7=B((Ome,V7)=>{V7.exports=oZ;function oZ(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Gy=B((Bme,X7)=>{X7.exports={create:W6(),clone:Z6(),copy:$6(),identity:By(),transpose:j6(),invert:r7(),adjoint:a7(),determinant:i7(),multiply:o7(),translate:u7(),scale:c7(),rotate:h7(),rotateX:p7(),rotateY:y7(),rotateZ:x7(),fromRotation:_7(),fromRotationTranslation:T7(),fromScaling:A7(),fromTranslation:q7(),fromXRotation:L7(),fromYRotation:D7(),fromZRotation:E7(),fromQuat:Yy(),frustum:N7(),perspective:I7(),perspectiveFromFieldOfView:O7(),ortho:Y7(),lookAt:U7(),str:W7()}});var mh=B(It=>{"use strict";var sZ=Gy();It.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var uZ=kr(),Z7=Go(),fZ=mh(),cZ=Gy();function vZ(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function hZ(e){var r=uZ.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function J7(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function dZ(e,r){$7("global",e,r)}function $7(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):Z7.warn("addStyleRule failed"):Z7.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function pZ(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&J7(t)}function mZ(e,r,t,a,n,i){var l=a.split(":"),o=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[l[0]]=l[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[l[0]]=l[1]:f.style[o[0]]=o[1])}),u.setAttribute(s,!0))})}function yZ(e){var r=Q7(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=K7(a);if(n){var i=fZ.convertCssMatrix(n);t=cZ.multiply(t,t,i)}}),t}function K7(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function Q7(e){for(var r=[];gZ(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function gZ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function xZ(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}j7.exports={getGraphDiv:vZ,isPlotDiv:hZ,removeElement:J7,addStyleRule:dZ,addRelatedStyleRule:$7,deleteRelatedStyleRule:pZ,setStyleOnHover:mZ,getFullTransformMatrix:yZ,getElementTransformMatrix:K7,getElementAndAncestors:Q7,equalDomRects:xZ}});var Tc=B((Ume,ew)=>{"use strict";ew.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var ui=B((Vme,ow)=>{"use strict";var tw=mt().extendFlat,bZ=El(),aw={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},nw={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},_Z=aw.flags.slice().concat(["fullReplot"]),wZ=nw.flags.slice().concat("layoutReplot");ow.exports={traces:aw,layout:nw,traceFlags:function(){return rw(_Z)},layoutFlags:function(){return rw(wZ)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";Uy.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Uy.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Vy=B((Xme,sw)=>{"use strict";sw.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var _a=B(yh=>{"use strict";var uw=Vy(),Zme=uw.FORMAT_LINK,Jme=uw.DATE_FORMAT_LINK;function Wy(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function Nl(e,r){return r?r.d2l(e):e}function fw(e,r){return r?r.l2d(e):e}function TZ(e){return e.x0}function MZ(e){return e.x1}function AZ(e){return e.y0}function kZ(e){return e.y1}function cw(e){return e.x0shift||0}function vw(e){return e.x1shift||0}function hw(e){return e.y0shift||0}function dw(e){return e.y1shift||0}function gh(e,r){return Nl(e.x1,r)+vw(e)-Nl(e.x0,r)-cw(e)}function xh(e,r,t){return Nl(e.y1,t)+dw(e)-Nl(e.y0,t)-hw(e)}function qZ(e,r){return Math.abs(gh(e,r))}function CZ(e,r,t){return Math.abs(xh(e,r,t))}function LZ(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(gh(e,r),2)+Math.pow(xh(e,r,t),2))}function SZ(e,r){return fw((Nl(e.x1,r)+vw(e)+Nl(e.x0,r)+cw(e))/2,r)}function DZ(e,r,t){return fw((Nl(e.y1,t)+dw(e)+Nl(e.y0,t)+hw(e))/2,t)}function PZ(e,r,t){return e.type!=="line"?void 0:xh(e,r,t)/gh(e,r)}pw.exports={x0:TZ,x1:MZ,y0:AZ,y1:kZ,slope:PZ,dx:gh,dy:xh,width:qZ,height:CZ,length:LZ,xcenter:SZ,ycenter:DZ}});var gw=B((Qme,yw)=>{"use strict";var EZ=ui().overrideAll,Uo=tn(),mw=jt(),RZ=fi().dash,Fl=mt().extendFlat,zZ=_a().shapeTexttemplateAttrs,NZ=bh();yw.exports=EZ({newshape:{visible:Fl({},Uo.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Fl({},Uo.legend,{}),legendgroup:Fl({},Uo.legendgroup,{}),legendgrouptitle:{text:Fl({},Uo.legendgrouptitle.text,{}),font:mw({})},legendrank:Fl({},Uo.legendrank,{}),legendwidth:Fl({},Uo.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Fl({},RZ,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Fl({},Uo.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:zZ({newshape:!0},{keys:Object.keys(NZ)}),font:mw({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var bw=B((jme,xw)=>{"use strict";var FZ=fi().dash,IZ=mt().extendFlat;xw.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:IZ({},FZ,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var _h=B((eye,_w)=>{"use strict";_w.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var xu=B((rye,Aw)=>{"use strict";var Xy=jt(),HZ=Tc(),wh=zn(),ww=gw(),Tw=bw(),OZ=_h(),Mw=mt().extendFlat,Th=Xy({editType:"calc"});Th.family.dflt='"Open Sans", verdana, arial, sans-serif';Th.size.dflt=12;Th.color.dflt=wh.defaultLine;Aw.exports={font:Th,title:{text:{valType:"string",editType:"layoutstyle"},font:Xy({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Xy({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Mw(OZ({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:wh.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:wh.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:wh.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:ww.newshape,activeshape:ww.activeshape,newselection:Tw.newselection,activeselection:Tw.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Mw({},HZ.transition,{editType:"none"})}});var kw=nt(()=>{});var BZ={};var qw=nt(()=>{kw()});var yr=B(Fr=>{"use strict";var bu=Go(),Cw=ph(),Lw=Oy(),YZ=El(),GZ=wc().addStyleRule,Sw=mt(),UZ=tn(),VZ=xu(),WZ=Sw.extendFlat,Zy=Sw.extendDeepAll;Fr.modules={};Fr.allCategories={};Fr.allTypes=[];Fr.subplotsRegistry={};Fr.componentsRegistry={};Fr.layoutArrayContainers=[];Fr.layoutArrayRegexes=[];Fr.traceLayoutAttributes={};Fr.localeRegistry={};Fr.apiMethodRegistry={};Fr.collectableSubplotTypes=null;Fr.register=function(r){if(Fr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var QZ=cu().timeFormat,Bw=zr(),Jy=Go(),Hl=hu().mod,Tu=wt(),Nn=Tu.BADNUM,ln=Tu.ONEDAY,Mc=Tu.ONEHOUR,Il=Tu.ONEMIN,wu=Tu.ONESEC,Ac=Tu.EPOCHJD,il=yr(),zw=cu().utcFormat,jZ=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,eJ=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Nw=new Date().getFullYear()-70;function ll(e){return e&&il.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Ht.dateTick0=function(e,r){var t=rJ(e,!!r);if(r<2)return t;var a=Ht.dateTime2ms(t,e);return a+=ln*(r-1),Ht.ms2DateTime(a,0,e)};function rJ(e,r){return ll(e)?r?il.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:il.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Ht.dfltRange=function(e){return ll(e)?il.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Ht.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Ah,kh;Ht.dateTime2ms=function(e,r){if(Ht.isJSDate(e)){var t=e.getTimezoneOffset()*Il,a=(e.getUTCMinutes()-e.getMinutes())*Il+(e.getUTCSeconds()-e.getSeconds())*wu+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Il;t=t-n/2+Hl(a-t+n/2,n)}return e=Number(e)-t,e>=Ah&&e<=kh?e:Nn}if(typeof e!="string"&&typeof e!="number")return Nn;e=String(e);var i=ll(r),l=e.charAt(0);i&&(l==="G"||l==="g")&&(e=e.substr(1),r="");var o=i&&r.substr(0,7)==="chinese",s=e.match(o?eJ:jZ);if(!s)return Nn;var u=s[1],f=s[3]||"1",c=Number(s[5]||1),h=Number(s[7]||0),d=Number(s[9]||0),p=Number(s[11]||0);if(i){if(u.length===2)return Nn;u=Number(u);var y;try{var m=il.getComponentMethod("calendars","getCal")(r);if(o){var b=f.charAt(f.length-1)==="i";f=parseInt(f,10),y=m.newDate(u,m.toMonthIndex(u,f,b),c)}else y=m.newDate(u,Number(f),c)}catch(T){return Nn}return y?(y.toJD()-Ac)*ln+h*Mc+d*Il+p*wu:Nn}u.length===2?u=(Number(u)+2e3-Nw)%100+Nw:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,h,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?Nn:_.getTime()+p*wu};Ah=Ht.MIN_MS=Ht.dateTime2ms("-9999");kh=Ht.MAX_MS=Ht.dateTime2ms("9999-12-31 23:59:59.9999");Ht.isDateTime=function(e,r){return Ht.dateTime2ms(e,r)!==Nn};function _u(e,r){return String(e+Math.pow(10,r)).substr(1)}var Mh=90*ln,Fw=3*Mc,Iw=5*Il;Ht.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Ah&&e<=kh))return Nn;r||(r=0);var a=Math.floor(Hl(e+.05,1)*10),n=Math.round(e-a/10),i,l,o,s,u,f;if(ll(t)){var c=Math.floor(n/ln)+Ac,h=Math.floor(Hl(e,ln));try{i=il.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=zw("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;l=r=Ah+ln&&e<=kh-ln))return Nn;var r=Math.floor(Hl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=QZ("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return Yw(a,n,i,l,o)};function Yw(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+_u(r,2)+":"+_u(t,2),(a||n)&&(e+=":"+_u(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+_u(n,i)}return e}Ht.cleanDate=function(e,r,t){if(e===Nn)return r;if(Ht.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(ll(t))return Jy.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Ht.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Ht.isDateTime(e,t))return Jy.error("unrecognized date",e),r;return e};var tJ=/%\d?f/g,aJ=/%h/g,nJ={1:"1",2:"1",3:"2",4:"2"};function Hw(e,r,t,a){e=e.replace(tJ,function(i){var l=Math.min(+i.charAt(1)||6,6),o=(r/1e3%1+2).toFixed(l).substr(2).replace(/0+$/,"")||"0";return o});var n=new Date(Math.floor(r+.05));if(e=e.replace(aJ,function(){return nJ[t("%q")(n)]}),ll(a))try{e=il.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var iJ=[59,59.9,59.99,59.999,59.9999];function lJ(e,r){var t=Hl(e+.05,ln),a=_u(Math.floor(t/Mc),2)+":"+_u(Hl(Math.floor(t/Il),60),2);if(r!=="M"){Bw(r)||(r=0);var n=Math.min(Hl(e/wu,60),iJ[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Ht.formatDate=function(e,r,t,a,n,i){if(n=ll(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-geo-assets.js b/dist/plotly-geo-assets.js index 86eab7b82cf..da65233a271 100644 --- a/dist/plotly-geo-assets.js +++ b/dist/plotly-geo-assets.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.2 +* plotly.js v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -141,7 +141,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-geo.js b/dist/plotly-geo.js index 212a4f9b3c8..e762643dec0 100644 --- a/dist/plotly-geo.js +++ b/dist/plotly-geo.js @@ -1,5 +1,5 @@ /** -* plotly.js (geo) v3.0.2 +* plotly.js (geo) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-geo.min.js b/dist/plotly-geo.min.js index 850f561ea71..dc0c06fdcc4 100644 --- a/dist/plotly-geo.min.js +++ b/dist/plotly-geo.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (geo - minified) v3.0.2 +* plotly.js (geo - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var B_=Object.defineProperty;var UI=Object.getOwnPropertyDescriptor;var YI=Object.getOwnPropertyNames;var GI=Object.prototype.hasOwnProperty;var O_=(e,r)=>()=>(e&&(r=e(e=0)),r);var ne=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var VI=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of YI(r))!GI.call(e,a)&&a!==t&&B_(e,a,{get:()=>r[a],enumerable:!(n=UI(r,a))||n.enumerable});return e};var WI=e=>VI(B_({},"__esModule",{value:!0}),e);var Jh=ne(U_=>{"use strict";U_.version="3.0.2"});var G_=ne((Y_,$h)=>{(function(r,t,n){t[r]=t[r]||n(),typeof $h!="undefined"&&$h.exports&&($h.exports=t[r])})("Promise",typeof window!="undefined"?window:Y_,function(){"use strict";var r,t,n,a=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(S){return setImmediate(S)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(S,x,b,A){return Object.defineProperty(S,x,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(x,b,A){return x[b]=A,x}}n=function(){var S,x,b;function A(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,D){b=new A(M,D),x?x.next=b:S=b,x=b,b=void 0},drain:function(){var M=S;for(S=x=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(_,S){n.add(_,S),t||(t=i(n.drain))}function l(_){var S,x=typeof _;return _!=null&&(x=="object"||x=="function")&&(S=_.then),typeof S=="function"?S:!1}function s(){for(var _=0;_0&&o(s,x))}catch(b){v.call(new d(x),b)}}}function v(_){var S=this;S.triggered||(S.triggered=!0,S.def&&(S=S.def),S.msg=_,S.state=2,S.chain.length>0&&o(s,S))}function h(_,S,x,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},n=self.document;function a(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(c){t=function(g){for(var w=g.length,C=new Array(w);w--;)C[w]=g[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,w){l.call(this,g,w+"")},o.setAttributeNS=function(g,w,C){s.call(this,g,w,C+"")},u.setProperty=function(g,w,C){f.call(this,g,w+"",C)}}e.ascending=v;function v(c,g){return cg?1:c>=g?0:NaN}e.descending=function(c,g){return gc?1:g>=c?0:NaN},e.min=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wE&&(q=E)}else{for(;++w=E){q=E;break}for(;++wE&&(q=E)}return q},e.max=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wq&&(q=E)}else{for(;++w=E){q=E;break}for(;++wq&&(q=E)}return q},e.extent=function(c,g){var w=-1,C=c.length,q,E,G;if(arguments.length===1){for(;++w=E){q=G=E;break}for(;++wE&&(q=E),G=E){q=G=E;break}for(;++wE&&(q=E),G1)return G/(j-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)<0?C=E+1:q=E}return C},right:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)>0?q=E:C=E+1}return C}}}var p=m(v);e.bisectLeft=p.left,e.bisect=e.bisectRight=p.right,e.bisector=function(c){return m(c.length===1?function(g,w){return v(c(g),w)}:c)},e.shuffle=function(c,g,w){(C=arguments.length)<3&&(w=c.length,C<2&&(g=0));for(var C=w-g,q,E;C;)E=Math.random()*C--|0,q=c[C+g],c[C+g]=c[E+g],c[E+g]=q;return c},e.permute=function(c,g){for(var w=g.length,C=new Array(w);w--;)C[w]=c[g[w]];return C},e.pairs=function(c){for(var g=0,w=c.length-1,C,q=c[0],E=new Array(w<0?0:w);g=0;)for(G=c[g],w=G.length;--w>=0;)E[--q]=G[w];return E};var _=Math.abs;e.range=function(c,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=c,c=0)),(g-c)/w===1/0)throw new Error("infinite range");var C=[],q=S(_(w)),E=-1,G;if(c*=q,g*=q,w*=q,w<0)for(;(G=c+w*++E)>g;)C.push(G/q);else for(;(G=c+w*++E)=g.length)return q?q.call(c,j):C?j.sort(C):j;for(var ie=-1,ge=j.length,me=g[ae++],Re,Ye,ye,Ce=new b,De;++ie=g.length)return N;var ae=[],ie=w[j++];return N.forEach(function(ge,me){ae.push({key:ge,values:G(me,j)})}),ie?ae.sort(function(ge,me){return ie(ge.key,me.key)}):ae}return c.map=function(N,j){return E(j,N,0)},c.entries=function(N){return G(E(e.map,N,0),0)},c.key=function(N){return g.push(N),c},c.sortKeys=function(N){return w[g.length-1]=N,c},c.sortValues=function(N){return C=N,c},c.rollup=function(N){return q=N,c},c},e.set=function(c){var g=new X;if(c)for(var w=0,C=c.length;w=0&&(C=c.slice(w+1),c=c.slice(0,w)),c)return arguments.length<2?this[c].on(C):this[c].on(C,g);if(arguments.length===2){if(g==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(C,null);return this}};function de(c){var g=[],w=new b;function C(){for(var q=g,E=-1,G=q.length,N;++E=0&&(w=c.slice(0,g))!=="xmlns"&&(c=c.slice(g+1)),Me.hasOwnProperty(w)?{space:Me[w],local:c}:c}},pe.attr=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node();return c=e.ns.qualify(c),c.local?w.getAttributeNS(c.space,c.local):w.getAttribute(c)}for(g in c)this.each(Fe(g,c[g]));return this}return this.each(Fe(c,g))};function Fe(c,g){c=e.ns.qualify(c);function w(){this.removeAttribute(c)}function C(){this.removeAttributeNS(c.space,c.local)}function q(){this.setAttribute(c,g)}function E(){this.setAttributeNS(c.space,c.local,g)}function G(){var j=g.apply(this,arguments);j==null?this.removeAttribute(c):this.setAttribute(c,j)}function N(){var j=g.apply(this,arguments);j==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,j)}return g==null?c.local?C:w:typeof g=="function"?c.local?N:G:c.local?E:q}function Oe(c){return c.trim().replace(/\s+/g," ")}pe.classed=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node(),C=(c=nr(c)).length,q=-1;if(g=w.classList){for(;++q=0;)(E=w[C])&&(q&&q!==E.nextSibling&&q.parentNode.insertBefore(E,q),q=E);return this},pe.sort=function(c){c=Ve.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=q+1);!(j=G[g])&&++g0&&(c=c.slice(0,q));var G=mr.get(c);G&&(c=G,E=gr);function N(){var ie=this[C];ie&&(this.removeEventListener(c,ie,ie.$),delete this[C])}function j(){var ie=E(g,t(arguments));N.call(this),this.addEventListener(c,this[C]=ie,ie.$=w),ie._=g}function ae(){var ie=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),ge;for(var me in this)if(ge=me.match(ie)){var Re=this[me];this.removeEventListener(ge[1],Re,Re.$),delete this[me]}}return q?g?j:N:g?re:ae}var mr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&mr.forEach(function(c){"on"+c in n&&mr.remove(c)});function Mr(c,g){return function(w){var C=e.event;e.event=w,g[0]=this.__data__;try{c.apply(this,g)}finally{e.event=C}}}function gr(c,g){var w=Mr(c,g);return function(C){var q=this,E=C.relatedTarget;(!E||E!==q&&!(E.compareDocumentPosition(q)&8))&&w.call(q,C)}}var dr,Tr=0;function Pr(c){var g=".dragsuppress-"+ ++Tr,w="click"+g,C=e.select(i(c)).on("touchmove"+g,qe).on("dragstart"+g,qe).on("selectstart"+g,qe);if(dr==null&&(dr="onselectstart"in c?!1:te(c.style,"userSelect")),dr){var q=a(c).style,E=q[dr];q[dr]="none"}return function(G){if(C.on(g,null),dr&&(q[dr]=E),G){var N=function(){C.on(w,null)};C.on(w,function(){qe(),N()},!0),setTimeout(N,0)}}}e.mouse=function(c){return sr(c,Be())};var Ur=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function sr(c,g){g.changedTouches&&(g=g.changedTouches[0]);var w=c.ownerSVGElement||c;if(w.createSVGPoint){var C=w.createSVGPoint();if(Ur<0){var q=i(c);if(q.scrollX||q.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var E=w[0][0].getScreenCTM();Ur=!(E.f||E.e),w.remove()}}return Ur?(C.x=g.pageX,C.y=g.pageY):(C.x=g.clientX,C.y=g.clientY),C=C.matrixTransform(c.getScreenCTM().inverse()),[C.x,C.y]}var G=c.getBoundingClientRect();return[g.clientX-G.left-c.clientLeft,g.clientY-G.top-c.clientTop]}e.touch=function(c,g,w){if(arguments.length<3&&(w=g,g=Be().changedTouches),g){for(var C=0,q=g.length,E;C0?1:c<0?-1:0}function St(c,g,w){return(g[0]-c[0])*(w[1]-c[1])-(g[1]-c[1])*(w[0]-c[0])}function hn(c){return c>1?0:c<-1?We:Math.acos(c)}function Fn(c){return c>1?Hr:c<-1?-Hr:Math.asin(c)}function $n(c){return((c=Math.exp(c))-1/c)/2}function Xt(c){return((c=Math.exp(c))+1/c)/2}function cn(c){return((c=Math.exp(2*c))-1)/(c+1)}function sn(c){return(c=Math.sin(c/2))*c}var Kt=Math.SQRT2,aa=2,rt=4;e.interpolateZoom=function(c,g){var w=c[0],C=c[1],q=c[2],E=g[0],G=g[1],N=g[2],j=E-w,ae=G-C,ie=j*j+ae*ae,ge,me;if(ie<$e)me=Math.log(N/q)/Kt,ge=function(Ue){return[w+Ue*j,C+Ue*ae,q*Math.exp(Kt*Ue*me)]};else{var Re=Math.sqrt(ie),Ye=(N*N-q*q+rt*ie)/(2*q*aa*Re),ye=(N*N-q*q-rt*ie)/(2*N*aa*Re),Ce=Math.log(Math.sqrt(Ye*Ye+1)-Ye),De=Math.log(Math.sqrt(ye*ye+1)-ye);me=(De-Ce)/Kt,ge=function(Ue){var Ge=Ue*me,Pe=Xt(Ce),_r=q/(aa*Re)*(Pe*cn(Kt*Ge+Ce)-$n(Ce));return[w+_r*j,C+_r*ae,q*Pe/Xt(Kt*Ge+Ce)]}}return ge.duration=me*1e3,ge},e.behavior.zoom=function(){var c={x:0,y:0,k:1},g,w,C,q=[960,500],E=Qt,G=250,N=0,j="mousedown.zoom",ae="mousemove.zoom",ie="mouseup.zoom",ge,me="touchstart.zoom",Re,Ye=Ne(Ge,"zoomstart","zoom","zoomend"),ye,Ce,De,Ue;dn||(dn="onwheel"in n?(Ct=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in n?(Ct=function(){return e.event.wheelDelta},"mousewheel"):(Ct=function(){return-e.event.detail},"MozMousePixelScroll"));function Ge(Fr){Fr.on(j,ht).on(dn+".zoom",Zn).on("dblclick.zoom",on).on(me,jt)}Ge.event=function(Fr){Fr.each(function(){var _t=Ye.of(this,arguments),wt=c;ma?e.select(this).transition().each("start.zoom",function(){c=this.__chart__||{x:0,y:0,k:1},$r(_t)}).tween("zoom:zoom",function(){var Jt=q[0],Nn=q[1],oa=w?w[0]:Jt/2,Da=w?w[1]:Nn/2,ja=e.interpolateZoom([(oa-c.x)/c.k,(Da-c.y)/c.k,Jt/c.k],[(oa-wt.x)/wt.k,(Da-wt.y)/wt.k,Jt/wt.k]);return function(fi){var Ja=ja(fi),Si=Jt/Ja[2];this.__chart__=c={x:oa-Ja[0]*Si,y:Da-Ja[1]*Si,k:Si},bt(_t)}}).each("interrupt.zoom",function(){Qr(_t)}).each("end.zoom",function(){Qr(_t)}):(this.__chart__=c,$r(_t),bt(_t),Qr(_t))})},Ge.translate=function(Fr){return arguments.length?(c={x:+Fr[0],y:+Fr[1],k:c.k},Jr(),Ge):[c.x,c.y]},Ge.scale=function(Fr){return arguments.length?(c={x:c.x,y:c.y,k:null},Or(+Fr),Jr(),Ge):c.k},Ge.scaleExtent=function(Fr){return arguments.length?(E=Fr==null?Qt:[+Fr[0],+Fr[1]],Ge):E},Ge.center=function(Fr){return arguments.length?(C=Fr&&[+Fr[0],+Fr[1]],Ge):C},Ge.size=function(Fr){return arguments.length?(q=Fr&&[+Fr[0],+Fr[1]],Ge):q},Ge.duration=function(Fr){return arguments.length?(G=+Fr,Ge):G},Ge.x=function(Fr){return arguments.length?(Ce=Fr,ye=Fr.copy(),c={x:0,y:0,k:1},Ge):Ce},Ge.y=function(Fr){return arguments.length?(Ue=Fr,De=Fr.copy(),c={x:0,y:0,k:1},Ge):Ue};function Pe(Fr){return[(Fr[0]-c.x)/c.k,(Fr[1]-c.y)/c.k]}function _r(Fr){return[Fr[0]*c.k+c.x,Fr[1]*c.k+c.y]}function Or(Fr){c.k=Math.max(E[0],Math.min(E[1],Fr))}function Wr(Fr,_t){_t=_r(_t),c.x+=Fr[0]-_t[0],c.y+=Fr[1]-_t[1]}function Gr(Fr,_t,wt,Jt){Fr.__chart__={x:c.x,y:c.y,k:c.k},Or(Math.pow(2,Jt)),Wr(w=_t,wt),Fr=e.select(Fr),G>0&&(Fr=Fr.transition().duration(G)),Fr.call(Ge.event)}function Jr(){Ce&&Ce.domain(ye.range().map(function(Fr){return(Fr-c.x)/c.k}).map(ye.invert)),Ue&&Ue.domain(De.range().map(function(Fr){return(Fr-c.y)/c.k}).map(De.invert))}function $r(Fr){N++||Fr({type:"zoomstart"})}function bt(Fr){Jr(),Fr({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function Qr(Fr){--N||(Fr({type:"zoomend"}),w=null)}function ht(){var Fr=this,_t=Ye.of(Fr,arguments),wt=0,Jt=e.select(i(Fr)).on(ae,Da).on(ie,ja),Nn=Pe(e.mouse(Fr)),oa=Pr(Fr);vt.call(Fr),$r(_t);function Da(){wt=1,Wr(e.mouse(Fr),Nn),bt(_t)}function ja(){Jt.on(ae,null).on(ie,null),oa(wt),Qr(_t)}}function jt(){var Fr=this,_t=Ye.of(Fr,arguments),wt={},Jt=0,Nn,oa=".zoom-"+e.event.changedTouches[0].identifier,Da="touchmove"+oa,ja="touchend"+oa,fi=[],Ja=e.select(Fr),Si=Pr(Fr);Ci(),$r(_t),Ja.on(j,null).on(me,Ci);function Ha(){var ul=e.touches(Fr);return Nn=c.k,ul.forEach(function(Ea){Ea.identifier in wt&&(wt[Ea.identifier]=Pe(Ea))}),ul}function Ci(){var ul=e.event.target;e.select(ul).on(Da,Zf).on(ja,OI),fi.push(ul);for(var Ea=e.event.changedTouches,mo=0,jl=Ea.length;mo1){var Xf=yo[0],qu=yo[1],jh=Xf[0]-qu[0],H_=Xf[1]-qu[1];Jt=jh*jh+H_*H_}}function Zf(){var ul=e.touches(Fr),Ea,mo,jl,yo;vt.call(Fr);for(var g0=0,Xf=ul.length;g01?1:g,w=w<0?0:w>1?1:w,q=w<=.5?w*(1+g):w+g-w*g,C=2*w-q;function E(N){return N>360?N-=360:N<0&&(N+=360),N<60?C+(q-C)*N/60:N<180?q:N<240?C+(q-C)*(240-N)/60:C}function G(N){return Math.round(E(N)*255)}return new Hn(G(c+120),G(c),G(c-120))}e.hcl=Sn;function Sn(c,g,w){return this instanceof Sn?(this.h=+c,this.c=+g,void(this.l=+w)):arguments.length<2?c instanceof Sn?new Sn(c.h,c.c,c.l):c instanceof wn?El(c.l,c.a,c.b):El((c=Br((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new Sn(c,g,w)}var Na=Sn.prototype=new pn;Na.brighter=function(c){return new Sn(this.h,this.c,Math.min(100,this.l+It*(arguments.length?c:1)))},Na.darker=function(c){return new Sn(this.h,this.c,Math.max(0,this.l-It*(arguments.length?c:1)))},Na.rgb=function(){return pa(this.h,this.c,this.l).rgb()};function pa(c,g,w){return isNaN(c)&&(c=0),isNaN(g)&&(g=0),new wn(w,Math.cos(c*=lt)*g,Math.sin(c)*g)}e.lab=wn;function wn(c,g,w){return this instanceof wn?(this.l=+c,this.a=+g,void(this.b=+w)):arguments.length<2?c instanceof wn?new wn(c.l,c.a,c.b):c instanceof Sn?pa(c.h,c.c,c.l):Br((c=Hn(c)).r,c.g,c.b):new wn(c,g,w)}var It=18,In=.95047,gi=1,io=1.08883,mi=wn.prototype=new pn;mi.brighter=function(c){return new wn(Math.min(100,this.l+It*(arguments.length?c:1)),this.a,this.b)},mi.darker=function(c){return new wn(Math.max(0,this.l-It*(arguments.length?c:1)),this.a,this.b)},mi.rgb=function(){return ms(this.l,this.a,this.b)};function ms(c,g,w){var C=(c+16)/116,q=C+g/500,E=C-w/200;return q=Bo(q)*In,C=Bo(C)*gi,E=Bo(E)*io,new Hn(Oo(3.2404542*q-1.5371385*C-.4985314*E),Oo(-.969266*q+1.8760108*C+.041556*E),Oo(.0556434*q-.2040259*C+1.0572252*E))}function El(c,g,w){return c>0?new Sn(Math.atan2(w,g)*xt,Math.sqrt(g*g+w*w),c):new Sn(NaN,NaN,c)}function Bo(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function ys(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Oo(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Hn;function Hn(c,g,w){return this instanceof Hn?(this.r=~~c,this.g=~~g,void(this.b=~~w)):arguments.length<2?c instanceof Hn?new Hn(c.r,c.g,c.b):Lt(""+c,Hn,da):new Hn(c,g,w)}function yi(c){return new Hn(c>>16,c>>8&255,c&255)}function Uo(c){return yi(c)+""}var bi=Hn.prototype=new pn;bi.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var g=this.r,w=this.g,C=this.b,q=30;return!g&&!w&&!C?new Hn(q,q,q):(g&&g>4,C=C>>4|C,q=j&240,q=q>>4|q,E=j&15,E=E<<4|E):c.length===7&&(C=(j&16711680)>>16,q=(j&65280)>>8,E=j&255)),g(C,q,E))}function Ht(c,g,w){var C=Math.min(c/=255,g/=255,w/=255),q=Math.max(c,g,w),E=q-C,G,N,j=(q+C)/2;return E?(N=j<.5?E/(q+C):E/(2-q-C),c==q?G=(g-w)/E+(g0&&j<1?0:G),new tn(G,N,j)}function Br(c,g,w){c=Vn(c),g=Vn(g),w=Vn(w);var C=ys((.4124564*c+.3575761*g+.1804375*w)/In),q=ys((.2126729*c+.7151522*g+.072175*w)/gi),E=ys((.0193339*c+.119192*g+.9503041*w)/io);return wn(116*q-16,500*(C-q),200*(q-E))}function Vn(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function nn(c){var g=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(g*2.55):g}var Dn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Dn.forEach(function(c,g){Dn.set(c,yi(g))});function At(c){return typeof c=="function"?c:function(){return c}}e.functor=At,e.xhr=Wa(V);function Wa(c){return function(g,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Yo(g,w,c,C)}}function Yo(c,g,w,C){var q={},E=e.dispatch("beforesend","progress","load","error"),G={},N=new XMLHttpRequest,j=null;self.XDomainRequest&&!("withCredentials"in N)&&/^(http(s)?:)?\/\//.test(c)&&(N=new XDomainRequest),"onload"in N?N.onload=N.onerror=ae:N.onreadystatechange=function(){N.readyState>3&&ae()};function ae(){var ie=N.status,ge;if(!ie&&cu(N)||ie>=200&&ie<300||ie===304){try{ge=w.call(q,N)}catch(me){E.error.call(q,me);return}E.load.call(q,ge)}else E.error.call(q,N)}return N.onprogress=function(ie){var ge=e.event;e.event=ie;try{E.progress.call(q,N)}finally{e.event=ge}},q.header=function(ie,ge){return ie=(ie+"").toLowerCase(),arguments.length<2?G[ie]:(ge==null?delete G[ie]:G[ie]=ge+"",q)},q.mimeType=function(ie){return arguments.length?(g=ie==null?null:ie+"",q):g},q.responseType=function(ie){return arguments.length?(j=ie,q):j},q.response=function(ie){return w=ie,q},["get","post"].forEach(function(ie){q[ie]=function(){return q.send.apply(q,[ie].concat(t(arguments)))}}),q.send=function(ie,ge,me){if(arguments.length===2&&typeof ge=="function"&&(me=ge,ge=null),N.open(ie,c,!0),g!=null&&!("accept"in G)&&(G.accept=g+",*/*"),N.setRequestHeader)for(var Re in G)N.setRequestHeader(Re,G[Re]);return g!=null&&N.overrideMimeType&&N.overrideMimeType(g),j!=null&&(N.responseType=j),me!=null&&q.on("error",me).on("load",function(Ye){me(null,Ye)}),E.beforesend.call(q,N),N.send(ge==null?null:ge),q},q.abort=function(){return N.abort(),q},e.rebind(q,E,"on"),C==null?q:q.get(wf(C))}function wf(c){return c.length===1?function(g,w){c(g==null?w:null)}:c}function cu(c){var g=c.responseType;return g&&g!=="text"?c.response:c.responseText}e.dsv=function(c,g){var w=new RegExp('["'+c+` +"use strict";var Plotly=(()=>{var B_=Object.defineProperty;var UI=Object.getOwnPropertyDescriptor;var YI=Object.getOwnPropertyNames;var GI=Object.prototype.hasOwnProperty;var O_=(e,r)=>()=>(e&&(r=e(e=0)),r);var ne=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var VI=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of YI(r))!GI.call(e,a)&&a!==t&&B_(e,a,{get:()=>r[a],enumerable:!(n=UI(r,a))||n.enumerable});return e};var WI=e=>VI(B_({},"__esModule",{value:!0}),e);var Jh=ne(U_=>{"use strict";U_.version="3.0.3"});var G_=ne((Y_,$h)=>{(function(r,t,n){t[r]=t[r]||n(),typeof $h!="undefined"&&$h.exports&&($h.exports=t[r])})("Promise",typeof window!="undefined"?window:Y_,function(){"use strict";var r,t,n,a=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(S){return setImmediate(S)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(S,x,b,A){return Object.defineProperty(S,x,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(x,b,A){return x[b]=A,x}}n=function(){var S,x,b;function A(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,D){b=new A(M,D),x?x.next=b:S=b,x=b,b=void 0},drain:function(){var M=S;for(S=x=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(_,S){n.add(_,S),t||(t=i(n.drain))}function l(_){var S,x=typeof _;return _!=null&&(x=="object"||x=="function")&&(S=_.then),typeof S=="function"?S:!1}function s(){for(var _=0;_0&&o(s,x))}catch(b){v.call(new d(x),b)}}}function v(_){var S=this;S.triggered||(S.triggered=!0,S.def&&(S=S.def),S.msg=_,S.state=2,S.chain.length>0&&o(s,S))}function h(_,S,x,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},n=self.document;function a(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(c){t=function(g){for(var w=g.length,C=new Array(w);w--;)C[w]=g[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,w){l.call(this,g,w+"")},o.setAttributeNS=function(g,w,C){s.call(this,g,w,C+"")},u.setProperty=function(g,w,C){f.call(this,g,w+"",C)}}e.ascending=v;function v(c,g){return cg?1:c>=g?0:NaN}e.descending=function(c,g){return gc?1:g>=c?0:NaN},e.min=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wE&&(q=E)}else{for(;++w=E){q=E;break}for(;++wE&&(q=E)}return q},e.max=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wq&&(q=E)}else{for(;++w=E){q=E;break}for(;++wq&&(q=E)}return q},e.extent=function(c,g){var w=-1,C=c.length,q,E,G;if(arguments.length===1){for(;++w=E){q=G=E;break}for(;++wE&&(q=E),G=E){q=G=E;break}for(;++wE&&(q=E),G1)return G/(j-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)<0?C=E+1:q=E}return C},right:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)>0?q=E:C=E+1}return C}}}var p=m(v);e.bisectLeft=p.left,e.bisect=e.bisectRight=p.right,e.bisector=function(c){return m(c.length===1?function(g,w){return v(c(g),w)}:c)},e.shuffle=function(c,g,w){(C=arguments.length)<3&&(w=c.length,C<2&&(g=0));for(var C=w-g,q,E;C;)E=Math.random()*C--|0,q=c[C+g],c[C+g]=c[E+g],c[E+g]=q;return c},e.permute=function(c,g){for(var w=g.length,C=new Array(w);w--;)C[w]=c[g[w]];return C},e.pairs=function(c){for(var g=0,w=c.length-1,C,q=c[0],E=new Array(w<0?0:w);g=0;)for(G=c[g],w=G.length;--w>=0;)E[--q]=G[w];return E};var _=Math.abs;e.range=function(c,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=c,c=0)),(g-c)/w===1/0)throw new Error("infinite range");var C=[],q=S(_(w)),E=-1,G;if(c*=q,g*=q,w*=q,w<0)for(;(G=c+w*++E)>g;)C.push(G/q);else for(;(G=c+w*++E)=g.length)return q?q.call(c,j):C?j.sort(C):j;for(var ie=-1,ge=j.length,me=g[ae++],Re,Ye,ye,Ce=new b,De;++ie=g.length)return N;var ae=[],ie=w[j++];return N.forEach(function(ge,me){ae.push({key:ge,values:G(me,j)})}),ie?ae.sort(function(ge,me){return ie(ge.key,me.key)}):ae}return c.map=function(N,j){return E(j,N,0)},c.entries=function(N){return G(E(e.map,N,0),0)},c.key=function(N){return g.push(N),c},c.sortKeys=function(N){return w[g.length-1]=N,c},c.sortValues=function(N){return C=N,c},c.rollup=function(N){return q=N,c},c},e.set=function(c){var g=new X;if(c)for(var w=0,C=c.length;w=0&&(C=c.slice(w+1),c=c.slice(0,w)),c)return arguments.length<2?this[c].on(C):this[c].on(C,g);if(arguments.length===2){if(g==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(C,null);return this}};function de(c){var g=[],w=new b;function C(){for(var q=g,E=-1,G=q.length,N;++E=0&&(w=c.slice(0,g))!=="xmlns"&&(c=c.slice(g+1)),Me.hasOwnProperty(w)?{space:Me[w],local:c}:c}},pe.attr=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node();return c=e.ns.qualify(c),c.local?w.getAttributeNS(c.space,c.local):w.getAttribute(c)}for(g in c)this.each(Fe(g,c[g]));return this}return this.each(Fe(c,g))};function Fe(c,g){c=e.ns.qualify(c);function w(){this.removeAttribute(c)}function C(){this.removeAttributeNS(c.space,c.local)}function q(){this.setAttribute(c,g)}function E(){this.setAttributeNS(c.space,c.local,g)}function G(){var j=g.apply(this,arguments);j==null?this.removeAttribute(c):this.setAttribute(c,j)}function N(){var j=g.apply(this,arguments);j==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,j)}return g==null?c.local?C:w:typeof g=="function"?c.local?N:G:c.local?E:q}function Oe(c){return c.trim().replace(/\s+/g," ")}pe.classed=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node(),C=(c=nr(c)).length,q=-1;if(g=w.classList){for(;++q=0;)(E=w[C])&&(q&&q!==E.nextSibling&&q.parentNode.insertBefore(E,q),q=E);return this},pe.sort=function(c){c=Ve.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=q+1);!(j=G[g])&&++g0&&(c=c.slice(0,q));var G=mr.get(c);G&&(c=G,E=gr);function N(){var ie=this[C];ie&&(this.removeEventListener(c,ie,ie.$),delete this[C])}function j(){var ie=E(g,t(arguments));N.call(this),this.addEventListener(c,this[C]=ie,ie.$=w),ie._=g}function ae(){var ie=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),ge;for(var me in this)if(ge=me.match(ie)){var Re=this[me];this.removeEventListener(ge[1],Re,Re.$),delete this[me]}}return q?g?j:N:g?re:ae}var mr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&mr.forEach(function(c){"on"+c in n&&mr.remove(c)});function Mr(c,g){return function(w){var C=e.event;e.event=w,g[0]=this.__data__;try{c.apply(this,g)}finally{e.event=C}}}function gr(c,g){var w=Mr(c,g);return function(C){var q=this,E=C.relatedTarget;(!E||E!==q&&!(E.compareDocumentPosition(q)&8))&&w.call(q,C)}}var dr,Tr=0;function Pr(c){var g=".dragsuppress-"+ ++Tr,w="click"+g,C=e.select(i(c)).on("touchmove"+g,qe).on("dragstart"+g,qe).on("selectstart"+g,qe);if(dr==null&&(dr="onselectstart"in c?!1:te(c.style,"userSelect")),dr){var q=a(c).style,E=q[dr];q[dr]="none"}return function(G){if(C.on(g,null),dr&&(q[dr]=E),G){var N=function(){C.on(w,null)};C.on(w,function(){qe(),N()},!0),setTimeout(N,0)}}}e.mouse=function(c){return sr(c,Be())};var Ur=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function sr(c,g){g.changedTouches&&(g=g.changedTouches[0]);var w=c.ownerSVGElement||c;if(w.createSVGPoint){var C=w.createSVGPoint();if(Ur<0){var q=i(c);if(q.scrollX||q.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var E=w[0][0].getScreenCTM();Ur=!(E.f||E.e),w.remove()}}return Ur?(C.x=g.pageX,C.y=g.pageY):(C.x=g.clientX,C.y=g.clientY),C=C.matrixTransform(c.getScreenCTM().inverse()),[C.x,C.y]}var G=c.getBoundingClientRect();return[g.clientX-G.left-c.clientLeft,g.clientY-G.top-c.clientTop]}e.touch=function(c,g,w){if(arguments.length<3&&(w=g,g=Be().changedTouches),g){for(var C=0,q=g.length,E;C0?1:c<0?-1:0}function St(c,g,w){return(g[0]-c[0])*(w[1]-c[1])-(g[1]-c[1])*(w[0]-c[0])}function hn(c){return c>1?0:c<-1?We:Math.acos(c)}function Fn(c){return c>1?Hr:c<-1?-Hr:Math.asin(c)}function $n(c){return((c=Math.exp(c))-1/c)/2}function Xt(c){return((c=Math.exp(c))+1/c)/2}function cn(c){return((c=Math.exp(2*c))-1)/(c+1)}function sn(c){return(c=Math.sin(c/2))*c}var Kt=Math.SQRT2,aa=2,rt=4;e.interpolateZoom=function(c,g){var w=c[0],C=c[1],q=c[2],E=g[0],G=g[1],N=g[2],j=E-w,ae=G-C,ie=j*j+ae*ae,ge,me;if(ie<$e)me=Math.log(N/q)/Kt,ge=function(Ue){return[w+Ue*j,C+Ue*ae,q*Math.exp(Kt*Ue*me)]};else{var Re=Math.sqrt(ie),Ye=(N*N-q*q+rt*ie)/(2*q*aa*Re),ye=(N*N-q*q-rt*ie)/(2*N*aa*Re),Ce=Math.log(Math.sqrt(Ye*Ye+1)-Ye),De=Math.log(Math.sqrt(ye*ye+1)-ye);me=(De-Ce)/Kt,ge=function(Ue){var Ge=Ue*me,Pe=Xt(Ce),_r=q/(aa*Re)*(Pe*cn(Kt*Ge+Ce)-$n(Ce));return[w+_r*j,C+_r*ae,q*Pe/Xt(Kt*Ge+Ce)]}}return ge.duration=me*1e3,ge},e.behavior.zoom=function(){var c={x:0,y:0,k:1},g,w,C,q=[960,500],E=Qt,G=250,N=0,j="mousedown.zoom",ae="mousemove.zoom",ie="mouseup.zoom",ge,me="touchstart.zoom",Re,Ye=Ne(Ge,"zoomstart","zoom","zoomend"),ye,Ce,De,Ue;dn||(dn="onwheel"in n?(Ct=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in n?(Ct=function(){return e.event.wheelDelta},"mousewheel"):(Ct=function(){return-e.event.detail},"MozMousePixelScroll"));function Ge(Fr){Fr.on(j,ht).on(dn+".zoom",Zn).on("dblclick.zoom",on).on(me,jt)}Ge.event=function(Fr){Fr.each(function(){var _t=Ye.of(this,arguments),wt=c;ma?e.select(this).transition().each("start.zoom",function(){c=this.__chart__||{x:0,y:0,k:1},$r(_t)}).tween("zoom:zoom",function(){var Jt=q[0],Nn=q[1],oa=w?w[0]:Jt/2,Da=w?w[1]:Nn/2,ja=e.interpolateZoom([(oa-c.x)/c.k,(Da-c.y)/c.k,Jt/c.k],[(oa-wt.x)/wt.k,(Da-wt.y)/wt.k,Jt/wt.k]);return function(fi){var Ja=ja(fi),Si=Jt/Ja[2];this.__chart__=c={x:oa-Ja[0]*Si,y:Da-Ja[1]*Si,k:Si},bt(_t)}}).each("interrupt.zoom",function(){Qr(_t)}).each("end.zoom",function(){Qr(_t)}):(this.__chart__=c,$r(_t),bt(_t),Qr(_t))})},Ge.translate=function(Fr){return arguments.length?(c={x:+Fr[0],y:+Fr[1],k:c.k},Jr(),Ge):[c.x,c.y]},Ge.scale=function(Fr){return arguments.length?(c={x:c.x,y:c.y,k:null},Or(+Fr),Jr(),Ge):c.k},Ge.scaleExtent=function(Fr){return arguments.length?(E=Fr==null?Qt:[+Fr[0],+Fr[1]],Ge):E},Ge.center=function(Fr){return arguments.length?(C=Fr&&[+Fr[0],+Fr[1]],Ge):C},Ge.size=function(Fr){return arguments.length?(q=Fr&&[+Fr[0],+Fr[1]],Ge):q},Ge.duration=function(Fr){return arguments.length?(G=+Fr,Ge):G},Ge.x=function(Fr){return arguments.length?(Ce=Fr,ye=Fr.copy(),c={x:0,y:0,k:1},Ge):Ce},Ge.y=function(Fr){return arguments.length?(Ue=Fr,De=Fr.copy(),c={x:0,y:0,k:1},Ge):Ue};function Pe(Fr){return[(Fr[0]-c.x)/c.k,(Fr[1]-c.y)/c.k]}function _r(Fr){return[Fr[0]*c.k+c.x,Fr[1]*c.k+c.y]}function Or(Fr){c.k=Math.max(E[0],Math.min(E[1],Fr))}function Wr(Fr,_t){_t=_r(_t),c.x+=Fr[0]-_t[0],c.y+=Fr[1]-_t[1]}function Gr(Fr,_t,wt,Jt){Fr.__chart__={x:c.x,y:c.y,k:c.k},Or(Math.pow(2,Jt)),Wr(w=_t,wt),Fr=e.select(Fr),G>0&&(Fr=Fr.transition().duration(G)),Fr.call(Ge.event)}function Jr(){Ce&&Ce.domain(ye.range().map(function(Fr){return(Fr-c.x)/c.k}).map(ye.invert)),Ue&&Ue.domain(De.range().map(function(Fr){return(Fr-c.y)/c.k}).map(De.invert))}function $r(Fr){N++||Fr({type:"zoomstart"})}function bt(Fr){Jr(),Fr({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function Qr(Fr){--N||(Fr({type:"zoomend"}),w=null)}function ht(){var Fr=this,_t=Ye.of(Fr,arguments),wt=0,Jt=e.select(i(Fr)).on(ae,Da).on(ie,ja),Nn=Pe(e.mouse(Fr)),oa=Pr(Fr);vt.call(Fr),$r(_t);function Da(){wt=1,Wr(e.mouse(Fr),Nn),bt(_t)}function ja(){Jt.on(ae,null).on(ie,null),oa(wt),Qr(_t)}}function jt(){var Fr=this,_t=Ye.of(Fr,arguments),wt={},Jt=0,Nn,oa=".zoom-"+e.event.changedTouches[0].identifier,Da="touchmove"+oa,ja="touchend"+oa,fi=[],Ja=e.select(Fr),Si=Pr(Fr);Ci(),$r(_t),Ja.on(j,null).on(me,Ci);function Ha(){var ul=e.touches(Fr);return Nn=c.k,ul.forEach(function(Ea){Ea.identifier in wt&&(wt[Ea.identifier]=Pe(Ea))}),ul}function Ci(){var ul=e.event.target;e.select(ul).on(Da,Zf).on(ja,OI),fi.push(ul);for(var Ea=e.event.changedTouches,mo=0,jl=Ea.length;mo1){var Xf=yo[0],qu=yo[1],jh=Xf[0]-qu[0],H_=Xf[1]-qu[1];Jt=jh*jh+H_*H_}}function Zf(){var ul=e.touches(Fr),Ea,mo,jl,yo;vt.call(Fr);for(var g0=0,Xf=ul.length;g01?1:g,w=w<0?0:w>1?1:w,q=w<=.5?w*(1+g):w+g-w*g,C=2*w-q;function E(N){return N>360?N-=360:N<0&&(N+=360),N<60?C+(q-C)*N/60:N<180?q:N<240?C+(q-C)*(240-N)/60:C}function G(N){return Math.round(E(N)*255)}return new Hn(G(c+120),G(c),G(c-120))}e.hcl=Sn;function Sn(c,g,w){return this instanceof Sn?(this.h=+c,this.c=+g,void(this.l=+w)):arguments.length<2?c instanceof Sn?new Sn(c.h,c.c,c.l):c instanceof wn?El(c.l,c.a,c.b):El((c=Br((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new Sn(c,g,w)}var Na=Sn.prototype=new pn;Na.brighter=function(c){return new Sn(this.h,this.c,Math.min(100,this.l+It*(arguments.length?c:1)))},Na.darker=function(c){return new Sn(this.h,this.c,Math.max(0,this.l-It*(arguments.length?c:1)))},Na.rgb=function(){return pa(this.h,this.c,this.l).rgb()};function pa(c,g,w){return isNaN(c)&&(c=0),isNaN(g)&&(g=0),new wn(w,Math.cos(c*=lt)*g,Math.sin(c)*g)}e.lab=wn;function wn(c,g,w){return this instanceof wn?(this.l=+c,this.a=+g,void(this.b=+w)):arguments.length<2?c instanceof wn?new wn(c.l,c.a,c.b):c instanceof Sn?pa(c.h,c.c,c.l):Br((c=Hn(c)).r,c.g,c.b):new wn(c,g,w)}var It=18,In=.95047,gi=1,io=1.08883,mi=wn.prototype=new pn;mi.brighter=function(c){return new wn(Math.min(100,this.l+It*(arguments.length?c:1)),this.a,this.b)},mi.darker=function(c){return new wn(Math.max(0,this.l-It*(arguments.length?c:1)),this.a,this.b)},mi.rgb=function(){return ms(this.l,this.a,this.b)};function ms(c,g,w){var C=(c+16)/116,q=C+g/500,E=C-w/200;return q=Bo(q)*In,C=Bo(C)*gi,E=Bo(E)*io,new Hn(Oo(3.2404542*q-1.5371385*C-.4985314*E),Oo(-.969266*q+1.8760108*C+.041556*E),Oo(.0556434*q-.2040259*C+1.0572252*E))}function El(c,g,w){return c>0?new Sn(Math.atan2(w,g)*xt,Math.sqrt(g*g+w*w),c):new Sn(NaN,NaN,c)}function Bo(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function ys(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Oo(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Hn;function Hn(c,g,w){return this instanceof Hn?(this.r=~~c,this.g=~~g,void(this.b=~~w)):arguments.length<2?c instanceof Hn?new Hn(c.r,c.g,c.b):Lt(""+c,Hn,da):new Hn(c,g,w)}function yi(c){return new Hn(c>>16,c>>8&255,c&255)}function Uo(c){return yi(c)+""}var bi=Hn.prototype=new pn;bi.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var g=this.r,w=this.g,C=this.b,q=30;return!g&&!w&&!C?new Hn(q,q,q):(g&&g>4,C=C>>4|C,q=j&240,q=q>>4|q,E=j&15,E=E<<4|E):c.length===7&&(C=(j&16711680)>>16,q=(j&65280)>>8,E=j&255)),g(C,q,E))}function Ht(c,g,w){var C=Math.min(c/=255,g/=255,w/=255),q=Math.max(c,g,w),E=q-C,G,N,j=(q+C)/2;return E?(N=j<.5?E/(q+C):E/(2-q-C),c==q?G=(g-w)/E+(g0&&j<1?0:G),new tn(G,N,j)}function Br(c,g,w){c=Vn(c),g=Vn(g),w=Vn(w);var C=ys((.4124564*c+.3575761*g+.1804375*w)/In),q=ys((.2126729*c+.7151522*g+.072175*w)/gi),E=ys((.0193339*c+.119192*g+.9503041*w)/io);return wn(116*q-16,500*(C-q),200*(q-E))}function Vn(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function nn(c){var g=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(g*2.55):g}var Dn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Dn.forEach(function(c,g){Dn.set(c,yi(g))});function At(c){return typeof c=="function"?c:function(){return c}}e.functor=At,e.xhr=Wa(V);function Wa(c){return function(g,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Yo(g,w,c,C)}}function Yo(c,g,w,C){var q={},E=e.dispatch("beforesend","progress","load","error"),G={},N=new XMLHttpRequest,j=null;self.XDomainRequest&&!("withCredentials"in N)&&/^(http(s)?:)?\/\//.test(c)&&(N=new XDomainRequest),"onload"in N?N.onload=N.onerror=ae:N.onreadystatechange=function(){N.readyState>3&&ae()};function ae(){var ie=N.status,ge;if(!ie&&cu(N)||ie>=200&&ie<300||ie===304){try{ge=w.call(q,N)}catch(me){E.error.call(q,me);return}E.load.call(q,ge)}else E.error.call(q,N)}return N.onprogress=function(ie){var ge=e.event;e.event=ie;try{E.progress.call(q,N)}finally{e.event=ge}},q.header=function(ie,ge){return ie=(ie+"").toLowerCase(),arguments.length<2?G[ie]:(ge==null?delete G[ie]:G[ie]=ge+"",q)},q.mimeType=function(ie){return arguments.length?(g=ie==null?null:ie+"",q):g},q.responseType=function(ie){return arguments.length?(j=ie,q):j},q.response=function(ie){return w=ie,q},["get","post"].forEach(function(ie){q[ie]=function(){return q.send.apply(q,[ie].concat(t(arguments)))}}),q.send=function(ie,ge,me){if(arguments.length===2&&typeof ge=="function"&&(me=ge,ge=null),N.open(ie,c,!0),g!=null&&!("accept"in G)&&(G.accept=g+",*/*"),N.setRequestHeader)for(var Re in G)N.setRequestHeader(Re,G[Re]);return g!=null&&N.overrideMimeType&&N.overrideMimeType(g),j!=null&&(N.responseType=j),me!=null&&q.on("error",me).on("load",function(Ye){me(null,Ye)}),E.beforesend.call(q,N),N.send(ge==null?null:ge),q},q.abort=function(){return N.abort(),q},e.rebind(q,E,"on"),C==null?q:q.get(wf(C))}function wf(c){return c.length===1?function(g,w){c(g==null?w:null)}:c}function cu(c){var g=c.responseType;return g&&g!=="text"?c.response:c.responseText}e.dsv=function(c,g){var w=new RegExp('["'+c+` ]`),C=c.charCodeAt(0);function q(ae,ie,ge){arguments.length<3&&(ge=ie,ie=null);var me=Yo(ae,g,ie==null?E:G(ie),ge);return me.row=function(Re){return arguments.length?me.response((ie=Re)==null?E:G(Re)):ie},me}function E(ae){return q.parse(ae.responseText)}function G(ae){return function(ie){return q.parse(ie.responseText,ae)}}q.parse=function(ae,ie){var ge;return q.parseRows(ae,function(me,Re){if(ge)return ge(me,Re-1);var Ye=function(ye){for(var Ce={},De=me.length,Ue=0;Ue=Ye)return me;if(Ue)return Ue=!1,ge;var _r=ye;if(ae.charCodeAt(_r)===34){for(var Or=_r;Or++24?(isFinite(g)&&(clearTimeout(vu),vu=setTimeout(_i,g)),Vo=0):(Vo=1,Pl(_i))}e.timer.flush=function(){lo(),Wo()};function lo(){for(var c=Date.now(),g=oo;g;)c>=g.t&&g.c(c-g.t)&&(g.c=null),g=g.n;return c}function Wo(){for(var c,g=oo,w=1/0;g;)g.c?(g.t=0;--N)ye.push(q[ae[ge[N]][2]]);for(N=+Re;N1&&St(c[w[C-2]],c[w[C-1]],c[q])<=0;)--C;w[C++]=q}return w.slice(0,C)}function Zc(c,g){return c[0]-g[0]||c[1]-g[1]}e.geom.polygon=function(c){return Se(c,_s),c};var _s=e.geom.polygon.prototype=[];_s.area=function(){for(var c=-1,g=this.length,w,C=this[g-1],q=0;++cke)N=N.L;else if(G=g-Fv(N,w),G>ke){if(!N.R){C=N;break}N=N.R}else{E>-ke?(C=N.P,q=N):G>-ke?(C=N,q=N.N):C=q=N;break}var j=Ms(c);if(Oi.insert(C,j),!(!C&&!q)){if(C===q){co(C),q=Ms(C.site),Oi.insert(j,q),j.edge=q.edge=Il(C.site,j.site),fo(C),fo(q);return}if(!q){j.edge=Il(C.site,j.site);return}co(C),co(q);var ae=C.site,ie=ae.x,ge=ae.y,me=c.x-ie,Re=c.y-ge,Ye=q.site,ye=Ye.x-ie,Ce=Ye.y-ge,De=2*(me*Ce-Re*ye),Ue=me*me+Re*Re,Ge=ye*ye+Ce*Ce,Pe={x:(Ce*Ue-Re*Ge)/De+ie,y:(me*Ge-ye*Ue)/De+ge};Gi(q.edge,ae,Ye,Pe),j.edge=Il(ae,c,null,Pe),q.edge=Il(c,Ye,null,Pe),fo(C),fo(q)}}function Ts(c,g){var w=c.site,C=w.x,q=w.y,E=q-g;if(!E)return C;var G=c.P;if(!G)return-1/0;w=G.site;var N=w.x,j=w.y,ae=j-g;if(!ae)return N;var ie=N-C,ge=1/E-1/ae,me=ie/ae;return ge?(-me+Math.sqrt(me*me-2*ge*(ie*ie/(-2*ae)-j+ae/2+q-E/2)))/ge+C:(C+N)/2}function Fv(c,g){var w=c.N;if(w)return Ts(w,g);var C=c.site;return C.y===g?C.x:1/0}function Xo(c){this.site=c,this.edges=[]}Xo.prototype.prepare=function(){for(var c=this.edges,g=c.length,w;g--;)w=c[g].edge,(!w.b||!w.a)&&c.splice(g,1);return c.sort(Fl),c.length};function kf(c){for(var g=c[0][0],w=c[1][0],C=c[0][1],q=c[1][1],E,G,N,j,ae=uo,ie=ae.length,ge,me,Re,Ye,ye,Ce;ie--;)if(ge=ae[ie],!(!ge||!ge.prepare()))for(Re=ge.edges,Ye=Re.length,me=0;meke||_(j-G)>ke)&&(Re.splice(me,0,new jo(Hv(ge.site,Ce,_(N-g)ke?{x:g,y:_(E-g)ke?{x:_(G-q)ke?{x:w,y:_(E-w)ke?{x:_(G-C)=-$e)){var me=j*j+ae*ae,Re=ie*ie+Ce*Ce,Ye=(Ce*me-ae*Re)/ge,ye=(j*Re-ie*me)/ge,Ce=ye+N,De=Tf.pop()||new Jc;De.arc=c,De.site=q,De.x=Ye+G,De.y=Ce+Math.sqrt(Ye*Ye+ye*ye),De.cy=Ce,c.circle=De;for(var Ue=null,Ge=Nl._;Ge;)if(De.y0)){if(ye/=Re,Re<0){if(ye0){if(ye>me)return;ye>ge&&(ge=ye)}if(ye=w-N,!(!Re&&ye<0)){if(ye/=Re,Re<0){if(ye>me)return;ye>ge&&(ge=ye)}else if(Re>0){if(ye0)){if(ye/=Ye,Ye<0){if(ye0){if(ye>me)return;ye>ge&&(ge=ye)}if(ye=C-j,!(!Ye&&ye<0)){if(ye/=Ye,Ye<0){if(ye>me)return;ye>ge&&(ge=ye)}else if(Ye>0){if(ye0&&(q.a={x:N+ge*Re,y:j+ge*Ye}),me<1&&(q.b={x:N+me*Re,y:j+me*Ye}),q}}}}}}function xi(c){for(var g=so,w=Sf(c[0][0],c[0][1],c[1][0],c[1][1]),C=g.length,q;C--;)q=g[C],(!Iv(q,c)||!w(q)||_(q.a.x-q.b.x)=E)return;if(ie>me){if(!C)C={x:Ye,y:G};else if(C.y>=N)return;w={x:Ye,y:N}}else{if(!C)C={x:Ye,y:N};else if(C.y1)if(ie>me){if(!C)C={x:(G-De)/Ce,y:G};else if(C.y>=N)return;w={x:(N-De)/Ce,y:N}}else{if(!C)C={x:(N-De)/Ce,y:N};else if(C.y=E)return;w={x:E,y:Ce*E+De}}else{if(!C)C={x:E,y:Ce*E+De};else if(C.x=ie&&De.x<=me&&De.y>=ge&&De.y<=Re?[[ie,Re],[me,Re],[me,ge],[ie,ge]]:[];Ue.point=j[ye]}),ae}function N(j){return j.map(function(ae,ie){return{x:Math.round(C(ae,ie)/ke)*ke,y:Math.round(q(ae,ie)/ke)*ke,i:ie}})}return G.links=function(j){return Ss(N(j)).edges.filter(function(ae){return ae.l&&ae.r}).map(function(ae){return{source:j[ae.l.i],target:j[ae.r.i]}})},G.triangles=function(j){var ae=[];return Ss(N(j)).cells.forEach(function(ie,ge){for(var me=ie.site,Re=ie.edges.sort(Fl),Ye=-1,ye=Re.length,Ce,De,Ue=Re[ye-1].edge,Ge=Ue.l===me?Ue.r:Ue.l;++YeGe&&(Ge=ie.x),ie.y>Pe&&(Pe=ie.y),Re.push(ie.x),Ye.push(ie.y);else for(ye=0;yeGe&&(Ge=_r),Or>Pe&&(Pe=Or),Re.push(_r),Ye.push(Or)}var Wr=Ge-De,Gr=Pe-Ue;Wr>Gr?Pe=Ue+Wr:Ge=De+Gr;function Jr(Qr,ht,jt,Zn,on,Fr,_t,wt){if(!(isNaN(jt)||isNaN(Zn)))if(Qr.leaf){var Jt=Qr.x,Nn=Qr.y;if(Jt!=null)if(_(Jt-jt)+_(Nn-Zn)<.01)$r(Qr,ht,jt,Zn,on,Fr,_t,wt);else{var oa=Qr.point;Qr.x=Qr.y=Qr.point=null,$r(Qr,oa,Jt,Nn,on,Fr,_t,wt),$r(Qr,ht,jt,Zn,on,Fr,_t,wt)}else Qr.x=jt,Qr.y=Zn,Qr.point=ht}else $r(Qr,ht,jt,Zn,on,Fr,_t,wt)}function $r(Qr,ht,jt,Zn,on,Fr,_t,wt){var Jt=(on+_t)*.5,Nn=(Fr+wt)*.5,oa=jt>=Jt,Da=Zn>=Nn,ja=Da<<1|oa;Qr.leaf=!1,Qr=Qr.nodes[ja]||(Qr.nodes[ja]=gu()),oa?on=Jt:_t=Jt,Da?Fr=Nn:wt=Nn,Jr(Qr,ht,jt,Zn,on,Fr,_t,wt)}var bt=gu();if(bt.add=function(Qr){Jr(bt,Qr,+ge(Qr,++ye),+me(Qr,ye),De,Ue,Ge,Pe)},bt.visit=function(Qr){oi(Qr,bt,De,Ue,Ge,Pe)},bt.find=function(Qr){return mu(bt,Qr[0],Qr[1],De,Ue,Ge,Pe)},ye=-1,g==null){for(;++yeE||me>G||Re=_r,Gr=w>=Or,Jr=Gr<<1|Wr,$r=Jr+4;Jr<$r;++Jr)if(ie=Pe[Jr&3])switch(Jr&3){case 0:ae(ie,ge,me,_r,Or);break;case 1:ae(ie,_r,me,Re,Or);break;case 2:ae(ie,ge,Or,_r,Ye);break;case 3:ae(ie,_r,Or,Re,Ye);break}}}(c,C,q,E,G),j}e.interpolateRgb=yu;function yu(c,g){c=e.rgb(c),g=e.rgb(g);var w=c.r,C=c.g,q=c.b,E=g.r-w,G=g.g-C,N=g.b-q;return function(j){return"#"+Kr(Math.round(w+E*j))+Kr(Math.round(C+G*j))+Kr(Math.round(q+N*j))}}e.interpolateObject=Fa;function Fa(c,g){var w={},C={},q;for(q in c)q in g?w[q]=Qo(c[q],g[q]):C[q]=c[q];for(q in g)q in c||(C[q]=g[q]);return function(E){for(q in w)C[q]=w[q](E);return C}}e.interpolateNumber=Kn;function Kn(c,g){return c=+c,g=+g,function(w){return c*(1-w)+g*w}}e.interpolateString=Aa;function Aa(c,g){var w=Vi.lastIndex=Ls.lastIndex=0,C,q,E,G=-1,N=[],j=[];for(c=c+"",g=g+"";(C=Vi.exec(c))&&(q=Ls.exec(g));)(E=q.index)>w&&(E=g.slice(w,E),N[G]?N[G]+=E:N[++G]=E),(C=C[0])===(q=q[0])?N[G]?N[G]+=q:N[++G]=q:(N[++G]=null,j.push({i:G,x:Kn(C,q)})),w=Ls.lastIndex;return w=0&&!(C=e.interpolators[w](c,g)););return C}e.interpolators=[function(c,g){var w=typeof g;return(w==="string"?Dn.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?yu:Aa:g instanceof pn?yu:Array.isArray(g)?Ol:w==="object"&&isNaN(g)?Fa:Kn)(c,g)}],e.interpolateArray=Ol;function Ol(c,g){var w=[],C=[],q=c.length,E=g.length,G=Math.min(c.length,g.length),N;for(N=0;N=0?c.slice(0,g):c,C=g>=0?c.slice(g+1):"in";return w=$c.get(w)||Cf,C=Bv.get(C)||V,Ov(C(w.apply(null,r.call(arguments,1))))};function Ov(c){return function(g){return g<=0?0:g>=1?1:c(g)}}function Lf(c){return function(g){return 1-c(1-g)}}function qf(c){return function(g){return .5*(g<.5?c(2*g):2-c(2-2*g))}}function Df(c){return c*c}function Ef(c){return c*c*c}function Kc(c){if(c<=0)return 0;if(c>=1)return 1;var g=c*c,w=g*c;return 4*(c<.5?w:3*(c-g)+w-.75)}function Qc(c){return function(g){return Math.pow(g,c)}}function qs(c){return 1-Math.cos(c*Hr)}function Ds(c){return Math.pow(2,10*(c-1))}function wi(c){return 1-Math.sqrt(1-c*c)}function bu(c,g){var w;return arguments.length<2&&(g=.45),arguments.length?w=g/qr*Math.asin(1/c):(c=1,w=g/4),function(C){return 1+c*Math.pow(2,-10*C)*Math.sin((C-w)*qr/g)}}function Es(c){return c||(c=1.70158),function(g){return g*g*((c+1)*g-c)}}function _u(c){return c<1/2.75?7.5625*c*c:c<2/2.75?7.5625*(c-=1.5/2.75)*c+.75:c<2.5/2.75?7.5625*(c-=2.25/2.75)*c+.9375:7.5625*(c-=2.625/2.75)*c+.984375}e.interpolateHcl=e0;function e0(c,g){c=e.hcl(c),g=e.hcl(g);var w=c.h,C=c.c,q=c.l,E=g.h-w,G=g.c-C,N=g.l-q;return isNaN(G)&&(G=0,C=isNaN(C)?g.c:C),isNaN(E)?(E=0,w=isNaN(w)?g.h:w):E>180?E-=360:E<-180&&(E+=360),function(j){return pa(w+E*j,C+G*j,q+N*j)+""}}e.interpolateHsl=Pf;function Pf(c,g){c=e.hsl(c),g=e.hsl(g);var w=c.h,C=c.s,q=c.l,E=g.h-w,G=g.s-C,N=g.l-q;return isNaN(G)&&(G=0,C=isNaN(C)?g.s:C),isNaN(E)?(E=0,w=isNaN(w)?g.h:w):E>180?E-=360:E<-180&&(E+=360),function(j){return da(w+E*j,C+G*j,q+N*j)+""}}e.interpolateLab=Uv;function Uv(c,g){c=e.lab(c),g=e.lab(g);var w=c.l,C=c.a,q=c.b,E=g.l-w,G=g.a-C,N=g.b-q;return function(j){return ms(w+E*j,C+G*j,q+N*j)+""}}e.interpolateRound=ho;function ho(c,g){return g-=c,function(w){return Math.round(c+g*w)}}e.transform=function(c){var g=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(w){if(w!=null){g.setAttribute("transform",w);var C=g.transform.baseVal.consolidate()}return new xu(C?C.matrix:Rf)})(c)};function xu(c){var g=[c.a,c.b],w=[c.c,c.d],C=Ps(g),q=Ul(g,w),E=Ps(Rs(w,g,-q))||0;g[0]*w[1]180?g+=360:g-c>180&&(c+=360),C.push({i:w.push(po(w)+"rotate(",null,")")-2,x:Kn(c,g)})):g&&w.push(po(w)+"rotate("+g+")")}function t0(c,g,w,C){c!==g?C.push({i:w.push(po(w)+"skewX(",null,")")-2,x:Kn(c,g)}):g&&w.push(po(w)+"skewX("+g+")")}function Nf(c,g,w,C){if(c[0]!==g[0]||c[1]!==g[1]){var q=w.push(po(w)+"scale(",null,",",null,")");C.push({i:q-4,x:Kn(c[0],g[0])},{i:q-2,x:Kn(c[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(po(w)+"scale("+g+")")}function wu(c,g){var w=[],C=[];return c=e.transform(c),g=e.transform(g),r0(c.translate,g.translate,w,C),zf(c.rotate,g.rotate,w,C),t0(c.skew,g.skew,w,C),Nf(c.scale,g.scale,w,C),c=g=null,function(q){for(var E=-1,G=C.length,N;++E0?E=Pe:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:E=0})):Pe>0&&(g.start({type:"start",alpha:E=Pe}),w=Rl(c.tick)),c):E},c.start=function(){var Pe,_r=Re.length,Or=Ye.length,Wr=C[0],Gr=C[1],Jr,$r;for(Pe=0;Pe<_r;++Pe)($r=Re[Pe]).index=Pe,$r.weight=0;for(Pe=0;Pe=0;)E.push(ie=ae[j]),ie.parent=N,ie.depth=N.depth+1;w&&(N.value=0),N.children=ae}else w&&(N.value=+w.call(C,N,N.depth)||0),delete N.children;return Ia(q,function(ge){var me,Re;c&&(me=ge.children)&&me.sort(c),w&&(Re=ge.parent)&&(Re.value+=ge.value)}),G}return C.sort=function(q){return arguments.length?(c=q,C):c},C.children=function(q){return arguments.length?(g=q,C):g},C.value=function(q){return arguments.length?(w=q,C):w},C.revalue=function(q){return w&&(Ai(q,function(E){E.children&&(E.value=0)}),Ia(q,function(E){var G;E.children||(E.value=+w.call(C,E,E.depth)||0),(G=E.parent)&&(G.value+=E.value)})),q},C};function Wi(c,g){return e.rebind(c,g,"sort","children","value"),c.nodes=c,c.links=Za,c}function Ai(c,g){for(var w=[c];(c=w.pop())!=null;)if(g(c),(q=c.children)&&(C=q.length))for(var C,q;--C>=0;)w.push(q[C])}function Ia(c,g){for(var w=[c],C=[];(c=w.pop())!=null;)if(C.push(c),(G=c.children)&&(E=G.length))for(var q=-1,E,G;++qq&&(q=N),C.push(N)}for(G=0;GC&&(w=g,C=q);return w}function Is(c){return c.reduce(rl,0)}function rl(c,g){return c+g[1]}e.layout.histogram=function(){var c=!0,g=Number,w=Vl,C=Hs;function q(E,me){for(var N=[],j=E.map(g,this),ae=w.call(this,j,me),ie=C.call(this,ae,j,me),ge,me=-1,Re=j.length,Ye=ie.length-1,ye=c?1:1/Re,Ce;++me0)for(me=-1;++me=ae[0]&&Ce<=ae[1]&&(ge=N[e.bisect(ie,Ce,1,Ye)-1],ge.y+=ye,ge.push(E[me]));return N}return q.value=function(E){return arguments.length?(g=E,q):g},q.range=function(E){return arguments.length?(w=At(E),q):w},q.bins=function(E){return arguments.length?(C=typeof E=="number"?function(G){return tl(G,E)}:At(E),q):C},q.frequency=function(E){return arguments.length?(c=!!E,q):c},q};function Hs(c,g){return tl(c,Math.ceil(Math.log(g.length)/Math.LN2+1))}function tl(c,g){for(var w=-1,C=+c[0],q=(c[1]-C)/g,E=[];++w<=g;)E[w]=q*w+C;return E}function Vl(c){return[e.min(c),e.max(c)]}e.layout.pack=function(){var c=e.layout.hierarchy().sort(Tu),g=0,w=[1,1],C;function q(E,G){var N=c.call(this,E,G),j=N[0],ae=w[0],ie=w[1],ge=C==null?Math.sqrt:typeof C=="function"?C:function(){return C};if(j.x=j.y=0,Ia(j,function(Re){Re.r=+ge(Re.value)}),Ia(j,f0),g){var me=g*(C?1:Math.max(2*j.r/ae,2*j.r/ie))/2;Ia(j,function(Re){Re.r+=me}),Ia(j,f0),Ia(j,function(Re){Re.r-=me})}return Su(j,ae/2,ie/2,C?1:1/Math.max(2*j.r/ae,2*j.r/ie)),N}return q.size=function(E){return arguments.length?(w=E,q):w},q.radius=function(E){return arguments.length?(C=E==null||typeof E=="function"?E:+E,q):C},q.padding=function(E){return arguments.length?(g=+E,q):g},Wi(q,c)};function Tu(c,g){return c.value-g.value}function Bs(c,g){var w=c._pack_next;c._pack_next=g,g._pack_prev=c,g._pack_next=w,w._pack_prev=g}function u0(c,g){c._pack_next=g,g._pack_prev=c}function ku(c,g){var w=g.x-c.x,C=g.y-c.y,q=c.r+g.r;return .999*q*q>w*w+C*C}function f0(c){if(!(g=c.children)||!(me=g.length))return;var g,w=1/0,C=-1/0,q=1/0,E=-1/0,G,N,j,ae,ie,ge,me;function Re(Pe){w=Math.min(Pe.x-Pe.r,w),C=Math.max(Pe.x+Pe.r,C),q=Math.min(Pe.y-Pe.r,q),E=Math.max(Pe.y+Pe.r,E)}if(g.forEach(c0),G=g[0],G.x=-G.r,G.y=0,Re(G),me>1&&(N=g[1],N.x=N.r,N.y=0,Re(N),me>2))for(j=g[2],Wn(G,N,j),Re(j),Bs(G,j),G._pack_prev=j,Bs(j,N),N=G._pack_next,ae=3;aeCe.x&&(Ce=_r),_r.depth>De.depth&&(De=_r)});var Ue=g(ye,Ce)/2-ye.x,Ge=w[0]/(Ce.x+g(Ce,ye)/2+Ue),Pe=w[1]/(De.depth||1);Ai(Re,function(_r){_r.x=(_r.x+Ue)*Ge,_r.y=_r.depth*Pe})}return me}function E(ie){for(var ge={A:null,children:[ie]},me=[ge],Re;(Re=me.pop())!=null;)for(var Ye=Re.children,ye,Ce=0,De=Ye.length;Ce0&&(Os(I(ye,ie,me),ie,_r),De+=_r,Ue+=_r),Ge+=ye.m,De+=Re.m,Pe+=Ce.m,Ue+=Ye.m;ye&&!Cu(Ye)&&(Ye.t=ye,Ye.m+=Ge-Ue),Re&&!Wl(Ce)&&(Ce.t=Re,Ce.m+=De-Pe,me=ie)}return me}function ae(ie){ie.x*=w[0],ie.y=ie.depth*w[1]}return q.separation=function(ie){return arguments.length?(g=ie,q):g},q.size=function(ie){return arguments.length?(C=(w=ie)==null?ae:null,q):C?null:w},q.nodeSize=function(ie){return arguments.length?(C=(w=ie)==null?null:ae,q):C?w:null},Wi(q,c)};function li(c,g){return c.parent==g.parent?1:2}function Wl(c){var g=c.children;return g.length?g[0]:c.t}function Cu(c){var g=c.children,w;return(w=g.length)?g[w-1]:c.t}function Os(c,g,w){var C=w/(g.i-c.i);g.c-=C,g.s+=w,c.c+=C,g.z+=w,g.m+=w}function Yf(c){for(var g=0,w=0,C=c.children,q=C.length,E;--q>=0;)E=C[q],E.z+=g,E.m+=g,g+=E.s+(w+=E.c)}function I(c,g,w){return c.a.parent===g.parent?c.a:w}e.layout.cluster=function(){var c=e.layout.hierarchy().sort(null).value(null),g=li,w=[1,1],C=!1;function q(E,G){var N=c.call(this,E,G),j=N[0],ae,ie=0;Ia(j,function(ye){var Ce=ye.children;Ce&&Ce.length?(ye.x=ce(Ce),ye.y=J(Ce)):(ye.x=ae?ie+=g(ye,ae):0,ye.y=0,ae=ye)});var ge=oe(j),me=we(j),Re=ge.x-g(ge,me)/2,Ye=me.x+g(me,ge)/2;return Ia(j,C?function(ye){ye.x=(ye.x-j.x)*w[0],ye.y=(j.y-ye.y)*w[1]}:function(ye){ye.x=(ye.x-Re)/(Ye-Re)*w[0],ye.y=(1-(j.y?ye.y/j.y:1))*w[1]}),N}return q.separation=function(E){return arguments.length?(g=E,q):g},q.size=function(E){return arguments.length?(C=(w=E)==null,q):C?null:w},q.nodeSize=function(E){return arguments.length?(C=(w=E)!=null,q):C?w:null},Wi(q,c)};function J(c){return 1+e.max(c,function(g){return g.y})}function ce(c){return c.reduce(function(g,w){return g+w.x},0)/c.length}function oe(c){var g=c.children;return g&&g.length?oe(g[0]):c}function we(c){var g=c.children,w;return g&&(w=g.length)?we(g[w-1]):c}e.layout.treemap=function(){var c=e.layout.hierarchy(),g=Math.round,w=[1,1],C=null,q=He,E=!1,G,N="squarify",j=.5*(1+Math.sqrt(5));function ae(ye,Ce){for(var De=-1,Ue=ye.length,Ge,Pe;++De0;)Ue.push(Pe=Ge[Gr-1]),Ue.area+=Pe.area,N!=="squarify"||(Or=me(Ue,Wr))<=_r?(Ge.pop(),_r=Or):(Ue.area-=Ue.pop().area,Re(Ue,Wr,De,!1),Wr=Math.min(De.dx,De.dy),Ue.length=Ue.area=0,_r=1/0);Ue.length&&(Re(Ue,Wr,De,!0),Ue.length=Ue.area=0),Ce.forEach(ie)}}function ge(ye){var Ce=ye.children;if(Ce&&Ce.length){var De=q(ye),Ue=Ce.slice(),Ge,Pe=[];for(ae(Ue,De.dx*De.dy/ye.value),Pe.area=0;Ge=Ue.pop();)Pe.push(Ge),Pe.area+=Ge.area,Ge.z!=null&&(Re(Pe,Ge.z?De.dx:De.dy,De,!Ue.length),Pe.length=Pe.area=0);Ce.forEach(ge)}}function me(ye,Ce){for(var De=ye.area,Ue,Ge=0,Pe=1/0,_r=-1,Or=ye.length;++_rGe&&(Ge=Ue));return De*=De,Ce*=Ce,De?Math.max(Ce*Ge*j/De,De/(Ce*Pe*j)):1/0}function Re(ye,Ce,De,Ue){var Ge=-1,Pe=ye.length,_r=De.x,Or=De.y,Wr=Ce?g(ye.area/Ce):0,Gr;if(Ce==De.dx){for((Ue||Wr>De.dy)&&(Wr=De.dy);++GeDe.dx)&&(Wr=De.dx);++Ge1);return c+g*C*Math.sqrt(-2*Math.log(E)/E)}},logNormal:function(){var c=e.random.normal.apply(e,arguments);return function(){return Math.exp(c())}},bates:function(c){var g=e.random.irwinHall(c);return function(){return g()/c}},irwinHall:function(c){return function(){for(var g=0,w=0;w2?wr:br,ae=C?If:Ff;return q=j(c,g,ae,w),E=j(g,c,ae,Qo),N}function N(j){return q(j)}return N.invert=function(j){return E(j)},N.domain=function(j){return arguments.length?(c=j.map(Number),G()):c},N.range=function(j){return arguments.length?(g=j,G()):g},N.rangeRound=function(j){return N.range(j).interpolate(ho)},N.clamp=function(j){return arguments.length?(C=j,G()):C},N.interpolate=function(j){return arguments.length?(w=j,G()):w},N.ticks=function(j){return nt(c,j)},N.tickFormat=function(j,ae){return d3_scale_linearTickFormat(c,j,ae)},N.nice=function(j){return jr(c,j),G()},N.copy=function(){return Lr(c,g,w,C)},G()}function et(c,g){return e.rebind(c,g,"range","rangeRound","interpolate","clamp")}function jr(c,g){return Qe(c,hr(tt(c,g)[2])),Qe(c,hr(tt(c,g)[2])),c}function tt(c,g){g==null&&(g=10);var w=or(c),C=w[1]-w[0],q=Math.pow(10,Math.floor(Math.log(C/g)/Math.LN10)),E=g/C*q;return E<=.15?q*=10:E<=.35?q*=5:E<=.75&&(q*=2),w[0]=Math.ceil(w[0]/q)*q,w[1]=Math.floor(w[1]/q)*q+q*.5,w[2]=q,w}function nt(c,g){return e.range.apply(e,tt(c,g))}var Dr={s:1,g:1,p:1,r:1,e:1};function Ir(c){return-Math.floor(Math.log(c)/Math.LN10+.01)}function it(c,g){var w=Ir(g[2]);return c in Dr?Math.abs(w-Ir(Math.max(_(g[0]),_(g[1]))))+ +(c!=="e"):w-(c==="%")*2}e.scale.log=function(){return pt(e.scale.linear().domain([0,1]),10,!0,[1,10])};function pt(c,g,w,C){function q(N){return(w?Math.log(N<0?0:N):-Math.log(N>0?0:-N))/Math.log(g)}function E(N){return w?Math.pow(g,N):-Math.pow(g,-N)}function G(N){return c(q(N))}return G.invert=function(N){return E(c.invert(N))},G.domain=function(N){return arguments.length?(w=N[0]>=0,c.domain((C=N.map(Number)).map(q)),G):C},G.base=function(N){return arguments.length?(g=+N,c.domain(C.map(q)),G):g},G.nice=function(){var N=Qe(C.map(q),w?Math:Yt);return c.domain(N),C=N.map(E),G},G.ticks=function(){var N=or(C),j=[],ae=N[0],ie=N[1],ge=Math.floor(q(ae)),me=Math.ceil(q(ie)),Re=g%1?2:g;if(isFinite(me-ge)){if(w){for(;ge0;Ye--)j.push(E(ge)*Ye);for(ge=0;j[ge]ie;me--);j=j.slice(ge,me)}return j},G.copy=function(){return pt(c.copy(),g,w,C)},et(G,c)}var Yt={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return en(e.scale.linear(),1,[0,1])};function en(c,g,w){var C=Wt(g),q=Wt(1/g);function E(G){return c(C(G))}return E.invert=function(G){return q(c.invert(G))},E.domain=function(G){return arguments.length?(c.domain((w=G.map(Number)).map(C)),E):w},E.ticks=function(G){return nt(w,G)},E.tickFormat=function(G,N){return d3_scale_linearTickFormat(w,G,N)},E.nice=function(G){return E.domain(jr(w,G))},E.exponent=function(G){return arguments.length?(C=Wt(g=G),q=Wt(1/g),c.domain(w.map(C)),E):g},E.copy=function(){return en(c.copy(),g,w)},et(E,c)}function Wt(c){return function(g){return g<0?-Math.pow(-g,c):Math.pow(g,c)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return gn([],{t:"range",a:[[]]})};function gn(c,g){var w,C,q;function E(N){return C[((w.get(N)||(g.t==="range"?w.set(N,c.push(N)):NaN))-1)%C.length]}function G(N,j){return e.range(c.length).map(function(ae){return N+j*ae})}return E.domain=function(N){if(!arguments.length)return c;c=[],w=new b;for(var j=-1,ae=N.length,ie;++j0?w[E-1]:c[0],Eme?0:1;if(ie=Vr)return j(ie,Ye)+(ae?j(ae,1-Ye):"")+"Z";var ye,Ce,De,Ue,Ge=0,Pe=0,_r,Or,Wr,Gr,Jr,$r,bt,Qr,ht=[];if((Ue=(+G.apply(this,arguments)||0)/2)&&(De=C===Zi?Math.sqrt(ae*ae+ie*ie):+C.apply(this,arguments),Ye||(Pe*=-1),ie&&(Pe=Fn(De/ie*Math.sin(Ue))),ae&&(Ge=Fn(De/ae*Math.sin(Ue)))),ie){_r=ie*Math.cos(ge+Pe),Or=ie*Math.sin(ge+Pe),Wr=ie*Math.cos(me-Pe),Gr=ie*Math.sin(me-Pe);var jt=Math.abs(me-ge-2*Pe)<=We?0:1;if(Pe&&Lu(_r,Or,Wr,Gr)===Ye^jt){var Zn=(ge+me)/2;_r=ie*Math.cos(Zn),Or=ie*Math.sin(Zn),Wr=Gr=null}}else _r=Or=0;if(ae){Jr=ae*Math.cos(me-Ge),$r=ae*Math.sin(me-Ge),bt=ae*Math.cos(ge+Ge),Qr=ae*Math.sin(ge+Ge);var on=Math.abs(ge-me+2*Ge)<=We?0:1;if(Ge&&Lu(Jr,$r,bt,Qr)===1-Ye^on){var Fr=(ge+me)/2;Jr=ae*Math.cos(Fr),$r=ae*Math.sin(Fr),bt=Qr=null}}else Jr=$r=0;if(Re>ke&&(ye=Math.min(Math.abs(ie-ae)/2,+w.apply(this,arguments)))>.001){Ce=ae0?0:1}function v0(c,g,w,C,q){var E=c[0]-g[0],G=c[1]-g[1],N=(q?C:-C)/Math.sqrt(E*E+G*G),j=N*G,ae=-N*E,ie=c[0]+j,ge=c[1]+ae,me=g[0]+j,Re=g[1]+ae,Ye=(ie+me)/2,ye=(ge+Re)/2,Ce=me-ie,De=Re-ge,Ue=Ce*Ce+De*De,Ge=w-C,Pe=ie*Re-me*ge,_r=(De<0?-1:1)*Math.sqrt(Math.max(0,Ge*Ge*Ue-Pe*Pe)),Or=(Pe*De-Ce*_r)/Ue,Wr=(-Pe*Ce-De*_r)/Ue,Gr=(Pe*De+Ce*_r)/Ue,Jr=(-Pe*Ce+De*_r)/Ue,$r=Or-Ye,bt=Wr-ye,Qr=Gr-Ye,ht=Jr-ye;return $r*$r+bt*bt>Qr*Qr+ht*ht&&(Or=Gr,Wr=Jr),[[Or-j,Wr-ae],[Or*w/Ge,Wr*w/Ge]]}function h0(){return!0}function Uh(c){var g=zl,w=bs,C=h0,q=Xi,E=q.key,G=.7;function N(j){var ae=[],ie=[],ge=-1,me=j.length,Re,Ye=At(g),ye=At(w);function Ce(){ae.push("M",q(c(ie),G))}for(;++ge1?c.join("L"):c+"Z"}function Yh(c){return c.join("L")+"Z"}function Gh(c){for(var g=0,w=c.length,C=c[0],q=[C[0],",",C[1]];++g1&&q.push("H",C[0]),q.join("")}function d0(c){for(var g=0,w=c.length,C=c[0],q=[C[0],",",C[1]];++g1){N=g[1],E=c[j],j++,C+="C"+(q[0]+G[0])+","+(q[1]+G[1])+","+(E[0]-N[0])+","+(E[1]-N[1])+","+E[0]+","+E[1];for(var ae=2;ae9&&(E=w*3/Math.sqrt(E),G[N]=E*C,G[N+1]=E*q));for(N=-1;++N<=j;)E=(c[Math.min(j,N+1)][0]-c[Math.max(0,N-1)][0])/(6*(1+G[N]*G[N])),g.push([E||0,G[N]*E||0]);return g}function ue(c){return c.length<3?Xi(c):c[0]+p0(c,Z(c))}e.svg.line.radial=function(){var c=Uh(ve);return c.radius=c.x,delete c.x,c.angle=c.y,delete c.y,c};function ve(c){for(var g,w=-1,C=c.length,q,E;++wWe)+",1 "+ge}function ae(ie,ge,me,Re){return"Q 0,0 "+Re}return E.radius=function(ie){return arguments.length?(w=At(ie),E):w},E.source=function(ie){return arguments.length?(c=At(ie),E):c},E.target=function(ie){return arguments.length?(g=At(ie),E):g},E.startAngle=function(ie){return arguments.length?(C=At(ie),E):C},E.endAngle=function(ie){return arguments.length?(q=At(ie),E):q},E};function Le(c){return c.radius}e.svg.diagonal=function(){var c=he,g=xe,w=ze;function C(q,E){var G=c.call(this,q,E),N=g.call(this,q,E),j=(G.y+N.y)/2,ae=[G,{x:G.x,y:j},{x:N.x,y:j},N];return ae=ae.map(w),"M"+ae[0]+"C"+ae[1]+" "+ae[2]+" "+ae[3]}return C.source=function(q){return arguments.length?(c=At(q),C):c},C.target=function(q){return arguments.length?(g=At(q),C):g},C.projection=function(q){return arguments.length?(w=q,C):w},C};function ze(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),g=ze,w=c.projection;return c.projection=function(C){return arguments.length?w(tr(g=C)):g},c};function tr(c){return function(){var g=c.apply(this,arguments),w=g[0],C=g[1]-Hr;return[w*Math.cos(C),w*Math.sin(C)]}}e.svg.symbol=function(){var c=Ar,g=vr;function w(C,q){return(at.get(c.call(this,C,q))||Zr)(g.call(this,C,q))}return w.type=function(C){return arguments.length?(c=At(C),w):c},w.size=function(C){return arguments.length?(g=At(C),w):g},w};function vr(){return 64}function Ar(){return"circle"}function Zr(c){var g=Math.sqrt(c/We);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var at=e.map({circle:Zr,cross:function(c){var g=Math.sqrt(c/5)/2;return"M"+-3*g+","+-g+"H"+-g+"V"+-3*g+"H"+g+"V"+-g+"H"+3*g+"V"+g+"H"+g+"V"+3*g+"H"+-g+"V"+g+"H"+-3*g+"Z"},diamond:function(c){var g=Math.sqrt(c/(2*st)),w=g*st;return"M0,"+-g+"L"+w+",0 0,"+g+" "+-w+",0Z"},square:function(c){var g=Math.sqrt(c)/2;return"M"+-g+","+-g+"L"+g+","+-g+" "+g+","+g+" "+-g+","+g+"Z"},"triangle-down":function(c){var g=Math.sqrt(c/ot),w=g*ot/2;return"M0,"+w+"L"+g+","+-w+" "+-g+","+-w+"Z"},"triangle-up":function(c){var g=Math.sqrt(c/ot),w=g*ot/2;return"M0,"+-w+"L"+g+","+w+" "+-g+","+w+"Z"}});e.svg.symbolTypes=at.keys();var ot=Math.sqrt(3),st=Math.tan(30*lt);pe.transition=function(c){for(var g=ma||++zn,w=La(c),C=[],q,E,G=ui||{time:Date.now(),ease:Kc,delay:0,duration:250},N=-1,j=this.length;++N0;)ge[--Ue].call(c,De);if(Ce>=1)return G.event&&G.event.end.call(c,c.__data__,g),--E.count?delete E[C]:delete c[w],1}G||(N=q.time,j=Rl(me,0,N),G=E[C]={tween:new b,time:N,timer:j,delay:q.delay,duration:q.duration,ease:q.ease,index:g},q=null,++E.count)}e.svg.axis=function(){var c=e.scale.linear(),g=ji,w=6,C=6,q=3,E=[10],G=null,N;function j(ae){ae.each(function(){var ie=e.select(this),ge=this.__chart__||c,me=this.__chart__=c.copy(),Re=G==null?me.ticks?me.ticks.apply(me,E):me.domain():G,Ye=N==null?me.tickFormat?me.tickFormat.apply(me,E):V:N,ye=ie.selectAll(".tick").data(Re,me),Ce=ye.enter().insert("g",".domain").attr("class","tick").style("opacity",ke),De=e.transition(ye.exit()).style("opacity",ke).remove(),Ue=e.transition(ye.order()).style("opacity",1),Ge=Math.max(w,0)+q,Pe,_r=ur(me),Or=ie.selectAll(".domain").data([0]),Wr=(Or.enter().append("path").attr("class","domain"),e.transition(Or));Ce.append("line"),Ce.append("text");var Gr=Ce.select("line"),Jr=Ue.select("line"),$r=ye.select("text").text(Ye),bt=Ce.select("text"),Qr=Ue.select("text"),ht=g==="top"||g==="left"?-1:1,jt,Zn,on,Fr;if(g==="bottom"||g==="top"?(Pe=ll,jt="x",on="y",Zn="x2",Fr="y2",$r.attr("dy",ht<0?"0em":".71em").style("text-anchor","middle"),Wr.attr("d","M"+_r[0]+","+ht*C+"V0H"+_r[1]+"V"+ht*C)):(Pe=sl,jt="y",on="x",Zn="y2",Fr="x2",$r.attr("dy",".32em").style("text-anchor",ht<0?"end":"start"),Wr.attr("d","M"+ht*C+","+_r[0]+"H0V"+_r[1]+"H"+ht*C)),Gr.attr(Fr,ht*w),bt.attr(on,ht*Ge),Jr.attr(Zn,0).attr(Fr,ht*w),Qr.attr(jt,0).attr(on,ht*Ge),me.rangeBand){var _t=me,wt=_t.rangeBand()/2;ge=me=function(Jt){return _t(Jt)+wt}}else ge.rangeBand?ge=me:De.call(Pe,me,ge);Ce.call(Pe,ge,me),Ue.call(Pe,me,me)})}return j.scale=function(ae){return arguments.length?(c=ae,j):c},j.orient=function(ae){return arguments.length?(g=ae in ol?ae+"":ji,j):g},j.ticks=function(){return arguments.length?(E=t(arguments),j):E},j.tickValues=function(ae){return arguments.length?(G=ae,j):G},j.tickFormat=function(ae){return arguments.length?(N=ae,j):N},j.tickSize=function(ae){var ie=arguments.length;return ie?(w=+ae,C=+arguments[ie-1],j):w},j.innerTickSize=function(ae){return arguments.length?(w=+ae,j):w},j.outerTickSize=function(ae){return arguments.length?(C=+ae,j):C},j.tickPadding=function(ae){return arguments.length?(q=+ae,j):q},j.tickSubdivide=function(){return arguments.length&&j},j};var ji="bottom",ol={top:1,right:1,bottom:1,left:1};function ll(c,g,w){c.attr("transform",function(C){var q=g(C);return"translate("+(isFinite(q)?q:w(C))+",0)"})}function sl(c,g,w){c.attr("transform",function(C){var q=g(C);return"translate(0,"+(isFinite(q)?q:w(C))+")"})}e.svg.brush=function(){var c=Ne(ie,"brushstart","brush","brushend"),g=null,w=null,C=[0,0],q=[0,0],E,G,N=!0,j=!0,ae=go[0];function ie(ye){ye.each(function(){var Ce=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Ye).on("touchstart.brush",Ye),De=Ce.selectAll(".background").data([0]);De.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ce.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ue=Ce.selectAll(".resize").data(ae,V);Ue.exit().remove(),Ue.enter().append("g").attr("class",function(Or){return"resize "+Or}).style("cursor",function(Or){return Xl[Or]}).append("rect").attr("x",function(Or){return/[ew]$/.test(Or)?-3:null}).attr("y",function(Or){return/^[ns]/.test(Or)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ue.style("display",ie.empty()?"none":null);var Ge=e.transition(Ce),Pe=e.transition(De),_r;g&&(_r=ur(g),Pe.attr("x",_r[0]).attr("width",_r[1]-_r[0]),me(Ge)),w&&(_r=ur(w),Pe.attr("y",_r[0]).attr("height",_r[1]-_r[0]),Re(Ge)),ge(Ge)})}ie.event=function(ye){ye.each(function(){var Ce=c.of(this,arguments),De={x:C,y:q,i:E,j:G},Ue=this.__chart__||De;this.__chart__=De,ma?e.select(this).transition().each("start.brush",function(){E=Ue.i,G=Ue.j,C=Ue.x,q=Ue.y,Ce({type:"brushstart"})}).tween("brush:brush",function(){var Ge=Ol(C,De.x),Pe=Ol(q,De.y);return E=G=null,function(_r){C=De.x=Ge(_r),q=De.y=Pe(_r),Ce({type:"brush",mode:"resize"})}}).each("end.brush",function(){E=De.i,G=De.j,Ce({type:"brush",mode:"resize"}),Ce({type:"brushend"})}):(Ce({type:"brushstart"}),Ce({type:"brush",mode:"resize"}),Ce({type:"brushend"}))})};function ge(ye){ye.selectAll(".resize").attr("transform",function(Ce){return"translate("+C[+/e$/.test(Ce)]+","+q[+/^s/.test(Ce)]+")"})}function me(ye){ye.select(".extent").attr("x",C[0]),ye.selectAll(".extent,.n>rect,.s>rect").attr("width",C[1]-C[0])}function Re(ye){ye.select(".extent").attr("y",q[0]),ye.selectAll(".extent,.e>rect,.w>rect").attr("height",q[1]-q[0])}function Ye(){var ye=this,Ce=e.select(e.event.target),De=c.of(ye,arguments),Ue=e.select(ye),Ge=Ce.datum(),Pe=!/^(n|s)$/.test(Ge)&&g,_r=!/^(e|w)$/.test(Ge)&&w,Or=Ce.classed("extent"),Wr=Pr(ye),Gr,Jr=e.mouse(ye),$r,bt=e.select(i(ye)).on("keydown.brush",jt).on("keyup.brush",Zn);if(e.event.changedTouches?bt.on("touchmove.brush",on).on("touchend.brush",_t):bt.on("mousemove.brush",on).on("mouseup.brush",_t),Ue.interrupt().selectAll("*").interrupt(),Or)Jr[0]=C[0]-Jr[0],Jr[1]=q[0]-Jr[1];else if(Ge){var Qr=+/w$/.test(Ge),ht=+/^n/.test(Ge);$r=[C[1-Qr]-Jr[0],q[1-ht]-Jr[1]],Jr[0]=C[Qr],Jr[1]=q[ht]}else e.event.altKey&&(Gr=Jr.slice());Ue.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ce.style("cursor")),De({type:"brushstart"}),on();function jt(){e.event.keyCode==32&&(Or||(Gr=null,Jr[0]-=C[1],Jr[1]-=q[1],Or=2),qe())}function Zn(){e.event.keyCode==32&&Or==2&&(Jr[0]+=C[1],Jr[1]+=q[1],Or=0,qe())}function on(){var wt=e.mouse(ye),Jt=!1;$r&&(wt[0]+=$r[0],wt[1]+=$r[1]),Or||(e.event.altKey?(Gr||(Gr=[(C[0]+C[1])/2,(q[0]+q[1])/2]),Jr[0]=C[+(wt[0]{(function(e,r){typeof Qh=="object"&&typeof V_!="undefined"?r(Qh):(e=e||self,r(e.d3=e.d3||{}))})(Qh,function(e){"use strict";var r=new Date,t=new Date;function n(Ae,Ve,je,zr){function kr(er){return Ae(er=arguments.length===0?new Date:new Date(+er)),er}return kr.floor=function(er){return Ae(er=new Date(+er)),er},kr.ceil=function(er){return Ae(er=new Date(er-1)),Ve(er,1),Ae(er),er},kr.round=function(er){var Ke=kr(er),mr=kr.ceil(er);return er-Ke0))return Mr;do Mr.push(gr=new Date(+er)),Ve(er,mr),Ae(er);while(gr=Ke)for(;Ae(Ke),!er(Ke);)Ke.setTime(Ke-1)},function(Ke,mr){if(Ke>=Ke)if(mr<0)for(;++mr<=0;)for(;Ve(Ke,-1),!er(Ke););else for(;--mr>=0;)for(;Ve(Ke,1),!er(Ke););})},je&&(kr.count=function(er,Ke){return r.setTime(+er),t.setTime(+Ke),Ae(r),Ae(t),Math.floor(je(r,t))},kr.every=function(er){return er=Math.floor(er),!isFinite(er)||!(er>0)?null:er>1?kr.filter(zr?function(Ke){return zr(Ke)%er===0}:function(Ke){return kr.count(0,Ke)%er===0}):kr}),kr}var a=n(function(){},function(Ae,Ve){Ae.setTime(+Ae+Ve)},function(Ae,Ve){return Ve-Ae});a.every=function(Ae){return Ae=Math.floor(Ae),!isFinite(Ae)||!(Ae>0)?null:Ae>1?n(function(Ve){Ve.setTime(Math.floor(Ve/Ae)*Ae)},function(Ve,je){Ve.setTime(+Ve+je*Ae)},function(Ve,je){return(je-Ve)/Ae}):a};var i=a.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,v=n(function(Ae){Ae.setTime(Ae-Ae.getMilliseconds())},function(Ae,Ve){Ae.setTime(+Ae+Ve*o)},function(Ae,Ve){return(Ve-Ae)/o},function(Ae){return Ae.getUTCSeconds()}),h=v.range,d=n(function(Ae){Ae.setTime(Ae-Ae.getMilliseconds()-Ae.getSeconds()*o)},function(Ae,Ve){Ae.setTime(+Ae+Ve*l)},function(Ae,Ve){return(Ve-Ae)/l},function(Ae){return Ae.getMinutes()}),m=d.range,p=n(function(Ae){Ae.setTime(Ae-Ae.getMilliseconds()-Ae.getSeconds()*o-Ae.getMinutes()*l)},function(Ae,Ve){Ae.setTime(+Ae+Ve*s)},function(Ae,Ve){return(Ve-Ae)/s},function(Ae){return Ae.getHours()}),y=p.range,_=n(function(Ae){Ae.setHours(0,0,0,0)},function(Ae,Ve){Ae.setDate(Ae.getDate()+Ve)},function(Ae,Ve){return(Ve-Ae-(Ve.getTimezoneOffset()-Ae.getTimezoneOffset())*l)/u},function(Ae){return Ae.getDate()-1}),S=_.range;function x(Ae){return n(function(Ve){Ve.setDate(Ve.getDate()-(Ve.getDay()+7-Ae)%7),Ve.setHours(0,0,0,0)},function(Ve,je){Ve.setDate(Ve.getDate()+je*7)},function(Ve,je){return(je-Ve-(je.getTimezoneOffset()-Ve.getTimezoneOffset())*l)/f})}var b=x(0),A=x(1),k=x(2),M=x(3),D=x(4),z=x(5),F=x(6),H=b.range,Y=A.range,O=k.range,X=M.range,V=D.range,ee=z.range,te=F.range,K=n(function(Ae){Ae.setDate(1),Ae.setHours(0,0,0,0)},function(Ae,Ve){Ae.setMonth(Ae.getMonth()+Ve)},function(Ae,Ve){return Ve.getMonth()-Ae.getMonth()+(Ve.getFullYear()-Ae.getFullYear())*12},function(Ae){return Ae.getMonth()}),re=K.range,fe=n(function(Ae){Ae.setMonth(0,1),Ae.setHours(0,0,0,0)},function(Ae,Ve){Ae.setFullYear(Ae.getFullYear()+Ve)},function(Ae,Ve){return Ve.getFullYear()-Ae.getFullYear()},function(Ae){return Ae.getFullYear()});fe.every=function(Ae){return!isFinite(Ae=Math.floor(Ae))||!(Ae>0)?null:n(function(Ve){Ve.setFullYear(Math.floor(Ve.getFullYear()/Ae)*Ae),Ve.setMonth(0,1),Ve.setHours(0,0,0,0)},function(Ve,je){Ve.setFullYear(Ve.getFullYear()+je*Ae)})};var de=fe.range,qe=n(function(Ae){Ae.setUTCSeconds(0,0)},function(Ae,Ve){Ae.setTime(+Ae+Ve*l)},function(Ae,Ve){return(Ve-Ae)/l},function(Ae){return Ae.getUTCMinutes()}),Be=qe.range,Ne=n(function(Ae){Ae.setUTCMinutes(0,0,0)},function(Ae,Ve){Ae.setTime(+Ae+Ve*s)},function(Ae,Ve){return(Ve-Ae)/s},function(Ae){return Ae.getUTCHours()}),Ie=Ne.range,Se=n(function(Ae){Ae.setUTCHours(0,0,0,0)},function(Ae,Ve){Ae.setUTCDate(Ae.getUTCDate()+Ve)},function(Ae,Ve){return(Ve-Ae)/u},function(Ae){return Ae.getUTCDate()-1}),Xe=Se.range;function se(Ae){return n(function(Ve){Ve.setUTCDate(Ve.getUTCDate()-(Ve.getUTCDay()+7-Ae)%7),Ve.setUTCHours(0,0,0,0)},function(Ve,je){Ve.setUTCDate(Ve.getUTCDate()+je*7)},function(Ve,je){return(je-Ve)/f})}var be=se(0),Te=se(1),pe=se(2),W=se(3),Q=se(4),$=se(5),Me=se(6),Fe=be.range,Oe=Te.range,fr=pe.range,nr=W.range,Ze=Q.range,ar=$.range,lr=Me.range,ir=n(function(Ae){Ae.setUTCDate(1),Ae.setUTCHours(0,0,0,0)},function(Ae,Ve){Ae.setUTCMonth(Ae.getUTCMonth()+Ve)},function(Ae,Ve){return Ve.getUTCMonth()-Ae.getUTCMonth()+(Ve.getUTCFullYear()-Ae.getUTCFullYear())*12},function(Ae){return Ae.getUTCMonth()}),rr=ir.range,Cr=n(function(Ae){Ae.setUTCMonth(0,1),Ae.setUTCHours(0,0,0,0)},function(Ae,Ve){Ae.setUTCFullYear(Ae.getUTCFullYear()+Ve)},function(Ae,Ve){return Ve.getUTCFullYear()-Ae.getUTCFullYear()},function(Ae){return Ae.getUTCFullYear()});Cr.every=function(Ae){return!isFinite(Ae=Math.floor(Ae))||!(Ae>0)?null:n(function(Ve){Ve.setUTCFullYear(Math.floor(Ve.getUTCFullYear()/Ae)*Ae),Ve.setUTCMonth(0,1),Ve.setUTCHours(0,0,0,0)},function(Ve,je){Ve.setUTCFullYear(Ve.getUTCFullYear()+je*Ae)})};var yr=Cr.range;e.timeDay=_,e.timeDays=S,e.timeFriday=z,e.timeFridays=ee,e.timeHour=p,e.timeHours=y,e.timeInterval=n,e.timeMillisecond=a,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=m,e.timeMonday=A,e.timeMondays=Y,e.timeMonth=K,e.timeMonths=re,e.timeSaturday=F,e.timeSaturdays=te,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=b,e.timeSundays=H,e.timeThursday=D,e.timeThursdays=V,e.timeTuesday=k,e.timeTuesdays=O,e.timeWednesday=M,e.timeWednesdays=X,e.timeWeek=b,e.timeWeeks=H,e.timeYear=fe,e.timeYears=de,e.utcDay=Se,e.utcDays=Xe,e.utcFriday=$,e.utcFridays=ar,e.utcHour=Ne,e.utcHours=Ie,e.utcMillisecond=a,e.utcMilliseconds=i,e.utcMinute=qe,e.utcMinutes=Be,e.utcMonday=Te,e.utcMondays=Oe,e.utcMonth=ir,e.utcMonths=rr,e.utcSaturday=Me,e.utcSaturdays=lr,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=be,e.utcSundays=Fe,e.utcThursday=Q,e.utcThursdays=Ze,e.utcTuesday=pe,e.utcTuesdays=fr,e.utcWednesday=W,e.utcWednesdays=nr,e.utcWeek=be,e.utcWeeks=Fe,e.utcYear=Cr,e.utcYears=yr,Object.defineProperty(e,"__esModule",{value:!0})})});var m0=ne((ed,W_)=>{(function(e,r){typeof ed=="object"&&typeof W_!="undefined"?r(ed,xy()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(ed,function(e,r){"use strict";function t(_e){if(0<=_e.y&&_e.y<100){var ke=new Date(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L);return ke.setFullYear(_e.y),ke}return new Date(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L)}function n(_e){if(0<=_e.y&&_e.y<100){var ke=new Date(Date.UTC(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L));return ke.setUTCFullYear(_e.y),ke}return new Date(Date.UTC(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L))}function a(_e,ke,$e){return{y:_e,m:ke,d:$e,H:0,M:0,S:0,L:0}}function i(_e){var ke=_e.dateTime,$e=_e.date,We=_e.time,qr=_e.periods,Vr=_e.days,Hr=_e.shortDays,lt=_e.months,xt=_e.shortMonths,Rt=h(qr),St=d(qr),hn=h(Vr),Fn=d(Vr),$n=h(Hr),Xt=d(Hr),cn=h(lt),sn=d(lt),Kt=h(xt),aa=d(xt),rt={a:gi,A:io,b:mi,B:ms,c:null,d:K,e:K,f:Be,H:re,I:fe,j:de,L:qe,m:Ne,M:Ie,p:El,q:Bo,Q:Ke,s:mr,S:Se,u:Xe,U:se,V:be,w:Te,W:pe,x:null,X:null,y:W,Y:Q,Z:$,"%":er},Qt={a:ys,A:Oo,b:Hn,B:yi,c:null,d:Me,e:Me,f:Ze,H:Fe,I:Oe,j:fr,L:nr,m:ar,M:lr,p:Uo,q:bi,Q:Ke,s:mr,S:ir,u:rr,U:Cr,V:yr,w:Ae,W:Ve,x:null,X:null,y:je,Y:zr,Z:kr,"%":er},Ct={a:da,A:Sn,b:Na,B:pa,c:wn,d:D,e:D,f:X,H:F,I:F,j:z,L:O,m:M,M:H,p:un,q:k,Q:ee,s:te,S:Y,u:p,U:y,V:_,w:m,W:S,x:It,X:In,y:b,Y:x,Z:A,"%":V};rt.x=dn($e,rt),rt.X=dn(We,rt),rt.c=dn(ke,rt),Qt.x=dn($e,Qt),Qt.X=dn(We,Qt),Qt.c=dn(ke,Qt);function dn(Kr,Lt){return function(Ht){var Br=[],Vn=-1,nn=0,Dn=Kr.length,At,Wa,Yo;for(Ht instanceof Date||(Ht=new Date(+Ht));++Vn53)return null;"w"in Br||(Br.w=1),"Z"in Br?(nn=n(a(Br.y,0,1)),Dn=nn.getUTCDay(),nn=Dn>4||Dn===0?r.utcMonday.ceil(nn):r.utcMonday(nn),nn=r.utcDay.offset(nn,(Br.V-1)*7),Br.y=nn.getUTCFullYear(),Br.m=nn.getUTCMonth(),Br.d=nn.getUTCDate()+(Br.w+6)%7):(nn=t(a(Br.y,0,1)),Dn=nn.getDay(),nn=Dn>4||Dn===0?r.timeMonday.ceil(nn):r.timeMonday(nn),nn=r.timeDay.offset(nn,(Br.V-1)*7),Br.y=nn.getFullYear(),Br.m=nn.getMonth(),Br.d=nn.getDate()+(Br.w+6)%7)}else("W"in Br||"U"in Br)&&("w"in Br||(Br.w="u"in Br?Br.u%7:"W"in Br?1:0),Dn="Z"in Br?n(a(Br.y,0,1)).getUTCDay():t(a(Br.y,0,1)).getDay(),Br.m=0,Br.d="W"in Br?(Br.w+6)%7+Br.W*7-(Dn+5)%7:Br.w+Br.U*7-(Dn+6)%7);return"Z"in Br?(Br.H+=Br.Z/100|0,Br.M+=Br.Z%100,n(Br)):t(Br)}}function tn(Kr,Lt,Ht,Br){for(var Vn=0,nn=Lt.length,Dn=Ht.length,At,Wa;Vn=Dn)return-1;if(At=Lt.charCodeAt(Vn++),At===37){if(At=Lt.charAt(Vn++),Wa=Ct[At in o?Lt.charAt(Vn++):At],!Wa||(Br=Wa(Kr,Ht,Br))<0)return-1}else if(At!=Ht.charCodeAt(Br++))return-1}return Br}function un(Kr,Lt,Ht){var Br=Rt.exec(Lt.slice(Ht));return Br?(Kr.p=St[Br[0].toLowerCase()],Ht+Br[0].length):-1}function da(Kr,Lt,Ht){var Br=$n.exec(Lt.slice(Ht));return Br?(Kr.w=Xt[Br[0].toLowerCase()],Ht+Br[0].length):-1}function Sn(Kr,Lt,Ht){var Br=hn.exec(Lt.slice(Ht));return Br?(Kr.w=Fn[Br[0].toLowerCase()],Ht+Br[0].length):-1}function Na(Kr,Lt,Ht){var Br=Kt.exec(Lt.slice(Ht));return Br?(Kr.m=aa[Br[0].toLowerCase()],Ht+Br[0].length):-1}function pa(Kr,Lt,Ht){var Br=cn.exec(Lt.slice(Ht));return Br?(Kr.m=sn[Br[0].toLowerCase()],Ht+Br[0].length):-1}function wn(Kr,Lt,Ht){return tn(Kr,ke,Lt,Ht)}function It(Kr,Lt,Ht){return tn(Kr,$e,Lt,Ht)}function In(Kr,Lt,Ht){return tn(Kr,We,Lt,Ht)}function gi(Kr){return Hr[Kr.getDay()]}function io(Kr){return Vr[Kr.getDay()]}function mi(Kr){return xt[Kr.getMonth()]}function ms(Kr){return lt[Kr.getMonth()]}function El(Kr){return qr[+(Kr.getHours()>=12)]}function Bo(Kr){return 1+~~(Kr.getMonth()/3)}function ys(Kr){return Hr[Kr.getUTCDay()]}function Oo(Kr){return Vr[Kr.getUTCDay()]}function Hn(Kr){return xt[Kr.getUTCMonth()]}function yi(Kr){return lt[Kr.getUTCMonth()]}function Uo(Kr){return qr[+(Kr.getUTCHours()>=12)]}function bi(Kr){return 1+~~(Kr.getUTCMonth()/3)}return{format:function(Kr){var Lt=dn(Kr+="",rt);return Lt.toString=function(){return Kr},Lt},parse:function(Kr){var Lt=pn(Kr+="",!1);return Lt.toString=function(){return Kr},Lt},utcFormat:function(Kr){var Lt=dn(Kr+="",Qt);return Lt.toString=function(){return Kr},Lt},utcParse:function(Kr){var Lt=pn(Kr+="",!0);return Lt.toString=function(){return Kr},Lt}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(_e,ke,$e){var We=_e<0?"-":"",qr=(We?-_e:_e)+"",Vr=qr.length;return We+(Vr<$e?new Array($e-Vr+1).join(ke)+qr:qr)}function v(_e){return _e.replace(u,"\\$&")}function h(_e){return new RegExp("^(?:"+_e.map(v).join("|")+")","i")}function d(_e){for(var ke={},$e=-1,We=_e.length;++$e68?1900:2e3),$e+We[0].length):-1}function A(_e,ke,$e){var We=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ke.slice($e,$e+6));return We?(_e.Z=We[1]?0:-(We[2]+(We[3]||"00")),$e+We[0].length):-1}function k(_e,ke,$e){var We=l.exec(ke.slice($e,$e+1));return We?(_e.q=We[0]*3-3,$e+We[0].length):-1}function M(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.m=We[0]-1,$e+We[0].length):-1}function D(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.d=+We[0],$e+We[0].length):-1}function z(_e,ke,$e){var We=l.exec(ke.slice($e,$e+3));return We?(_e.m=0,_e.d=+We[0],$e+We[0].length):-1}function F(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.H=+We[0],$e+We[0].length):-1}function H(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.M=+We[0],$e+We[0].length):-1}function Y(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.S=+We[0],$e+We[0].length):-1}function O(_e,ke,$e){var We=l.exec(ke.slice($e,$e+3));return We?(_e.L=+We[0],$e+We[0].length):-1}function X(_e,ke,$e){var We=l.exec(ke.slice($e,$e+6));return We?(_e.L=Math.floor(We[0]/1e3),$e+We[0].length):-1}function V(_e,ke,$e){var We=s.exec(ke.slice($e,$e+1));return We?$e+We[0].length:-1}function ee(_e,ke,$e){var We=l.exec(ke.slice($e));return We?(_e.Q=+We[0],$e+We[0].length):-1}function te(_e,ke,$e){var We=l.exec(ke.slice($e));return We?(_e.s=+We[0],$e+We[0].length):-1}function K(_e,ke){return f(_e.getDate(),ke,2)}function re(_e,ke){return f(_e.getHours(),ke,2)}function fe(_e,ke){return f(_e.getHours()%12||12,ke,2)}function de(_e,ke){return f(1+r.timeDay.count(r.timeYear(_e),_e),ke,3)}function qe(_e,ke){return f(_e.getMilliseconds(),ke,3)}function Be(_e,ke){return qe(_e,ke)+"000"}function Ne(_e,ke){return f(_e.getMonth()+1,ke,2)}function Ie(_e,ke){return f(_e.getMinutes(),ke,2)}function Se(_e,ke){return f(_e.getSeconds(),ke,2)}function Xe(_e){var ke=_e.getDay();return ke===0?7:ke}function se(_e,ke){return f(r.timeSunday.count(r.timeYear(_e)-1,_e),ke,2)}function be(_e,ke){var $e=_e.getDay();return _e=$e>=4||$e===0?r.timeThursday(_e):r.timeThursday.ceil(_e),f(r.timeThursday.count(r.timeYear(_e),_e)+(r.timeYear(_e).getDay()===4),ke,2)}function Te(_e){return _e.getDay()}function pe(_e,ke){return f(r.timeMonday.count(r.timeYear(_e)-1,_e),ke,2)}function W(_e,ke){return f(_e.getFullYear()%100,ke,2)}function Q(_e,ke){return f(_e.getFullYear()%1e4,ke,4)}function $(_e){var ke=_e.getTimezoneOffset();return(ke>0?"-":(ke*=-1,"+"))+f(ke/60|0,"0",2)+f(ke%60,"0",2)}function Me(_e,ke){return f(_e.getUTCDate(),ke,2)}function Fe(_e,ke){return f(_e.getUTCHours(),ke,2)}function Oe(_e,ke){return f(_e.getUTCHours()%12||12,ke,2)}function fr(_e,ke){return f(1+r.utcDay.count(r.utcYear(_e),_e),ke,3)}function nr(_e,ke){return f(_e.getUTCMilliseconds(),ke,3)}function Ze(_e,ke){return nr(_e,ke)+"000"}function ar(_e,ke){return f(_e.getUTCMonth()+1,ke,2)}function lr(_e,ke){return f(_e.getUTCMinutes(),ke,2)}function ir(_e,ke){return f(_e.getUTCSeconds(),ke,2)}function rr(_e){var ke=_e.getUTCDay();return ke===0?7:ke}function Cr(_e,ke){return f(r.utcSunday.count(r.utcYear(_e)-1,_e),ke,2)}function yr(_e,ke){var $e=_e.getUTCDay();return _e=$e>=4||$e===0?r.utcThursday(_e):r.utcThursday.ceil(_e),f(r.utcThursday.count(r.utcYear(_e),_e)+(r.utcYear(_e).getUTCDay()===4),ke,2)}function Ae(_e){return _e.getUTCDay()}function Ve(_e,ke){return f(r.utcMonday.count(r.utcYear(_e)-1,_e),ke,2)}function je(_e,ke){return f(_e.getUTCFullYear()%100,ke,2)}function zr(_e,ke){return f(_e.getUTCFullYear()%1e4,ke,4)}function kr(){return"+0000"}function er(){return"%"}function Ke(_e){return+_e}function mr(_e){return Math.floor(+_e/1e3)}var Mr;gr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function gr(_e){return Mr=i(_e),e.timeFormat=Mr.format,e.timeParse=Mr.parse,e.utcFormat=Mr.utcFormat,e.utcParse=Mr.utcParse,Mr}var dr="%Y-%m-%dT%H:%M:%S.%LZ";function Tr(_e){return _e.toISOString()}var Pr=Date.prototype.toISOString?Tr:e.utcFormat(dr);function Ur(_e){var ke=new Date(_e);return isNaN(ke)?null:ke}var sr=+new Date("2000-01-01T00:00:00.000Z")?Ur:e.utcParse(dr);e.isoFormat=Pr,e.isoParse=sr,e.timeFormatDefaultLocale=gr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var wy=ne((rd,Z_)=>{(function(e,r){typeof rd=="object"&&typeof Z_!="undefined"?r(rd):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(rd,function(e){"use strict";function r(M){return Math.abs(M=Math.round(M))>=1e21?M.toLocaleString("en").replace(/,/g,""):M.toString(10)}function t(M,D){if((z=(M=D?M.toExponential(D-1):M.toExponential()).indexOf("e"))<0)return null;var z,F=M.slice(0,z);return[F.length>1?F[0]+F.slice(2):F,+M.slice(z+1)]}function n(M){return M=t(Math.abs(M)),M?M[1]:NaN}function a(M,D){return function(z,F){for(var H=z.length,Y=[],O=0,X=M[0],V=0;H>0&&X>0&&(V+X+1>F&&(X=Math.max(1,F-V)),Y.push(z.substring(H-=X,H+X)),!((V+=X+1)>F));)X=M[O=(O+1)%M.length];return Y.reverse().join(D)}}function i(M){return function(D){return D.replace(/[0-9]/g,function(z){return M[+z]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(D=o.exec(M)))throw new Error("invalid format: "+M);var D;return new s({fill:D[1],align:D[2],sign:D[3],symbol:D[4],zero:D[5],width:D[6],comma:D[7],precision:D[8]&&D[8].slice(1),trim:D[9],type:D[10]})}l.prototype=s.prototype;function s(M){this.fill=M.fill===void 0?" ":M.fill+"",this.align=M.align===void 0?">":M.align+"",this.sign=M.sign===void 0?"-":M.sign+"",this.symbol=M.symbol===void 0?"":M.symbol+"",this.zero=!!M.zero,this.width=M.width===void 0?void 0:+M.width,this.comma=!!M.comma,this.precision=M.precision===void 0?void 0:+M.precision,this.trim=!!M.trim,this.type=M.type===void 0?"":M.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(M){e:for(var D=M.length,z=1,F=-1,H;z0&&(F=0);break}return F>0?M.slice(0,F)+M.slice(H+1):M}var f;function v(M,D){var z=t(M,D);if(!z)return M+"";var F=z[0],H=z[1],Y=H-(f=Math.max(-8,Math.min(8,Math.floor(H/3)))*3)+1,O=F.length;return Y===O?F:Y>O?F+new Array(Y-O+1).join("0"):Y>0?F.slice(0,Y)+"."+F.slice(Y):"0."+new Array(1-Y).join("0")+t(M,Math.max(0,D+Y-1))[0]}function h(M,D){var z=t(M,D);if(!z)return M+"";var F=z[0],H=z[1];return H<0?"0."+new Array(-H).join("0")+F:F.length>H+1?F.slice(0,H+1)+"."+F.slice(H+1):F+new Array(H-F.length+2).join("0")}var d={"%":function(M,D){return(M*100).toFixed(D)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,D){return M.toExponential(D)},f:function(M,D){return M.toFixed(D)},g:function(M,D){return M.toPrecision(D)},o:function(M){return Math.round(M).toString(8)},p:function(M,D){return h(M*100,D)},r:h,s:v,X:function(M){return Math.round(M).toString(16).toUpperCase()},x:function(M){return Math.round(M).toString(16)}};function m(M){return M}var p=Array.prototype.map,y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function _(M){var D=M.grouping===void 0||M.thousands===void 0?m:a(p.call(M.grouping,Number),M.thousands+""),z=M.currency===void 0?"":M.currency[0]+"",F=M.currency===void 0?"":M.currency[1]+"",H=M.decimal===void 0?".":M.decimal+"",Y=M.numerals===void 0?m:i(p.call(M.numerals,String)),O=M.percent===void 0?"%":M.percent+"",X=M.minus===void 0?"-":M.minus+"",V=M.nan===void 0?"NaN":M.nan+"";function ee(K){K=l(K);var re=K.fill,fe=K.align,de=K.sign,qe=K.symbol,Be=K.zero,Ne=K.width,Ie=K.comma,Se=K.precision,Xe=K.trim,se=K.type;se==="n"?(Ie=!0,se="g"):d[se]||(Se===void 0&&(Se=12),Xe=!0,se="g"),(Be||re==="0"&&fe==="=")&&(Be=!0,re="0",fe="=");var be=qe==="$"?z:qe==="#"&&/[boxX]/.test(se)?"0"+se.toLowerCase():"",Te=qe==="$"?F:/[%p]/.test(se)?O:"",pe=d[se],W=/[defgprs%]/.test(se);Se=Se===void 0?6:/[gprs]/.test(se)?Math.max(1,Math.min(21,Se)):Math.max(0,Math.min(20,Se));function Q($){var Me=be,Fe=Te,Oe,fr,nr;if(se==="c")Fe=pe($)+Fe,$="";else{$=+$;var Ze=$<0||1/$<0;if($=isNaN($)?V:pe(Math.abs($),Se),Xe&&($=u($)),Ze&&+$==0&&de!=="+"&&(Ze=!1),Me=(Ze?de==="("?de:X:de==="-"||de==="("?"":de)+Me,Fe=(se==="s"?y[8+f/3]:"")+Fe+(Ze&&de==="("?")":""),W){for(Oe=-1,fr=$.length;++Oenr||nr>57){Fe=(nr===46?H+$.slice(Oe+1):$.slice(Oe))+Fe,$=$.slice(0,Oe);break}}}Ie&&!Be&&($=D($,1/0));var ar=Me.length+$.length+Fe.length,lr=ar>1)+Me+$+Fe+lr.slice(ar);break;default:$=lr+Me+$+Fe;break}return Y($)}return Q.toString=function(){return K+""},Q}function te(K,re){var fe=ee((K=l(K),K.type="f",K)),de=Math.max(-8,Math.min(8,Math.floor(n(re)/3)))*3,qe=Math.pow(10,-de),Be=y[8+de/3];return function(Ne){return fe(qe*Ne)+Be}}return{format:ee,formatPrefix:te}}var S;x({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function x(M){return S=_(M),e.format=S.format,e.formatPrefix=S.formatPrefix,S}function b(M){return Math.max(0,-n(Math.abs(M)))}function A(M,D){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(D)/3)))*3-n(Math.abs(M)))}function k(M,D){return M=Math.abs(M),D=Math.abs(D)-M,Math.max(0,n(D)-n(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=x,e.formatLocale=_,e.formatSpecifier=l,e.precisionFixed=b,e.precisionPrefix=A,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var j_=ne((Voe,X_)=>{"use strict";X_.exports=function(e){for(var r=e.length,t,n=0;n13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var Bt=ne((Woe,J_)=>{"use strict";var ZI=j_();J_.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&ZI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var En=ne((Zoe,$_)=>{"use strict";$_.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var My=ne((td,K_)=>{(function(e,r){typeof td=="object"&&typeof K_!="undefined"?r(td):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(td,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],f+=r[(l[s]&3)<<4|l[s+1]>>4],f+=r[(l[s+1]&15)<<2|l[s+2]>>6],f+=r[l[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(o){var l=o.length*.75,s=o.length,u,f=0,v,h,d,m;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var p=new ArrayBuffer(l),y=new Uint8Array(p);for(u=0;u>4,y[f++]=(h&15)<<4|d>>2,y[f++]=(d&3)<<6|m&63;return p};e.decode=i,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var Gs=ne((Xoe,Q_)=>{"use strict";Q_.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var Ji=ne(fl=>{"use strict";var XI=My().decode,jI=Gs(),Ay=Array.isArray,JI=ArrayBuffer,$I=DataView;function e6(e){return JI.isView(e)&&!(e instanceof $I)}fl.isTypedArray=e6;function nd(e){return Ay(e)||e6(e)}fl.isArrayOrTypedArray=nd;function KI(e){return!nd(e[0])}fl.isArray1D=KI;fl.ensureArray=function(e,r){return Ay(e)||(e=[]),e.length=r,e};var Ta={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Ta.uint8c=Ta.u1c;Ta.uint8=Ta.u1;Ta.int8=Ta.i1;Ta.uint16=Ta.u2;Ta.int16=Ta.i2;Ta.uint32=Ta.u4;Ta.int32=Ta.i4;Ta.float32=Ta.f4;Ta.float64=Ta.f8;function Ty(e){return e.constructor===ArrayBuffer}fl.isArrayBuffer=Ty;fl.decodeTypedArraySpec=function(e){var r=[],t=QI(e),n=t.dtype,a=Ta[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var i=a.BYTES_PER_ELEMENT,o=t.bdata;Ty(o)||(o=XI(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,u,f,v=+l[0],h=i*v,d=0;if(s===1)r=new a(o);else if(s===2)for(u=+l[1],f=0;f{"use strict";var t6=Bt(),Sy=Ji().isArrayOrTypedArray;o6.exports=function(r,t){if(t6(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var n=t.split("."),a,i,o,l;for(l=0;l{"use strict";var y0=$v(),aH=/^\w*$/,iH=0,l6=1,ad=2,s6=3,jf=4;u6.exports=function(r,t,n,a){n=n||"name",a=a||"value";var i,o,l,s={};t&&t.length?(l=y0(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|ad,v.set(h,null);if(f){for(i=d;i{"use strict";var oH=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,lH=/^[^\.\[\]]+$/;c6.exports=function(e,r){for(;r;){var t=e.match(oH);if(t)e=t[1];else if(e.match(lH))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var id=ne((Qoe,h6)=>{"use strict";var sH=Bt();h6.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var n=Math.log(Math.min(t[0],t[1]))/Math.LN10;return sH(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var g6=ne((ele,p6)=>{"use strict";var d6=Ji().isArrayOrTypedArray,Kv=Gs();p6.exports=function e(r,t){for(var n in t){var a=t[n],i=r[n];if(i!==a)if(n.charAt(0)==="_"||typeof a=="function"){if(n in r)continue;r[n]=a}else if(d6(a)&&d6(i)&&Kv(a[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(a.length,i.length),l=0;l{"use strict";function uH(e,r){var t=e%r;return t<0?t+r:t}function fH(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}m6.exports={mod:uH,modHalf:fH}});var Jl=ne((tle,od)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,i=e.min,o=e.max,l=e.random;function s(W,Q){if(W=W||"",Q=Q||{},W instanceof s)return W;if(!(this instanceof s))return new s(W,Q);var $=u(W);this._originalInput=W,this._r=$.r,this._g=$.g,this._b=$.b,this._a=$.a,this._roundA=a(100*this._a)/100,this._format=Q.format||$.format,this._gradientType=Q.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=$.ok,this._tc_id=n++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var W=this.toRgb();return(W.r*299+W.g*587+W.b*114)/1e3},getLuminance:function(){var W=this.toRgb(),Q,$,Me,Fe,Oe,fr;return Q=W.r/255,$=W.g/255,Me=W.b/255,Q<=.03928?Fe=Q/12.92:Fe=e.pow((Q+.055)/1.055,2.4),$<=.03928?Oe=$/12.92:Oe=e.pow(($+.055)/1.055,2.4),Me<=.03928?fr=Me/12.92:fr=e.pow((Me+.055)/1.055,2.4),.2126*Fe+.7152*Oe+.0722*fr},setAlpha:function(W){return this._a=K(W),this._roundA=a(100*this._a)/100,this},toHsv:function(){var W=d(this._r,this._g,this._b);return{h:W.h*360,s:W.s,v:W.v,a:this._a}},toHsvString:function(){var W=d(this._r,this._g,this._b),Q=a(W.h*360),$=a(W.s*100),Me=a(W.v*100);return this._a==1?"hsv("+Q+", "+$+"%, "+Me+"%)":"hsva("+Q+", "+$+"%, "+Me+"%, "+this._roundA+")"},toHsl:function(){var W=v(this._r,this._g,this._b);return{h:W.h*360,s:W.s,l:W.l,a:this._a}},toHslString:function(){var W=v(this._r,this._g,this._b),Q=a(W.h*360),$=a(W.s*100),Me=a(W.l*100);return this._a==1?"hsl("+Q+", "+$+"%, "+Me+"%)":"hsla("+Q+", "+$+"%, "+Me+"%, "+this._roundA+")"},toHex:function(W){return p(this._r,this._g,this._b,W)},toHexString:function(W){return"#"+this.toHex(W)},toHex8:function(W){return y(this._r,this._g,this._b,this._a,W)},toHex8String:function(W){return"#"+this.toHex8(W)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(re(this._r,255)*100)+"%",g:a(re(this._g,255)*100)+"%",b:a(re(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(re(this._r,255)*100)+"%, "+a(re(this._g,255)*100)+"%, "+a(re(this._b,255)*100)+"%)":"rgba("+a(re(this._r,255)*100)+"%, "+a(re(this._g,255)*100)+"%, "+a(re(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:ee[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(W){var Q="#"+_(this._r,this._g,this._b,this._a),$=Q,Me=this._gradientType?"GradientType = 1, ":"";if(W){var Fe=s(W);$="#"+_(Fe._r,Fe._g,Fe._b,Fe._a)}return"progid:DXImageTransform.Microsoft.gradient("+Me+"startColorstr="+Q+",endColorstr="+$+")"},toString:function(W){var Q=!!W;W=W||this._format;var $=!1,Me=this._a<1&&this._a>=0,Fe=!Q&&Me&&(W==="hex"||W==="hex6"||W==="hex3"||W==="hex4"||W==="hex8"||W==="name");return Fe?W==="name"&&this._a===0?this.toName():this.toRgbString():(W==="rgb"&&($=this.toRgbString()),W==="prgb"&&($=this.toPercentageRgbString()),(W==="hex"||W==="hex6")&&($=this.toHexString()),W==="hex3"&&($=this.toHexString(!0)),W==="hex4"&&($=this.toHex8String(!0)),W==="hex8"&&($=this.toHex8String()),W==="name"&&($=this.toName()),W==="hsl"&&($=this.toHslString()),W==="hsv"&&($=this.toHsvString()),$||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(W,Q){var $=W.apply(null,[this].concat([].slice.call(Q)));return this._r=$._r,this._g=$._g,this._b=$._b,this.setAlpha($._a),this},lighten:function(){return this._applyModification(A,arguments)},brighten:function(){return this._applyModification(k,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(S,arguments)},saturate:function(){return this._applyModification(x,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(D,arguments)},_applyCombination:function(W,Q){return W.apply(null,[this].concat([].slice.call(Q)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(z,arguments)},monochromatic:function(){return this._applyCombination(X,arguments)},splitcomplement:function(){return this._applyCombination(Y,arguments)},triad:function(){return this._applyCombination(F,arguments)},tetrad:function(){return this._applyCombination(H,arguments)}},s.fromRatio=function(W,Q){if(typeof W=="object"){var $={};for(var Me in W)W.hasOwnProperty(Me)&&(Me==="a"?$[Me]=W[Me]:$[Me]=Ie(W[Me]));W=$}return s(W,Q)};function u(W){var Q={r:0,g:0,b:0},$=1,Me=null,Fe=null,Oe=null,fr=!1,nr=!1;return typeof W=="string"&&(W=Te(W)),typeof W=="object"&&(be(W.r)&&be(W.g)&&be(W.b)?(Q=f(W.r,W.g,W.b),fr=!0,nr=String(W.r).substr(-1)==="%"?"prgb":"rgb"):be(W.h)&&be(W.s)&&be(W.v)?(Me=Ie(W.s),Fe=Ie(W.v),Q=m(W.h,Me,Fe),fr=!0,nr="hsv"):be(W.h)&&be(W.s)&&be(W.l)&&(Me=Ie(W.s),Oe=Ie(W.l),Q=h(W.h,Me,Oe),fr=!0,nr="hsl"),W.hasOwnProperty("a")&&($=W.a)),$=K($),{ok:fr,format:W.format||nr,r:i(255,o(Q.r,0)),g:i(255,o(Q.g,0)),b:i(255,o(Q.b,0)),a:$}}function f(W,Q,$){return{r:re(W,255)*255,g:re(Q,255)*255,b:re($,255)*255}}function v(W,Q,$){W=re(W,255),Q=re(Q,255),$=re($,255);var Me=o(W,Q,$),Fe=i(W,Q,$),Oe,fr,nr=(Me+Fe)/2;if(Me==Fe)Oe=fr=0;else{var Ze=Me-Fe;switch(fr=nr>.5?Ze/(2-Me-Fe):Ze/(Me+Fe),Me){case W:Oe=(Q-$)/Ze+(Q<$?6:0);break;case Q:Oe=($-W)/Ze+2;break;case $:Oe=(W-Q)/Ze+4;break}Oe/=6}return{h:Oe,s:fr,l:nr}}function h(W,Q,$){var Me,Fe,Oe;W=re(W,360),Q=re(Q,100),$=re($,100);function fr(ar,lr,ir){return ir<0&&(ir+=1),ir>1&&(ir-=1),ir<1/6?ar+(lr-ar)*6*ir:ir<1/2?lr:ir<2/3?ar+(lr-ar)*(2/3-ir)*6:ar}if(Q===0)Me=Fe=Oe=$;else{var nr=$<.5?$*(1+Q):$+Q-$*Q,Ze=2*$-nr;Me=fr(Ze,nr,W+1/3),Fe=fr(Ze,nr,W),Oe=fr(Ze,nr,W-1/3)}return{r:Me*255,g:Fe*255,b:Oe*255}}function d(W,Q,$){W=re(W,255),Q=re(Q,255),$=re($,255);var Me=o(W,Q,$),Fe=i(W,Q,$),Oe,fr,nr=Me,Ze=Me-Fe;if(fr=Me===0?0:Ze/Me,Me==Fe)Oe=0;else{switch(Me){case W:Oe=(Q-$)/Ze+(Q<$?6:0);break;case Q:Oe=($-W)/Ze+2;break;case $:Oe=(W-Q)/Ze+4;break}Oe/=6}return{h:Oe,s:fr,v:nr}}function m(W,Q,$){W=re(W,360)*6,Q=re(Q,100),$=re($,100);var Me=e.floor(W),Fe=W-Me,Oe=$*(1-Q),fr=$*(1-Fe*Q),nr=$*(1-(1-Fe)*Q),Ze=Me%6,ar=[$,fr,Oe,Oe,nr,$][Ze],lr=[nr,$,$,fr,Oe,Oe][Ze],ir=[Oe,Oe,nr,$,$,fr][Ze];return{r:ar*255,g:lr*255,b:ir*255}}function p(W,Q,$,Me){var Fe=[Ne(a(W).toString(16)),Ne(a(Q).toString(16)),Ne(a($).toString(16))];return Me&&Fe[0].charAt(0)==Fe[0].charAt(1)&&Fe[1].charAt(0)==Fe[1].charAt(1)&&Fe[2].charAt(0)==Fe[2].charAt(1)?Fe[0].charAt(0)+Fe[1].charAt(0)+Fe[2].charAt(0):Fe.join("")}function y(W,Q,$,Me,Fe){var Oe=[Ne(a(W).toString(16)),Ne(a(Q).toString(16)),Ne(a($).toString(16)),Ne(Se(Me))];return Fe&&Oe[0].charAt(0)==Oe[0].charAt(1)&&Oe[1].charAt(0)==Oe[1].charAt(1)&&Oe[2].charAt(0)==Oe[2].charAt(1)&&Oe[3].charAt(0)==Oe[3].charAt(1)?Oe[0].charAt(0)+Oe[1].charAt(0)+Oe[2].charAt(0)+Oe[3].charAt(0):Oe.join("")}function _(W,Q,$,Me){var Fe=[Ne(Se(Me)),Ne(a(W).toString(16)),Ne(a(Q).toString(16)),Ne(a($).toString(16))];return Fe.join("")}s.equals=function(W,Q){return!W||!Q?!1:s(W).toRgbString()==s(Q).toRgbString()},s.random=function(){return s.fromRatio({r:l(),g:l(),b:l()})};function S(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.s-=Q/100,$.s=fe($.s),s($)}function x(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.s+=Q/100,$.s=fe($.s),s($)}function b(W){return s(W).desaturate(100)}function A(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.l+=Q/100,$.l=fe($.l),s($)}function k(W,Q){Q=Q===0?0:Q||10;var $=s(W).toRgb();return $.r=o(0,i(255,$.r-a(255*-(Q/100)))),$.g=o(0,i(255,$.g-a(255*-(Q/100)))),$.b=o(0,i(255,$.b-a(255*-(Q/100)))),s($)}function M(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.l-=Q/100,$.l=fe($.l),s($)}function D(W,Q){var $=s(W).toHsl(),Me=($.h+Q)%360;return $.h=Me<0?360+Me:Me,s($)}function z(W){var Q=s(W).toHsl();return Q.h=(Q.h+180)%360,s(Q)}function F(W){var Q=s(W).toHsl(),$=Q.h;return[s(W),s({h:($+120)%360,s:Q.s,l:Q.l}),s({h:($+240)%360,s:Q.s,l:Q.l})]}function H(W){var Q=s(W).toHsl(),$=Q.h;return[s(W),s({h:($+90)%360,s:Q.s,l:Q.l}),s({h:($+180)%360,s:Q.s,l:Q.l}),s({h:($+270)%360,s:Q.s,l:Q.l})]}function Y(W){var Q=s(W).toHsl(),$=Q.h;return[s(W),s({h:($+72)%360,s:Q.s,l:Q.l}),s({h:($+216)%360,s:Q.s,l:Q.l})]}function O(W,Q,$){Q=Q||6,$=$||30;var Me=s(W).toHsl(),Fe=360/$,Oe=[s(W)];for(Me.h=(Me.h-(Fe*Q>>1)+720)%360;--Q;)Me.h=(Me.h+Fe)%360,Oe.push(s(Me));return Oe}function X(W,Q){Q=Q||6;for(var $=s(W).toHsv(),Me=$.h,Fe=$.s,Oe=$.v,fr=[],nr=1/Q;Q--;)fr.push(s({h:Me,s:Fe,v:Oe})),Oe=(Oe+nr)%1;return fr}s.mix=function(W,Q,$){$=$===0?0:$||50;var Me=s(W).toRgb(),Fe=s(Q).toRgb(),Oe=$/100,fr={r:(Fe.r-Me.r)*Oe+Me.r,g:(Fe.g-Me.g)*Oe+Me.g,b:(Fe.b-Me.b)*Oe+Me.b,a:(Fe.a-Me.a)*Oe+Me.a};return s(fr)},s.readability=function(W,Q){var $=s(W),Me=s(Q);return(e.max($.getLuminance(),Me.getLuminance())+.05)/(e.min($.getLuminance(),Me.getLuminance())+.05)},s.isReadable=function(W,Q,$){var Me=s.readability(W,Q),Fe,Oe;switch(Oe=!1,Fe=pe($),Fe.level+Fe.size){case"AAsmall":case"AAAlarge":Oe=Me>=4.5;break;case"AAlarge":Oe=Me>=3;break;case"AAAsmall":Oe=Me>=7;break}return Oe},s.mostReadable=function(W,Q,$){var Me=null,Fe=0,Oe,fr,nr,Ze;$=$||{},fr=$.includeFallbackColors,nr=$.level,Ze=$.size;for(var ar=0;arFe&&(Fe=Oe,Me=s(Q[ar]));return s.isReadable(W,Me,{level:nr,size:Ze})||!fr?Me:($.includeFallbackColors=!1,s.mostReadable(W,["#fff","#000"],$))};var V=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},ee=s.hexNames=te(V);function te(W){var Q={};for(var $ in W)W.hasOwnProperty($)&&(Q[W[$]]=$);return Q}function K(W){return W=parseFloat(W),(isNaN(W)||W<0||W>1)&&(W=1),W}function re(W,Q){qe(W)&&(W="100%");var $=Be(W);return W=i(Q,o(0,parseFloat(W))),$&&(W=parseInt(W*Q,10)/100),e.abs(W-Q)<1e-6?1:W%Q/parseFloat(Q)}function fe(W){return i(1,o(0,W))}function de(W){return parseInt(W,16)}function qe(W){return typeof W=="string"&&W.indexOf(".")!=-1&&parseFloat(W)===1}function Be(W){return typeof W=="string"&&W.indexOf("%")!=-1}function Ne(W){return W.length==1?"0"+W:""+W}function Ie(W){return W<=1&&(W=W*100+"%"),W}function Se(W){return e.round(parseFloat(W)*255).toString(16)}function Xe(W){return de(W)/255}var se=function(){var W="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",$="(?:"+Q+")|(?:"+W+")",Me="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?",Fe="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?";return{CSS_UNIT:new RegExp($),rgb:new RegExp("rgb"+Me),rgba:new RegExp("rgba"+Fe),hsl:new RegExp("hsl"+Me),hsla:new RegExp("hsla"+Fe),hsv:new RegExp("hsv"+Me),hsva:new RegExp("hsva"+Fe),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function be(W){return!!se.CSS_UNIT.exec(W)}function Te(W){W=W.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(V[W])W=V[W],Q=!0;else if(W=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var $;return($=se.rgb.exec(W))?{r:$[1],g:$[2],b:$[3]}:($=se.rgba.exec(W))?{r:$[1],g:$[2],b:$[3],a:$[4]}:($=se.hsl.exec(W))?{h:$[1],s:$[2],l:$[3]}:($=se.hsla.exec(W))?{h:$[1],s:$[2],l:$[3],a:$[4]}:($=se.hsv.exec(W))?{h:$[1],s:$[2],v:$[3]}:($=se.hsva.exec(W))?{h:$[1],s:$[2],v:$[3],a:$[4]}:($=se.hex8.exec(W))?{r:de($[1]),g:de($[2]),b:de($[3]),a:Xe($[4]),format:Q?"name":"hex8"}:($=se.hex6.exec(W))?{r:de($[1]),g:de($[2]),b:de($[3]),format:Q?"name":"hex"}:($=se.hex4.exec(W))?{r:de($[1]+""+$[1]),g:de($[2]+""+$[2]),b:de($[3]+""+$[3]),a:Xe($[4]+""+$[4]),format:Q?"name":"hex8"}:($=se.hex3.exec(W))?{r:de($[1]+""+$[1]),g:de($[2]+""+$[2]),b:de($[3]+""+$[3]),format:Q?"name":"hex"}:!1}function pe(W){var Q,$;return W=W||{level:"AA",size:"small"},Q=(W.level||"AA").toUpperCase(),$=(W.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA"&&(Q="AA"),$!=="small"&&$!=="large"&&($="small"),{level:Q,size:$}}typeof od!="undefined"&&od.exports?od.exports=s:window.tinycolor=s})(Math)});var la=ne(r1=>{"use strict";var y6=Gs(),Qv=Array.isArray;function cH(e,r){var t,n;for(t=0;t{"use strict";b6.exports=function(e){var r=e.variantValues,t=e.editType,n=e.colorEditType;n===void 0&&(n=t);var a={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(a.valType="enumerated",a.values=a.extras,a.extras=void 0,a.min=void 0,a.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:n},weight:a,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var t1=ne((ile,_6)=>{"use strict";_6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var _0=ne((ole,M6)=>{"use strict";var x6=t1(),w6=$a(),Cy=w6({editType:"none"});Cy.family.dflt=x6.HOVERFONT;Cy.size.dflt=x6.HOVERFONTSIZE;M6.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Cy,grouptitlefont:w6({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var ud=ne((lle,A6)=>{"use strict";var vH=$a(),ld=_0().hoverlabel,sd=la().extendFlat;A6.exports={hoverlabel:{bgcolor:sd({},ld.bgcolor,{arrayOk:!0}),bordercolor:sd({},ld.bordercolor,{arrayOk:!0}),font:vH({arrayOk:!0,editType:"none"}),align:sd({},ld.align,{arrayOk:!0}),namelength:sd({},ld.namelength,{arrayOk:!0}),editType:"none"}}});var bo=ne((sle,T6)=>{"use strict";var hH=$a(),dH=ud();T6.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:hH({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:dH.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var Jf=ne((ule,C6)=>{"use strict";var pH=Jl(),fd={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},k6=fd.RdBu;function gH(e,r){if(r||(r=k6),!e)return r;function t(){try{e=fd[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),S6(e)?e:r}function S6(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";$f.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];$f.defaultLine="#444";$f.lightLine="#eee";$f.background="#fff";$f.borderLine="#BEC8D9";$f.lightFraction=100*10/11});var zt=ne((cle,L6)=>{"use strict";var Li=Jl(),yH=Bt(),bH=Ji().isTypedArray,ya=L6.exports={},cd=cl();ya.defaults=cd.defaults;var _H=ya.defaultLine=cd.defaultLine;ya.lightLine=cd.lightLine;var qy=ya.background=cd.background;ya.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};ya.rgb=function(e){return ya.tinyRGB(Li(e))};ya.opacity=function(e){return e?Li(e).getAlpha():0};ya.addOpacity=function(e,r){var t=Li(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};ya.combine=function(e,r){var t=Li(e).toRgb();if(t.a===1)return Li(e).toRgbString();var n=Li(r||qy).toRgb(),a=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},i={r:a.r*(1-t.a)+t.r*t.a,g:a.g*(1-t.a)+t.g*t.a,b:a.b*(1-t.a)+t.b*t.a};return Li(i).toRgbString()};ya.interpolate=function(e,r,t){var n=Li(e).toRgb(),a=Li(r).toRgb(),i={r:t*n.r+(1-t)*a.r,g:t*n.g+(1-t)*a.g,b:t*n.b+(1-t)*a.b};return Li(i).toRgbString()};ya.contrast=function(e,r,t){var n=Li(e);n.getAlpha()!==1&&(n=Li(ya.combine(e,qy)));var a=n.isDark()?r?n.lighten(r):qy:t?n.darken(t):_H;return a.toString()};ya.stroke=function(e,r){var t=Li(r);e.style({stroke:ya.tinyRGB(t),"stroke-opacity":t.getAlpha()})};ya.fill=function(e,r){var t=Li(r);e.style({fill:ya.tinyRGB(t),"fill-opacity":t.getAlpha()})};ya.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,n,a,i;for(t=0;t=0)))return e;if(i===3)n[i]>1&&(n[i]=1);else if(n[i]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return a?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var vd=ne((vle,q6)=>{"use strict";q6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var x0=ne(D6=>{"use strict";D6.counter=function(e,r,t,n){var a=(r||"")+(t?"":"$"),i=n===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+a):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+a)}});var z6=ne(qi=>{"use strict";var Dy=Bt(),E6=Jl(),P6=la().extendFlat,xH=bo(),wH=Jf(),MH=zt(),AH=vd().DESELECTDIM,w0=$v(),R6=x0().counter,TH=b0().modHalf,$l=Ji().isArrayOrTypedArray,Du=Ji().isTypedArraySpec,Eu=Ji().decodeTypedArraySpec;qi.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set($l(e)?e:Du(e)?Eu(e):t)}},enumerated:{coerceFunction:function(e,r,t,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,n=0;nn.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}Du(e)&&(e=Eu(e)),e%1||!Dy(e)||n.min!==void 0&&en.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,n){if(typeof e!="string"){var a=typeof e=="number";n.strict===!0||!a?r.set(t):r.set(String(e))}else n.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Du(e)&&(e=Eu(e)),E6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return E6(a).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(n)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(wH.get(e,t))}},angle:{coerceFunction:function(e,r,t){Du(e)&&(e=Eu(e)),e==="auto"?r.set("auto"):Dy(e)?r.set(TH(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||R6(t);if(typeof e=="string"&&a.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!R6(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var a=e.split("+"),i=0;i{"use strict";var N6={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},F6={};function I6(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),I6(n,r[t]))}}I6(N6,F6);H6.exports={configAttributes:N6,dfltConfig:F6}});var Py=ne((gle,B6)=>{"use strict";var Ey=kt(),kH=Bt(),n1=[];B6.exports=function(e,r){if(n1.indexOf(e)!==-1)return;n1.push(e);var t=1e3;kH(r)?t=r:r==="long"&&(t=3e3);var n=Ey.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(n1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=n1.indexOf(l);s!==-1&&n1.splice(s,1),Ey.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=Ey.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),u=o.split(//g),f=0;f{"use strict";var M0=Kf().dfltConfig,Ry=Py(),zy=O6.exports={};zy.log=function(){var e;if(M0.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};zy.warn=function(){var e;if(M0.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};zy.error=function(){var e;if(M0.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var dd=ne((yle,U6)=>{"use strict";U6.exports=function(){}});var Ny=ne((ble,Y6)=>{"use strict";Y6.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{G6.exports=SH;function SH(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Z6=ne((xle,W6)=>{W6.exports=CH;function CH(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var j6=ne((wle,X6)=>{X6.exports=LH;function LH(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var Fy=ne((Mle,J6)=>{J6.exports=qH;function qH(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var K6=ne((Ale,$6)=>{$6.exports=DH;function DH(e,r){if(e===r){var t=r[1],n=r[2],a=r[3],i=r[6],o=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=n,e[9]=i,e[11]=r[14],e[12]=a,e[13]=o,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var ex=ne((Tle,Q6)=>{Q6.exports=EH;function EH(e,r){var t=r[0],n=r[1],a=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],p=r[13],y=r[14],_=r[15],S=t*l-n*o,x=t*s-a*o,b=t*u-i*o,A=n*s-a*l,k=n*u-i*l,M=a*u-i*s,D=f*p-v*m,z=f*y-h*m,F=f*_-d*m,H=v*y-h*p,Y=v*_-d*p,O=h*_-d*y,X=S*O-x*Y+b*H+A*F-k*z+M*D;return X?(X=1/X,e[0]=(l*O-s*Y+u*H)*X,e[1]=(a*Y-n*O-i*H)*X,e[2]=(p*M-y*k+_*A)*X,e[3]=(h*k-v*M-d*A)*X,e[4]=(s*F-o*O-u*z)*X,e[5]=(t*O-a*F+i*z)*X,e[6]=(y*b-m*M-_*x)*X,e[7]=(f*M-h*b+d*x)*X,e[8]=(o*Y-l*F+u*D)*X,e[9]=(n*F-t*Y-i*D)*X,e[10]=(m*k-p*b+_*S)*X,e[11]=(v*b-f*k-d*S)*X,e[12]=(l*z-o*H-s*D)*X,e[13]=(t*H-n*z+a*D)*X,e[14]=(p*x-m*A-y*S)*X,e[15]=(f*A-v*x+h*S)*X,e):null}});var tx=ne((kle,rx)=>{rx.exports=PH;function PH(e,r){var t=r[0],n=r[1],a=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],p=r[13],y=r[14],_=r[15];return e[0]=l*(h*_-d*y)-v*(s*_-u*y)+p*(s*d-u*h),e[1]=-(n*(h*_-d*y)-v*(a*_-i*y)+p*(a*d-i*h)),e[2]=n*(s*_-u*y)-l*(a*_-i*y)+p*(a*u-i*s),e[3]=-(n*(s*d-u*h)-l*(a*d-i*h)+v*(a*u-i*s)),e[4]=-(o*(h*_-d*y)-f*(s*_-u*y)+m*(s*d-u*h)),e[5]=t*(h*_-d*y)-f*(a*_-i*y)+m*(a*d-i*h),e[6]=-(t*(s*_-u*y)-o*(a*_-i*y)+m*(a*u-i*s)),e[7]=t*(s*d-u*h)-o*(a*d-i*h)+f*(a*u-i*s),e[8]=o*(v*_-d*p)-f*(l*_-u*p)+m*(l*d-u*v),e[9]=-(t*(v*_-d*p)-f*(n*_-i*p)+m*(n*d-i*v)),e[10]=t*(l*_-u*p)-o*(n*_-i*p)+m*(n*u-i*l),e[11]=-(t*(l*d-u*v)-o*(n*d-i*v)+f*(n*u-i*l)),e[12]=-(o*(v*y-h*p)-f*(l*y-s*p)+m*(l*h-s*v)),e[13]=t*(v*y-h*p)-f*(n*y-a*p)+m*(n*h-a*v),e[14]=-(t*(l*y-s*p)-o*(n*y-a*p)+m*(n*s-a*l)),e[15]=t*(l*h-s*v)-o*(n*h-a*v)+f*(n*s-a*l),e}});var ax=ne((Sle,nx)=>{nx.exports=RH;function RH(e){var r=e[0],t=e[1],n=e[2],a=e[3],i=e[4],o=e[5],l=e[6],s=e[7],u=e[8],f=e[9],v=e[10],h=e[11],d=e[12],m=e[13],p=e[14],y=e[15],_=r*o-t*i,S=r*l-n*i,x=r*s-a*i,b=t*l-n*o,A=t*s-a*o,k=n*s-a*l,M=u*m-f*d,D=u*p-v*d,z=u*y-h*d,F=f*p-v*m,H=f*y-h*m,Y=v*y-h*p;return _*Y-S*H+x*F+b*z-A*D+k*M}});var ox=ne((Cle,ix)=>{ix.exports=zH;function zH(e,r,t){var n=r[0],a=r[1],i=r[2],o=r[3],l=r[4],s=r[5],u=r[6],f=r[7],v=r[8],h=r[9],d=r[10],m=r[11],p=r[12],y=r[13],_=r[14],S=r[15],x=t[0],b=t[1],A=t[2],k=t[3];return e[0]=x*n+b*l+A*v+k*p,e[1]=x*a+b*s+A*h+k*y,e[2]=x*i+b*u+A*d+k*_,e[3]=x*o+b*f+A*m+k*S,x=t[4],b=t[5],A=t[6],k=t[7],e[4]=x*n+b*l+A*v+k*p,e[5]=x*a+b*s+A*h+k*y,e[6]=x*i+b*u+A*d+k*_,e[7]=x*o+b*f+A*m+k*S,x=t[8],b=t[9],A=t[10],k=t[11],e[8]=x*n+b*l+A*v+k*p,e[9]=x*a+b*s+A*h+k*y,e[10]=x*i+b*u+A*d+k*_,e[11]=x*o+b*f+A*m+k*S,x=t[12],b=t[13],A=t[14],k=t[15],e[12]=x*n+b*l+A*v+k*p,e[13]=x*a+b*s+A*h+k*y,e[14]=x*i+b*u+A*d+k*_,e[15]=x*o+b*f+A*m+k*S,e}});var sx=ne((Lle,lx)=>{lx.exports=NH;function NH(e,r,t){var n=t[0],a=t[1],i=t[2],o,l,s,u,f,v,h,d,m,p,y,_;return r===e?(e[12]=r[0]*n+r[4]*a+r[8]*i+r[12],e[13]=r[1]*n+r[5]*a+r[9]*i+r[13],e[14]=r[2]*n+r[6]*a+r[10]*i+r[14],e[15]=r[3]*n+r[7]*a+r[11]*i+r[15]):(o=r[0],l=r[1],s=r[2],u=r[3],f=r[4],v=r[5],h=r[6],d=r[7],m=r[8],p=r[9],y=r[10],_=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=u,e[4]=f,e[5]=v,e[6]=h,e[7]=d,e[8]=m,e[9]=p,e[10]=y,e[11]=_,e[12]=o*n+f*a+m*i+r[12],e[13]=l*n+v*a+p*i+r[13],e[14]=s*n+h*a+y*i+r[14],e[15]=u*n+d*a+_*i+r[15]),e}});var fx=ne((qle,ux)=>{ux.exports=FH;function FH(e,r,t){var n=t[0],a=t[1],i=t[2];return e[0]=r[0]*n,e[1]=r[1]*n,e[2]=r[2]*n,e[3]=r[3]*n,e[4]=r[4]*a,e[5]=r[5]*a,e[6]=r[6]*a,e[7]=r[7]*a,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var vx=ne((Dle,cx)=>{cx.exports=IH;function IH(e,r,t,n){var a=n[0],i=n[1],o=n[2],l=Math.sqrt(a*a+i*i+o*o),s,u,f,v,h,d,m,p,y,_,S,x,b,A,k,M,D,z,F,H,Y,O,X,V;return Math.abs(l)<1e-6?null:(l=1/l,a*=l,i*=l,o*=l,s=Math.sin(t),u=Math.cos(t),f=1-u,v=r[0],h=r[1],d=r[2],m=r[3],p=r[4],y=r[5],_=r[6],S=r[7],x=r[8],b=r[9],A=r[10],k=r[11],M=a*a*f+u,D=i*a*f+o*s,z=o*a*f-i*s,F=a*i*f-o*s,H=i*i*f+u,Y=o*i*f+a*s,O=a*o*f+i*s,X=i*o*f-a*s,V=o*o*f+u,e[0]=v*M+p*D+x*z,e[1]=h*M+y*D+b*z,e[2]=d*M+_*D+A*z,e[3]=m*M+S*D+k*z,e[4]=v*F+p*H+x*Y,e[5]=h*F+y*H+b*Y,e[6]=d*F+_*H+A*Y,e[7]=m*F+S*H+k*Y,e[8]=v*O+p*X+x*V,e[9]=h*O+y*X+b*V,e[10]=d*O+_*X+A*V,e[11]=m*O+S*X+k*V,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var dx=ne((Ele,hx)=>{hx.exports=HH;function HH(e,r,t){var n=Math.sin(t),a=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*a+u*n,e[5]=o*a+f*n,e[6]=l*a+v*n,e[7]=s*a+h*n,e[8]=u*a-i*n,e[9]=f*a-o*n,e[10]=v*a-l*n,e[11]=h*a-s*n,e}});var gx=ne((Ple,px)=>{px.exports=BH;function BH(e,r,t){var n=Math.sin(t),a=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*a-u*n,e[1]=o*a-f*n,e[2]=l*a-v*n,e[3]=s*a-h*n,e[8]=i*n+u*a,e[9]=o*n+f*a,e[10]=l*n+v*a,e[11]=s*n+h*a,e}});var yx=ne((Rle,mx)=>{mx.exports=OH;function OH(e,r,t){var n=Math.sin(t),a=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[4],f=r[5],v=r[6],h=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*a+u*n,e[1]=o*a+f*n,e[2]=l*a+v*n,e[3]=s*a+h*n,e[4]=u*a-i*n,e[5]=f*a-o*n,e[6]=v*a-l*n,e[7]=h*a-s*n,e}});var _x=ne((zle,bx)=>{bx.exports=UH;function UH(e,r,t){var n,a,i,o=t[0],l=t[1],s=t[2],u=Math.sqrt(o*o+l*l+s*s);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,l*=u,s*=u,n=Math.sin(r),a=Math.cos(r),i=1-a,e[0]=o*o*i+a,e[1]=l*o*i+s*n,e[2]=s*o*i-l*n,e[3]=0,e[4]=o*l*i-s*n,e[5]=l*l*i+a,e[6]=s*l*i+o*n,e[7]=0,e[8]=o*s*i+l*n,e[9]=l*s*i-o*n,e[10]=s*s*i+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var wx=ne((Nle,xx)=>{xx.exports=YH;function YH(e,r,t){var n=r[0],a=r[1],i=r[2],o=r[3],l=n+n,s=a+a,u=i+i,f=n*l,v=n*s,h=n*u,d=a*s,m=a*u,p=i*u,y=o*l,_=o*s,S=o*u;return e[0]=1-(d+p),e[1]=v+S,e[2]=h-_,e[3]=0,e[4]=v-S,e[5]=1-(f+p),e[6]=m+y,e[7]=0,e[8]=h+_,e[9]=m-y,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Ax=ne((Fle,Mx)=>{Mx.exports=GH;function GH(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var kx=ne((Ile,Tx)=>{Tx.exports=VH;function VH(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var Cx=ne((Hle,Sx)=>{Sx.exports=WH;function WH(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var qx=ne((Ble,Lx)=>{Lx.exports=ZH;function ZH(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Ex=ne((Ole,Dx)=>{Dx.exports=XH;function XH(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Iy=ne((Ule,Px)=>{Px.exports=jH;function jH(e,r){var t=r[0],n=r[1],a=r[2],i=r[3],o=t+t,l=n+n,s=a+a,u=t*o,f=n*o,v=n*l,h=a*o,d=a*l,m=a*s,p=i*o,y=i*l,_=i*s;return e[0]=1-v-m,e[1]=f+_,e[2]=h-y,e[3]=0,e[4]=f-_,e[5]=1-u-m,e[6]=d+p,e[7]=0,e[8]=h+y,e[9]=d-p,e[10]=1-u-v,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var zx=ne((Yle,Rx)=>{Rx.exports=JH;function JH(e,r,t,n,a,i,o){var l=1/(t-r),s=1/(a-n),u=1/(i-o);return e[0]=i*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(a+n)*s,e[10]=(o+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*u,e[15]=0,e}});var Fx=ne((Gle,Nx)=>{Nx.exports=$H;function $H(e,r,t,n,a){var i=1/Math.tan(r/2),o=1/(n-a);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(a+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*n*o,e[15]=0,e}});var Hx=ne((Vle,Ix)=>{Ix.exports=KH;function KH(e,r,t,n){var a=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),o=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),s=2/(o+l),u=2/(a+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(a-i)*u*.5,e[10]=n/(t-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*t/(t-n),e[15]=0,e}});var Ox=ne((Wle,Bx)=>{Bx.exports=QH;function QH(e,r,t,n,a,i,o){var l=1/(r-t),s=1/(n-a),u=1/(i-o);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*l,e[13]=(a+n)*s,e[14]=(o+i)*u,e[15]=1,e}});var Yx=ne((Zle,Ux)=>{var eB=Fy();Ux.exports=rB;function rB(e,r,t,n){var a,i,o,l,s,u,f,v,h,d,m=r[0],p=r[1],y=r[2],_=n[0],S=n[1],x=n[2],b=t[0],A=t[1],k=t[2];return Math.abs(m-b)<1e-6&&Math.abs(p-A)<1e-6&&Math.abs(y-k)<1e-6?eB(e):(f=m-b,v=p-A,h=y-k,d=1/Math.sqrt(f*f+v*v+h*h),f*=d,v*=d,h*=d,a=S*h-x*v,i=x*f-_*h,o=_*v-S*f,d=Math.sqrt(a*a+i*i+o*o),d?(d=1/d,a*=d,i*=d,o*=d):(a=0,i=0,o=0),l=v*o-h*i,s=h*a-f*o,u=f*i-v*a,d=Math.sqrt(l*l+s*s+u*u),d?(d=1/d,l*=d,s*=d,u*=d):(l=0,s=0,u=0),e[0]=a,e[1]=l,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=v,e[7]=0,e[8]=o,e[9]=u,e[10]=h,e[11]=0,e[12]=-(a*m+i*p+o*y),e[13]=-(l*m+s*p+u*y),e[14]=-(f*m+v*p+h*y),e[15]=1,e)}});var Vx=ne((Xle,Gx)=>{Gx.exports=tB;function tB(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Hy=ne((jle,Wx)=>{Wx.exports={create:V6(),clone:Z6(),copy:j6(),identity:Fy(),transpose:K6(),invert:ex(),adjoint:tx(),determinant:ax(),multiply:ox(),translate:sx(),scale:fx(),rotate:vx(),rotateX:dx(),rotateY:gx(),rotateZ:yx(),fromRotation:_x(),fromRotationTranslation:wx(),fromScaling:Ax(),fromTranslation:kx(),fromXRotation:Cx(),fromYRotation:qx(),fromZRotation:Ex(),fromQuat:Iy(),frustum:zx(),perspective:Fx(),perspectiveFromFieldOfView:Hx(),ortho:Ox(),lookAt:Yx(),str:Vx()}});var pd=ne(Xn=>{"use strict";var nB=Hy();Xn.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var aB=kt(),Zx=Pu(),iB=pd(),oB=Hy();function lB(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function sB(e){var r=aB.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function Xx(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function uB(e,r){jx("global",e,r)}function jx(e,r,t){var n="plotly.js-style-"+e,a=document.getElementById(n);if(!(a&&a.matches(".no-inline-styles"))){a||(a=document.createElement("style"),a.setAttribute("id",n),a.appendChild(document.createTextNode("")),document.head.appendChild(a));var i=a.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):Zx.warn("addStyleRule failed"):Zx.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function fB(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&Xx(t)}function cB(e,r,t,n,a,i){var o=n.split(":"),l=a.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[o[0]]=o[1]:f.style[l[0]]=l[1])}),u.setAttribute(s,!0))})}function vB(e){var r=$x(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(n){var a=Jx(n);if(a){var i=iB.convertCssMatrix(a);t=oB.multiply(t,t,i)}}),t}function Jx(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function $x(e){for(var r=[];hB(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function hB(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function dB(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}Kx.exports={getGraphDiv:lB,isPlotDiv:sB,removeElement:Xx,addStyleRule:uB,addRelatedStyleRule:jx,deleteRelatedStyleRule:fB,setStyleOnHover:cB,getFullTransformMatrix:vB,getElementTransformMatrix:Jx,getElementAndAncestors:$x,equalDomRects:dB}});var i1=ne((Kle,Qx)=>{"use strict";Qx.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var _o=ne((Qle,o7)=>{"use strict";var r7=la().extendFlat,pB=Gs(),t7={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},n7={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},gB=t7.flags.slice().concat(["fullReplot"]),mB=n7.flags.slice().concat("layoutReplot");o7.exports={traces:t7,layout:n7,traceFlags:function(){return e7(gB)},layoutFlags:function(){return e7(mB)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";By.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};By.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Oy=ne((rse,l7)=>{"use strict";l7.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Ru=ne(gd=>{"use strict";var s7=Oy(),tse=s7.FORMAT_LINK,nse=s7.DATE_FORMAT_LINK;function Uy(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var n=[],a=0;a{"use strict";function zu(e,r){return r?r.d2l(e):e}function u7(e,r){return r?r.l2d(e):e}function yB(e){return e.x0}function bB(e){return e.x1}function _B(e){return e.y0}function xB(e){return e.y1}function f7(e){return e.x0shift||0}function c7(e){return e.x1shift||0}function v7(e){return e.y0shift||0}function h7(e){return e.y1shift||0}function md(e,r){return zu(e.x1,r)+c7(e)-zu(e.x0,r)-f7(e)}function yd(e,r,t){return zu(e.y1,t)+h7(e)-zu(e.y0,t)-v7(e)}function wB(e,r){return Math.abs(md(e,r))}function MB(e,r,t){return Math.abs(yd(e,r,t))}function AB(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(md(e,r),2)+Math.pow(yd(e,r,t),2))}function TB(e,r){return u7((zu(e.x1,r)+c7(e)+zu(e.x0,r)+f7(e))/2,r)}function kB(e,r,t){return u7((zu(e.y1,t)+h7(e)+zu(e.y0,t)+v7(e))/2,t)}function SB(e,r,t){return e.type!=="line"?void 0:yd(e,r,t)/md(e,r)}d7.exports={x0:yB,x1:bB,y0:_B,y1:xB,slope:SB,dx:md,dy:yd,width:wB,height:MB,length:AB,xcenter:TB,ycenter:kB}});var m7=ne((ose,g7)=>{"use strict";var CB=_o().overrideAll,Qf=bo(),p7=$a(),LB=Kl().dash,Nu=la().extendFlat,qB=Ru().shapeTexttemplateAttrs,DB=bd();g7.exports=CB({newshape:{visible:Nu({},Qf.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Nu({},Qf.legend,{}),legendgroup:Nu({},Qf.legendgroup,{}),legendgrouptitle:{text:Nu({},Qf.legendgrouptitle.text,{}),font:p7({})},legendrank:Nu({},Qf.legendrank,{}),legendwidth:Nu({},Qf.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Nu({},LB,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Nu({},Qf.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:qB({newshape:!0},{keys:Object.keys(DB)}),font:p7({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var b7=ne((lse,y7)=>{"use strict";var EB=Kl().dash,PB=la().extendFlat;y7.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:PB({},EB,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var _d=ne((sse,_7)=>{"use strict";_7.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var A0=ne((use,A7)=>{"use strict";var Yy=$a(),RB=i1(),xd=cl(),x7=m7(),w7=b7(),zB=_d(),M7=la().extendFlat,wd=Yy({editType:"calc"});wd.family.dflt='"Open Sans", verdana, arial, sans-serif';wd.size.dflt=12;wd.color.dflt=xd.defaultLine;A7.exports={font:wd,title:{text:{valType:"string",editType:"layoutstyle"},font:Yy({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Yy({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:M7(zB({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:xd.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:xd.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:xd.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:x7.newshape,activeshape:x7.activeshape,newselection:w7.newselection,activeselection:w7.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:M7({},RB.transition,{editType:"none"})}});var T7=O_(()=>{});var NB={};var k7=O_(()=>{T7()});var dt=ne(Dt=>{"use strict";var T0=Pu(),S7=dd(),C7=Ny(),FB=Gs(),IB=a1().addStyleRule,L7=la(),HB=bo(),BB=A0(),OB=L7.extendFlat,Gy=L7.extendDeepAll;Dt.modules={};Dt.allCategories={};Dt.allTypes=[];Dt.subplotsRegistry={};Dt.componentsRegistry={};Dt.layoutArrayContainers=[];Dt.layoutArrayRegexes=[];Dt.traceLayoutAttributes={};Dt.localeRegistry={};Dt.apiMethodRegistry={};Dt.collectableSubplotTypes=null;Dt.register=function(r){if(Dt.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var ZB=m0().timeFormat,B7=Bt(),Vy=Pu(),Iu=b0().mod,C0=En(),xo=C0.BADNUM,Di=C0.ONEDAY,o1=C0.ONEHOUR,Fu=C0.ONEMIN,S0=C0.ONESEC,l1=C0.EPOCHJD,Vs=dt(),R7=m0().utcFormat,XB=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,jB=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,z7=new Date().getFullYear()-70;function Ws(e){return e&&Vs.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}jn.dateTick0=function(e,r){var t=JB(e,!!r);if(r<2)return t;var n=jn.dateTime2ms(t,e);return n+=Di*(r-1),jn.ms2DateTime(n,0,e)};function JB(e,r){return Ws(e)?r?Vs.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Vs.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}jn.dfltRange=function(e){return Ws(e)?Vs.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};jn.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Ad,Td;jn.dateTime2ms=function(e,r){if(jn.isJSDate(e)){var t=e.getTimezoneOffset()*Fu,n=(e.getUTCMinutes()-e.getMinutes())*Fu+(e.getUTCSeconds()-e.getSeconds())*S0+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var a=3*Fu;t=t-a/2+Iu(n-t+a/2,a)}return e=Number(e)-t,e>=Ad&&e<=Td?e:xo}if(typeof e!="string"&&typeof e!="number")return xo;e=String(e);var i=Ws(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.substr(1),r="");var l=i&&r.substr(0,7)==="chinese",s=e.match(l?jB:XB);if(!s)return xo;var u=s[1],f=s[3]||"1",v=Number(s[5]||1),h=Number(s[7]||0),d=Number(s[9]||0),m=Number(s[11]||0);if(i){if(u.length===2)return xo;u=Number(u);var p;try{var y=Vs.getComponentMethod("calendars","getCal")(r);if(l){var _=f.charAt(f.length-1)==="i";f=parseInt(f,10),p=y.newDate(u,y.toMonthIndex(u,f,_),v)}else p=y.newDate(u,Number(f),v)}catch(x){return xo}return p?(p.toJD()-l1)*Di+h*o1+d*Fu+m*S0:xo}u.length===2?u=(Number(u)+2e3-z7)%100+z7:u=Number(u),f-=1;var S=new Date(Date.UTC(2e3,f,v,h,d));return S.setUTCFullYear(u),S.getUTCMonth()!==f||S.getUTCDate()!==v?xo:S.getTime()+m*S0};Ad=jn.MIN_MS=jn.dateTime2ms("-9999");Td=jn.MAX_MS=jn.dateTime2ms("9999-12-31 23:59:59.9999");jn.isDateTime=function(e,r){return jn.dateTime2ms(e,r)!==xo};function k0(e,r){return String(e+Math.pow(10,r)).substr(1)}var Md=90*Di,N7=3*o1,F7=5*Fu;jn.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Ad&&e<=Td))return xo;r||(r=0);var n=Math.floor(Iu(e+.05,1)*10),a=Math.round(e-n/10),i,o,l,s,u,f;if(Ws(t)){var v=Math.floor(a/Di)+l1,h=Math.floor(Iu(e,Di));try{i=Vs.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=R7("G%Y-%m-%d")(new Date(a))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;o=r=Ad+Di&&e<=Td-Di))return xo;var r=Math.floor(Iu(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=ZB("%Y-%m-%d")(t),a=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return O7(n,a,i,o,l)};function O7(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+k0(r,2)+":"+k0(t,2),(n||a)&&(e+=":"+k0(n,2),a))){for(var i=4;a%10===0;)i-=1,a/=10;e+="."+k0(a,i)}return e}jn.cleanDate=function(e,r,t){if(e===xo)return r;if(jn.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ws(t))return Vy.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=jn.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!jn.isDateTime(e,t))return Vy.error("unrecognized date",e),r;return e};var $B=/%\d?f/g,KB=/%h/g,QB={1:"1",2:"1",3:"2",4:"2"};function I7(e,r,t,n){e=e.replace($B,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return l});var a=new Date(Math.floor(r+.05));if(e=e.replace(KB,function(){return QB[t("%q")(a)]}),Ws(n))try{e=Vs.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(i){return"Invalid"}return t(e)(a)}var eO=[59,59.9,59.99,59.999,59.9999];function rO(e,r){var t=Iu(e+.05,Di),n=k0(Math.floor(t/o1),2)+":"+k0(Iu(Math.floor(t/Fu),60),2);if(r!=="M"){B7(r)||(r=0);var a=Math.min(Iu(e/S0,60),eO[r]),i=(100+a).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+i}return n}jn.formatDate=function(e,r,t,n,a,i){if(a=Ws(a)&&a,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-gl2d.js b/dist/plotly-gl2d.js index d62d4afcf44..a59671bfaf9 100644 --- a/dist/plotly-gl2d.js +++ b/dist/plotly-gl2d.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl2d) v3.0.2 +* plotly.js (gl2d) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -52,7 +52,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-gl2d.min.js b/dist/plotly-gl2d.min.js index b2c03524844..ece27c2c0b4 100644 --- a/dist/plotly-gl2d.min.js +++ b/dist/plotly-gl2d.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl2d - minified) v3.0.2 +* plotly.js (gl2d - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Fne=Object.create;var Oy=Object.defineProperty;var Rne=Object.getOwnPropertyDescriptor;var Pne=Object.getOwnPropertyNames;var Nne=Object.getPrototypeOf,Ine=Object.prototype.hasOwnProperty;var Qv=(e,r)=>()=>(e&&(r=e(e=0)),r);var R=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),One=(e,r)=>{for(var t in r)Oy(e,t,{get:r[t],enumerable:!0})},hM=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Pne(r))!Ine.call(e,n)&&n!==t&&Oy(e,n,{get:()=>r[n],enumerable:!(a=Rne(r,n))||a.enumerable});return e};var zne=(e,r,t)=>(t=e!=null?Fne(Nne(e)):{},hM(r||!e||!e.__esModule?Oy(t,"default",{value:e,enumerable:!0}):t,e)),dM=e=>hM(Oy({},"__esModule",{value:!0}),e);var zy=R(pM=>{"use strict";pM.version="3.0.2"});var yM=R((mM,By)=>{(function(r,t,a){t[r]=t[r]||a(),typeof By!="undefined"&&By.exports&&(By.exports=t[r])})("Promise",typeof window!="undefined"?window:mM,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,A,x,T){return Object.defineProperty(_,A,{value:x,writable:!0,configurable:T!==!1})}}catch(b){r=function(A,x,T){return A[x]=T,A}}a=function(){var _,A,x;function T(S,M){this.fn=S,this.self=M,this.next=void 0}return{add:function(M,k){x=new T(M,k),A?A.next=x:_=x,A=x,x=void 0},drain:function(){var M=_;for(_=A=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(b,_){a.add(b,_),t||(t=i(a.drain))}function l(b){var _,A=typeof b;return b!=null&&(A=="object"||A=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&o(s,A))}catch(x){c.call(new d(A),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&o(s,_))}function v(b,_,A,x){for(var T=0;T<_.length;T++)(function(M){b.resolve(_[M]).then(function(D){A(M,D)},x)})(T)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function g(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,T){var S={success:typeof x=="function"?x:!0,failure:typeof T=="function"?T:!1};return S.promise=new this.constructor(function(k,D){if(typeof k!="function"||typeof D!="function")throw TypeError("Not a function");S.resolve=k,S.reject=D}),_.chain.push(S),_.state!==0&&o(s,_),S.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(A){c.call(_,A)}}var m=r({},"constructor",g,!1);return g.prototype=m,r(m,"__NPO__",0,!1),r(g,"resolve",function(_){var A=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");T(_)})}),r(g,"reject",function(_){return new this(function(x,T){if(typeof x!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(g,"all",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):_.length===0?A.resolve([]):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");var M=_.length,k=Array(M),D=0;v(A,_,function(N,q){k[N]=q,++D===M&&T(k)},S)})}),r(g,"race",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");v(A,_,function(k,D){T(D)},S)})}),g})});var ta=R((ZSe,Uy)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(y){for(var w=y.length,C=new Array(w);w--;)C[w]=y[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(y,w){l.call(this,y,w+"")},o.setAttributeNS=function(y,w,C){s.call(this,y,w,C+"")},u.setProperty=function(y,w,C){f.call(this,y,w+"",C)}}e.ascending=c;function c(h,y){return hy?1:h>=y?0:NaN}e.descending=function(h,y){return yh?1:y>=h?0:NaN},e.min=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wL&&(E=L)}else{for(;++w=L){E=L;break}for(;++wL&&(E=L)}return E},e.max=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wE&&(E=L)}else{for(;++w=L){E=L;break}for(;++wE&&(E=L)}return E},e.extent=function(h,y){var w=-1,C=h.length,E,L,I;if(arguments.length===1){for(;++w=L){E=I=L;break}for(;++wL&&(E=L),I=L){E=I=L;break}for(;++wL&&(E=L),I1)return I/(z-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)<0?C=L+1:E=L}return C},right:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)>0?E=L:C=L+1}return C}}}var g=p(c);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(h){return p(h.length===1?function(y,w){return c(h(y),w)}:h)},e.shuffle=function(h,y,w){(C=arguments.length)<3&&(w=h.length,C<2&&(y=0));for(var C=w-y,E,L;C;)L=Math.random()*C--|0,E=h[C+y],h[C+y]=h[L+y],h[L+y]=E;return h},e.permute=function(h,y){for(var w=y.length,C=new Array(w);w--;)C[w]=h[y[w]];return C},e.pairs=function(h){for(var y=0,w=h.length-1,C,E=h[0],L=new Array(w<0?0:w);y=0;)for(I=h[y],w=I.length;--w>=0;)L[--E]=I[w];return L};var b=Math.abs;e.range=function(h,y,w){if(arguments.length<3&&(w=1,arguments.length<2&&(y=h,h=0)),(y-h)/w===1/0)throw new Error("infinite range");var C=[],E=_(b(w)),L=-1,I;if(h*=E,y*=E,w*=E,w<0)for(;(I=h+w*++L)>y;)C.push(I/E);else for(;(I=h+w*++L)=y.length)return E?E.call(h,z):C?z.sort(C):z;for(var J=-1,K=z.length,ee=y[X++],Me,qe,ne,he=new x,we;++J=y.length)return F;var X=[],J=w[z++];return F.forEach(function(K,ee){X.push({key:K,values:I(ee,z)})}),J?X.sort(function(K,ee){return J(K.key,ee.key)}):X}return h.map=function(F,z){return L(z,F,0)},h.entries=function(F){return I(L(e.map,F,0),0)},h.key=function(F){return y.push(F),h},h.sortKeys=function(F){return w[y.length-1]=F,h},h.sortValues=function(F){return C=F,h},h.rollup=function(F){return E=F,h},h},e.set=function(h){var y=new U;if(h)for(var w=0,C=h.length;w=0&&(C=h.slice(w+1),h=h.slice(0,w)),h)return arguments.length<2?this[h].on(C):this[h].on(C,y);if(arguments.length===2){if(y==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(C,null);return this}};function Q(h){var y=[],w=new x;function C(){for(var E=y,L=-1,I=E.length,F;++L=0&&(w=h.slice(0,y))!=="xmlns"&&(h=h.slice(y+1)),Te.hasOwnProperty(w)?{space:Te[w],local:h}:h}},Ce.attr=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node();return h=e.ns.qualify(h),h.local?w.getAttributeNS(h.space,h.local):w.getAttribute(h)}for(y in h)this.each(Pe(y,h[y]));return this}return this.each(Pe(h,y))};function Pe(h,y){h=e.ns.qualify(h);function w(){this.removeAttribute(h)}function C(){this.removeAttributeNS(h.space,h.local)}function E(){this.setAttribute(h,y)}function L(){this.setAttributeNS(h.space,h.local,y)}function I(){var z=y.apply(this,arguments);z==null?this.removeAttribute(h):this.setAttribute(h,z)}function F(){var z=y.apply(this,arguments);z==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,z)}return y==null?h.local?C:w:typeof y=="function"?h.local?F:I:h.local?L:E}function Ne(h){return h.trim().replace(/\s+/g," ")}Ce.classed=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node(),C=(h=Qe(h)).length,E=-1;if(y=w.classList){for(;++E=0;)(L=w[C])&&(E&&E!==L.nextSibling&&E.parentNode.insertBefore(L,E),E=L);return this},Ce.sort=function(h){h=Oe.apply(this,arguments);for(var y=-1,w=this.length;++y=y&&(y=E+1);!(z=I[y])&&++y0&&(h=h.slice(0,E));var I=pr.get(h);I&&(h=I,L=mr);function F(){var J=this[C];J&&(this.removeEventListener(h,J,J.$),delete this[C])}function z(){var J=L(y,t(arguments));F.call(this),this.addEventListener(h,this[C]=J,J.$=w),J._=y}function X(){var J=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),K;for(var ee in this)if(K=ee.match(J)){var Me=this[ee];this.removeEventListener(K[1],Me,Me.$),delete this[ee]}}return E?y?z:F:y?V:X}var pr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&pr.forEach(function(h){"on"+h in a&&pr.remove(h)});function Tr(h,y){return function(w){var C=e.event;e.event=w,y[0]=this.__data__;try{h.apply(this,y)}finally{e.event=C}}}function mr(h,y){var w=Tr(h,y);return function(C){var E=this,L=C.relatedTarget;(!L||L!==E&&!(L.compareDocumentPosition(E)&8))&&w.call(E,C)}}var vr,Cr=0;function Ir(h){var y=".dragsuppress-"+ ++Cr,w="click"+y,C=e.select(i(h)).on("touchmove"+y,ve).on("dragstart"+y,ve).on("selectstart"+y,ve);if(vr==null&&(vr="onselectstart"in h?!1:H(h.style,"userSelect")),vr){var E=n(h).style,L=E[vr];E[vr]="none"}return function(I){if(C.on(y,null),vr&&(E[vr]=L),I){var F=function(){C.on(w,null)};C.on(w,function(){ve(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Ze(h,xe())};var Gr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ze(h,y){y.changedTouches&&(y=y.changedTouches[0]);var w=h.ownerSVGElement||h;if(w.createSVGPoint){var C=w.createSVGPoint();if(Gr<0){var E=i(h);if(E.scrollX||E.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=w[0][0].getScreenCTM();Gr=!(L.f||L.e),w.remove()}}return Gr?(C.x=y.pageX,C.y=y.pageY):(C.x=y.clientX,C.y=y.clientY),C=C.matrixTransform(h.getScreenCTM().inverse()),[C.x,C.y]}var I=h.getBoundingClientRect();return[y.clientX-I.left-h.clientLeft,y.clientY-I.top-h.clientTop]}e.touch=function(h,y,w){if(arguments.length<3&&(w=y,y=xe().changedTouches),y){for(var C=0,E=y.length,L;C0?1:h<0?-1:0}function aa(h,y,w){return(y[0]-h[0])*(w[1]-h[1])-(y[1]-h[1])*(w[0]-h[0])}function en(h){return h>1?0:h<-1?Ie:Math.acos(h)}function Ln(h){return h>1?$r:h<-1?-$r:Math.asin(h)}function si(h){return((h=Math.exp(h))-1/h)/2}function Dn(h){return((h=Math.exp(h))+1/h)/2}function Vi(h){return((h=Math.exp(2*h))-1)/(h+1)}function Bn(h){return(h=Math.sin(h/2))*h}var qn=Math.SQRT2,yi=2,_t=4;e.interpolateZoom=function(h,y){var w=h[0],C=h[1],E=h[2],L=y[0],I=y[1],F=y[2],z=L-w,X=I-C,J=z*z+X*X,K,ee;if(J0&&(zr=zr.transition().duration(I)),zr.call(Re.event)}function it(){he&&he.domain(ne.range().map(function(zr){return(zr-h.x)/h.k}).map(ne.invert)),Fe&&Fe.domain(we.range().map(function(zr){return(zr-h.y)/h.k}).map(we.invert))}function ot(zr){F++||zr({type:"zoomstart"})}function qt(zr){it(),zr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function ct(zr){--F||(zr({type:"zoomend"}),w=null)}function kt(){var zr=this,Ft=qe.of(zr,arguments),Ut=0,ua=e.select(i(zr)).on(X,Hn).on(J,Kn),Ba=me(e.mouse(zr)),cn=Ir(zr);Xv.call(zr),ot(Ft);function Hn(){Ut=1,Pr(e.mouse(zr),Ba),qt(Ft)}function Kn(){ua.on(X,null).on(J,null),cn(Ut),ct(Ft)}}function ha(){var zr=this,Ft=qe.of(zr,arguments),Ut={},ua=0,Ba,cn=".zoom-"+e.event.changedTouches[0].identifier,Hn="touchmove"+cn,Kn="touchend"+cn,gi=[],G=e.select(zr),ie=Ir(zr);We(),ot(Ft),G.on(z,null).on(ee,We);function ue(){var $e=e.touches(zr);return Ba=h.k,$e.forEach(function(br){br.identifier in Ut&&(Ut[br.identifier]=me(br))}),$e}function We(){var $e=e.event.target;e.select($e).on(Hn,Ke).on(Kn,ar),gi.push($e);for(var br=e.event.changedTouches,Dr=0,qr=br.length;Dr1){var ft=Fr[0],Zr=Fr[1],hr=ft[0]-Zr[0],ze=ft[1]-Zr[1];ua=hr*hr+ze*ze}}function Ke(){var $e=e.touches(zr),br,Dr,qr,Fr;Xv.call(zr);for(var xt=0,ft=$e.length;xt1?1:y,w=w<0?0:w>1?1:w,E=w<=.5?w*(1+y):w+y-w*y,C=2*w-E;function L(F){return F>360?F-=360:F<0&&(F+=360),F<60?C+(E-C)*F/60:F<180?E:F<240?C+(E-C)*(240-F)/60:C}function I(F){return Math.round(L(F)*255)}return new ui(I(h+120),I(h),I(h-120))}e.hcl=on;function on(h,y,w){return this instanceof on?(this.h=+h,this.c=+y,void(this.l=+w)):arguments.length<2?h instanceof on?new on(h.h,h.c,h.l):h instanceof xn?As(h.l,h.a,h.b):As((h=jr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new on(h,y,w)}var Yi=on.prototype=new Xa;Yi.brighter=function(h){return new on(this.h,this.c,Math.min(100,this.l+Aa*(arguments.length?h:1)))},Yi.darker=function(h){return new on(this.h,this.c,Math.max(0,this.l-Aa*(arguments.length?h:1)))},Yi.rgb=function(){return Wi(this.h,this.c,this.l).rgb()};function Wi(h,y,w){return isNaN(h)&&(h=0),isNaN(y)&&(y=0),new xn(w,Math.cos(h*=St)*y,Math.sin(h)*y)}e.lab=xn;function xn(h,y,w){return this instanceof xn?(this.l=+h,this.a=+y,void(this.b=+w)):arguments.length<2?h instanceof xn?new xn(h.l,h.a,h.b):h instanceof on?Wi(h.h,h.c,h.l):jr((h=ui(h)).r,h.g,h.b):new xn(h,y,w)}var Aa=18,Un=.95047,_s=1,ws=1.08883,Bl=xn.prototype=new Xa;Bl.brighter=function(h){return new xn(Math.min(100,this.l+Aa*(arguments.length?h:1)),this.a,this.b)},Bl.darker=function(h){return new xn(Math.max(0,this.l-Aa*(arguments.length?h:1)),this.a,this.b)},Bl.rgb=function(){return _v(this.l,this.a,this.b)};function _v(h,y,w){var C=(h+16)/116,E=C+y/500,L=C-w/200;return E=Bf(E)*Un,C=Bf(C)*_s,L=Bf(L)*ws,new ui(ol(3.2404542*E-1.5371385*C-.4985314*L),ol(-.969266*E+1.8760108*C+.041556*L),ol(.0556434*E-.2040259*C+1.0572252*L))}function As(h,y,w){return h>0?new on(Math.atan2(w,y)*ea,Math.sqrt(y*y+w*w),h):new on(NaN,NaN,h)}function Bf(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function Uf(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function ol(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=ui;function ui(h,y,w){return this instanceof ui?(this.r=~~h,this.g=~~y,void(this.b=~~w)):arguments.length<2?h instanceof ui?new ui(h.r,h.g,h.b):jt(""+h,ui,rn):new ui(h,y,w)}function ll(h){return new ui(h>>16,h>>8&255,h&255)}function Ts(h){return ll(h)+""}var go=ui.prototype=new Xa;go.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var y=this.r,w=this.g,C=this.b,E=30;return!y&&!w&&!C?new ui(E,E,E):(y&&y>4,C=C>>4|C,E=z&240,E=E>>4|E,L=z&15,L=L<<4|L):h.length===7&&(C=(z&16711680)>>16,E=(z&65280)>>8,L=z&255)),y(C,E,L))}function va(h,y,w){var C=Math.min(h/=255,y/=255,w/=255),E=Math.max(h,y,w),L=E-C,I,F,z=(E+C)/2;return L?(F=z<.5?L/(E+C):L/(2-E-C),h==E?I=(y-w)/L+(y0&&z<1?0:I),new Sa(I,F,z)}function jr(h,y,w){h=Gn(h),y=Gn(y),w=Gn(w);var C=Uf((.4124564*h+.3575761*y+.1804375*w)/Un),E=Uf((.2126729*h+.7151522*y+.072175*w)/_s),L=Uf((.0193339*h+.119192*y+.9503041*w)/ws);return xn(116*E-16,500*(C-E),200*(E-L))}function Gn(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Ea(h){var y=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(y*2.55):y}var Fn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Fn.forEach(function(h,y){Fn.set(h,ll(y))});function Vt(h){return typeof h=="function"?h:function(){return h}}e.functor=Vt,e.xhr=bo($);function bo(h){return function(y,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Ul(y,w,h,C)}}function Ul(h,y,w,C){var E={},L=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,z=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=X:F.onreadystatechange=function(){F.readyState>3&&X()};function X(){var J=F.status,K;if(!J&&P5(F)||J>=200&&J<300||J===304){try{K=w.call(E,F)}catch(ee){L.error.call(E,ee);return}L.load.call(E,K)}else L.error.call(E,F)}return F.onprogress=function(J){var K=e.event;e.event=J;try{L.progress.call(E,F)}finally{e.event=K}},E.header=function(J,K){return J=(J+"").toLowerCase(),arguments.length<2?I[J]:(K==null?delete I[J]:I[J]=K+"",E)},E.mimeType=function(J){return arguments.length?(y=J==null?null:J+"",E):y},E.responseType=function(J){return arguments.length?(z=J,E):z},E.response=function(J){return w=J,E},["get","post"].forEach(function(J){E[J]=function(){return E.send.apply(E,[J].concat(t(arguments)))}}),E.send=function(J,K,ee){if(arguments.length===2&&typeof K=="function"&&(ee=K,K=null),F.open(J,h,!0),y!=null&&!("accept"in I)&&(I.accept=y+",*/*"),F.setRequestHeader)for(var Me in I)F.setRequestHeader(Me,I[Me]);return y!=null&&F.overrideMimeType&&F.overrideMimeType(y),z!=null&&(F.responseType=z),ee!=null&&E.on("error",ee).on("load",function(qe){ee(null,qe)}),L.beforesend.call(E,F),F.send(K==null?null:K),E},E.abort=function(){return F.abort(),E},e.rebind(E,L,"on"),C==null?E:E.get(Gl(C))}function Gl(h){return h.length===1?function(y,w){h(y==null?w:null)}:h}function P5(h){var y=h.responseType;return y&&y!=="text"?h.response:h.responseText}e.dsv=function(h,y){var w=new RegExp('["'+h+` +"use strict";var Plotly=(()=>{var Fne=Object.create;var Oy=Object.defineProperty;var Rne=Object.getOwnPropertyDescriptor;var Pne=Object.getOwnPropertyNames;var Nne=Object.getPrototypeOf,Ine=Object.prototype.hasOwnProperty;var Qv=(e,r)=>()=>(e&&(r=e(e=0)),r);var R=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),One=(e,r)=>{for(var t in r)Oy(e,t,{get:r[t],enumerable:!0})},hM=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Pne(r))!Ine.call(e,n)&&n!==t&&Oy(e,n,{get:()=>r[n],enumerable:!(a=Rne(r,n))||a.enumerable});return e};var zne=(e,r,t)=>(t=e!=null?Fne(Nne(e)):{},hM(r||!e||!e.__esModule?Oy(t,"default",{value:e,enumerable:!0}):t,e)),dM=e=>hM(Oy({},"__esModule",{value:!0}),e);var zy=R(pM=>{"use strict";pM.version="3.0.3"});var yM=R((mM,By)=>{(function(r,t,a){t[r]=t[r]||a(),typeof By!="undefined"&&By.exports&&(By.exports=t[r])})("Promise",typeof window!="undefined"?window:mM,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,A,x,T){return Object.defineProperty(_,A,{value:x,writable:!0,configurable:T!==!1})}}catch(b){r=function(A,x,T){return A[x]=T,A}}a=function(){var _,A,x;function T(S,M){this.fn=S,this.self=M,this.next=void 0}return{add:function(M,k){x=new T(M,k),A?A.next=x:_=x,A=x,x=void 0},drain:function(){var M=_;for(_=A=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(b,_){a.add(b,_),t||(t=i(a.drain))}function l(b){var _,A=typeof b;return b!=null&&(A=="object"||A=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&o(s,A))}catch(x){c.call(new d(A),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&o(s,_))}function v(b,_,A,x){for(var T=0;T<_.length;T++)(function(M){b.resolve(_[M]).then(function(D){A(M,D)},x)})(T)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function g(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,T){var S={success:typeof x=="function"?x:!0,failure:typeof T=="function"?T:!1};return S.promise=new this.constructor(function(k,D){if(typeof k!="function"||typeof D!="function")throw TypeError("Not a function");S.resolve=k,S.reject=D}),_.chain.push(S),_.state!==0&&o(s,_),S.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(A){c.call(_,A)}}var m=r({},"constructor",g,!1);return g.prototype=m,r(m,"__NPO__",0,!1),r(g,"resolve",function(_){var A=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");T(_)})}),r(g,"reject",function(_){return new this(function(x,T){if(typeof x!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(g,"all",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):_.length===0?A.resolve([]):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");var M=_.length,k=Array(M),D=0;v(A,_,function(N,q){k[N]=q,++D===M&&T(k)},S)})}),r(g,"race",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");v(A,_,function(k,D){T(D)},S)})}),g})});var ta=R((ZSe,Uy)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(y){for(var w=y.length,C=new Array(w);w--;)C[w]=y[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(y,w){l.call(this,y,w+"")},o.setAttributeNS=function(y,w,C){s.call(this,y,w,C+"")},u.setProperty=function(y,w,C){f.call(this,y,w+"",C)}}e.ascending=c;function c(h,y){return hy?1:h>=y?0:NaN}e.descending=function(h,y){return yh?1:y>=h?0:NaN},e.min=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wL&&(E=L)}else{for(;++w=L){E=L;break}for(;++wL&&(E=L)}return E},e.max=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wE&&(E=L)}else{for(;++w=L){E=L;break}for(;++wE&&(E=L)}return E},e.extent=function(h,y){var w=-1,C=h.length,E,L,I;if(arguments.length===1){for(;++w=L){E=I=L;break}for(;++wL&&(E=L),I=L){E=I=L;break}for(;++wL&&(E=L),I1)return I/(z-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)<0?C=L+1:E=L}return C},right:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)>0?E=L:C=L+1}return C}}}var g=p(c);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(h){return p(h.length===1?function(y,w){return c(h(y),w)}:h)},e.shuffle=function(h,y,w){(C=arguments.length)<3&&(w=h.length,C<2&&(y=0));for(var C=w-y,E,L;C;)L=Math.random()*C--|0,E=h[C+y],h[C+y]=h[L+y],h[L+y]=E;return h},e.permute=function(h,y){for(var w=y.length,C=new Array(w);w--;)C[w]=h[y[w]];return C},e.pairs=function(h){for(var y=0,w=h.length-1,C,E=h[0],L=new Array(w<0?0:w);y=0;)for(I=h[y],w=I.length;--w>=0;)L[--E]=I[w];return L};var b=Math.abs;e.range=function(h,y,w){if(arguments.length<3&&(w=1,arguments.length<2&&(y=h,h=0)),(y-h)/w===1/0)throw new Error("infinite range");var C=[],E=_(b(w)),L=-1,I;if(h*=E,y*=E,w*=E,w<0)for(;(I=h+w*++L)>y;)C.push(I/E);else for(;(I=h+w*++L)=y.length)return E?E.call(h,z):C?z.sort(C):z;for(var J=-1,K=z.length,ee=y[X++],Me,qe,ne,he=new x,we;++J=y.length)return F;var X=[],J=w[z++];return F.forEach(function(K,ee){X.push({key:K,values:I(ee,z)})}),J?X.sort(function(K,ee){return J(K.key,ee.key)}):X}return h.map=function(F,z){return L(z,F,0)},h.entries=function(F){return I(L(e.map,F,0),0)},h.key=function(F){return y.push(F),h},h.sortKeys=function(F){return w[y.length-1]=F,h},h.sortValues=function(F){return C=F,h},h.rollup=function(F){return E=F,h},h},e.set=function(h){var y=new U;if(h)for(var w=0,C=h.length;w=0&&(C=h.slice(w+1),h=h.slice(0,w)),h)return arguments.length<2?this[h].on(C):this[h].on(C,y);if(arguments.length===2){if(y==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(C,null);return this}};function Q(h){var y=[],w=new x;function C(){for(var E=y,L=-1,I=E.length,F;++L=0&&(w=h.slice(0,y))!=="xmlns"&&(h=h.slice(y+1)),Te.hasOwnProperty(w)?{space:Te[w],local:h}:h}},Ce.attr=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node();return h=e.ns.qualify(h),h.local?w.getAttributeNS(h.space,h.local):w.getAttribute(h)}for(y in h)this.each(Pe(y,h[y]));return this}return this.each(Pe(h,y))};function Pe(h,y){h=e.ns.qualify(h);function w(){this.removeAttribute(h)}function C(){this.removeAttributeNS(h.space,h.local)}function E(){this.setAttribute(h,y)}function L(){this.setAttributeNS(h.space,h.local,y)}function I(){var z=y.apply(this,arguments);z==null?this.removeAttribute(h):this.setAttribute(h,z)}function F(){var z=y.apply(this,arguments);z==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,z)}return y==null?h.local?C:w:typeof y=="function"?h.local?F:I:h.local?L:E}function Ne(h){return h.trim().replace(/\s+/g," ")}Ce.classed=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node(),C=(h=Qe(h)).length,E=-1;if(y=w.classList){for(;++E=0;)(L=w[C])&&(E&&E!==L.nextSibling&&E.parentNode.insertBefore(L,E),E=L);return this},Ce.sort=function(h){h=Oe.apply(this,arguments);for(var y=-1,w=this.length;++y=y&&(y=E+1);!(z=I[y])&&++y0&&(h=h.slice(0,E));var I=pr.get(h);I&&(h=I,L=mr);function F(){var J=this[C];J&&(this.removeEventListener(h,J,J.$),delete this[C])}function z(){var J=L(y,t(arguments));F.call(this),this.addEventListener(h,this[C]=J,J.$=w),J._=y}function X(){var J=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),K;for(var ee in this)if(K=ee.match(J)){var Me=this[ee];this.removeEventListener(K[1],Me,Me.$),delete this[ee]}}return E?y?z:F:y?V:X}var pr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&pr.forEach(function(h){"on"+h in a&&pr.remove(h)});function Tr(h,y){return function(w){var C=e.event;e.event=w,y[0]=this.__data__;try{h.apply(this,y)}finally{e.event=C}}}function mr(h,y){var w=Tr(h,y);return function(C){var E=this,L=C.relatedTarget;(!L||L!==E&&!(L.compareDocumentPosition(E)&8))&&w.call(E,C)}}var vr,Cr=0;function Ir(h){var y=".dragsuppress-"+ ++Cr,w="click"+y,C=e.select(i(h)).on("touchmove"+y,ve).on("dragstart"+y,ve).on("selectstart"+y,ve);if(vr==null&&(vr="onselectstart"in h?!1:H(h.style,"userSelect")),vr){var E=n(h).style,L=E[vr];E[vr]="none"}return function(I){if(C.on(y,null),vr&&(E[vr]=L),I){var F=function(){C.on(w,null)};C.on(w,function(){ve(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Ze(h,xe())};var Gr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ze(h,y){y.changedTouches&&(y=y.changedTouches[0]);var w=h.ownerSVGElement||h;if(w.createSVGPoint){var C=w.createSVGPoint();if(Gr<0){var E=i(h);if(E.scrollX||E.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=w[0][0].getScreenCTM();Gr=!(L.f||L.e),w.remove()}}return Gr?(C.x=y.pageX,C.y=y.pageY):(C.x=y.clientX,C.y=y.clientY),C=C.matrixTransform(h.getScreenCTM().inverse()),[C.x,C.y]}var I=h.getBoundingClientRect();return[y.clientX-I.left-h.clientLeft,y.clientY-I.top-h.clientTop]}e.touch=function(h,y,w){if(arguments.length<3&&(w=y,y=xe().changedTouches),y){for(var C=0,E=y.length,L;C0?1:h<0?-1:0}function aa(h,y,w){return(y[0]-h[0])*(w[1]-h[1])-(y[1]-h[1])*(w[0]-h[0])}function en(h){return h>1?0:h<-1?Ie:Math.acos(h)}function Ln(h){return h>1?$r:h<-1?-$r:Math.asin(h)}function si(h){return((h=Math.exp(h))-1/h)/2}function Dn(h){return((h=Math.exp(h))+1/h)/2}function Vi(h){return((h=Math.exp(2*h))-1)/(h+1)}function Bn(h){return(h=Math.sin(h/2))*h}var qn=Math.SQRT2,yi=2,_t=4;e.interpolateZoom=function(h,y){var w=h[0],C=h[1],E=h[2],L=y[0],I=y[1],F=y[2],z=L-w,X=I-C,J=z*z+X*X,K,ee;if(J0&&(zr=zr.transition().duration(I)),zr.call(Re.event)}function it(){he&&he.domain(ne.range().map(function(zr){return(zr-h.x)/h.k}).map(ne.invert)),Fe&&Fe.domain(we.range().map(function(zr){return(zr-h.y)/h.k}).map(we.invert))}function ot(zr){F++||zr({type:"zoomstart"})}function qt(zr){it(),zr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function ct(zr){--F||(zr({type:"zoomend"}),w=null)}function kt(){var zr=this,Ft=qe.of(zr,arguments),Ut=0,ua=e.select(i(zr)).on(X,Hn).on(J,Kn),Ba=me(e.mouse(zr)),cn=Ir(zr);Xv.call(zr),ot(Ft);function Hn(){Ut=1,Pr(e.mouse(zr),Ba),qt(Ft)}function Kn(){ua.on(X,null).on(J,null),cn(Ut),ct(Ft)}}function ha(){var zr=this,Ft=qe.of(zr,arguments),Ut={},ua=0,Ba,cn=".zoom-"+e.event.changedTouches[0].identifier,Hn="touchmove"+cn,Kn="touchend"+cn,gi=[],G=e.select(zr),ie=Ir(zr);We(),ot(Ft),G.on(z,null).on(ee,We);function ue(){var $e=e.touches(zr);return Ba=h.k,$e.forEach(function(br){br.identifier in Ut&&(Ut[br.identifier]=me(br))}),$e}function We(){var $e=e.event.target;e.select($e).on(Hn,Ke).on(Kn,ar),gi.push($e);for(var br=e.event.changedTouches,Dr=0,qr=br.length;Dr1){var ft=Fr[0],Zr=Fr[1],hr=ft[0]-Zr[0],ze=ft[1]-Zr[1];ua=hr*hr+ze*ze}}function Ke(){var $e=e.touches(zr),br,Dr,qr,Fr;Xv.call(zr);for(var xt=0,ft=$e.length;xt1?1:y,w=w<0?0:w>1?1:w,E=w<=.5?w*(1+y):w+y-w*y,C=2*w-E;function L(F){return F>360?F-=360:F<0&&(F+=360),F<60?C+(E-C)*F/60:F<180?E:F<240?C+(E-C)*(240-F)/60:C}function I(F){return Math.round(L(F)*255)}return new ui(I(h+120),I(h),I(h-120))}e.hcl=on;function on(h,y,w){return this instanceof on?(this.h=+h,this.c=+y,void(this.l=+w)):arguments.length<2?h instanceof on?new on(h.h,h.c,h.l):h instanceof xn?As(h.l,h.a,h.b):As((h=jr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new on(h,y,w)}var Yi=on.prototype=new Xa;Yi.brighter=function(h){return new on(this.h,this.c,Math.min(100,this.l+Aa*(arguments.length?h:1)))},Yi.darker=function(h){return new on(this.h,this.c,Math.max(0,this.l-Aa*(arguments.length?h:1)))},Yi.rgb=function(){return Wi(this.h,this.c,this.l).rgb()};function Wi(h,y,w){return isNaN(h)&&(h=0),isNaN(y)&&(y=0),new xn(w,Math.cos(h*=St)*y,Math.sin(h)*y)}e.lab=xn;function xn(h,y,w){return this instanceof xn?(this.l=+h,this.a=+y,void(this.b=+w)):arguments.length<2?h instanceof xn?new xn(h.l,h.a,h.b):h instanceof on?Wi(h.h,h.c,h.l):jr((h=ui(h)).r,h.g,h.b):new xn(h,y,w)}var Aa=18,Un=.95047,_s=1,ws=1.08883,Bl=xn.prototype=new Xa;Bl.brighter=function(h){return new xn(Math.min(100,this.l+Aa*(arguments.length?h:1)),this.a,this.b)},Bl.darker=function(h){return new xn(Math.max(0,this.l-Aa*(arguments.length?h:1)),this.a,this.b)},Bl.rgb=function(){return _v(this.l,this.a,this.b)};function _v(h,y,w){var C=(h+16)/116,E=C+y/500,L=C-w/200;return E=Bf(E)*Un,C=Bf(C)*_s,L=Bf(L)*ws,new ui(ol(3.2404542*E-1.5371385*C-.4985314*L),ol(-.969266*E+1.8760108*C+.041556*L),ol(.0556434*E-.2040259*C+1.0572252*L))}function As(h,y,w){return h>0?new on(Math.atan2(w,y)*ea,Math.sqrt(y*y+w*w),h):new on(NaN,NaN,h)}function Bf(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function Uf(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function ol(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=ui;function ui(h,y,w){return this instanceof ui?(this.r=~~h,this.g=~~y,void(this.b=~~w)):arguments.length<2?h instanceof ui?new ui(h.r,h.g,h.b):jt(""+h,ui,rn):new ui(h,y,w)}function ll(h){return new ui(h>>16,h>>8&255,h&255)}function Ts(h){return ll(h)+""}var go=ui.prototype=new Xa;go.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var y=this.r,w=this.g,C=this.b,E=30;return!y&&!w&&!C?new ui(E,E,E):(y&&y>4,C=C>>4|C,E=z&240,E=E>>4|E,L=z&15,L=L<<4|L):h.length===7&&(C=(z&16711680)>>16,E=(z&65280)>>8,L=z&255)),y(C,E,L))}function va(h,y,w){var C=Math.min(h/=255,y/=255,w/=255),E=Math.max(h,y,w),L=E-C,I,F,z=(E+C)/2;return L?(F=z<.5?L/(E+C):L/(2-E-C),h==E?I=(y-w)/L+(y0&&z<1?0:I),new Sa(I,F,z)}function jr(h,y,w){h=Gn(h),y=Gn(y),w=Gn(w);var C=Uf((.4124564*h+.3575761*y+.1804375*w)/Un),E=Uf((.2126729*h+.7151522*y+.072175*w)/_s),L=Uf((.0193339*h+.119192*y+.9503041*w)/ws);return xn(116*E-16,500*(C-E),200*(E-L))}function Gn(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Ea(h){var y=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(y*2.55):y}var Fn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Fn.forEach(function(h,y){Fn.set(h,ll(y))});function Vt(h){return typeof h=="function"?h:function(){return h}}e.functor=Vt,e.xhr=bo($);function bo(h){return function(y,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Ul(y,w,h,C)}}function Ul(h,y,w,C){var E={},L=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,z=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=X:F.onreadystatechange=function(){F.readyState>3&&X()};function X(){var J=F.status,K;if(!J&&P5(F)||J>=200&&J<300||J===304){try{K=w.call(E,F)}catch(ee){L.error.call(E,ee);return}L.load.call(E,K)}else L.error.call(E,F)}return F.onprogress=function(J){var K=e.event;e.event=J;try{L.progress.call(E,F)}finally{e.event=K}},E.header=function(J,K){return J=(J+"").toLowerCase(),arguments.length<2?I[J]:(K==null?delete I[J]:I[J]=K+"",E)},E.mimeType=function(J){return arguments.length?(y=J==null?null:J+"",E):y},E.responseType=function(J){return arguments.length?(z=J,E):z},E.response=function(J){return w=J,E},["get","post"].forEach(function(J){E[J]=function(){return E.send.apply(E,[J].concat(t(arguments)))}}),E.send=function(J,K,ee){if(arguments.length===2&&typeof K=="function"&&(ee=K,K=null),F.open(J,h,!0),y!=null&&!("accept"in I)&&(I.accept=y+",*/*"),F.setRequestHeader)for(var Me in I)F.setRequestHeader(Me,I[Me]);return y!=null&&F.overrideMimeType&&F.overrideMimeType(y),z!=null&&(F.responseType=z),ee!=null&&E.on("error",ee).on("load",function(qe){ee(null,qe)}),L.beforesend.call(E,F),F.send(K==null?null:K),E},E.abort=function(){return F.abort(),E},e.rebind(E,L,"on"),C==null?E:E.get(Gl(C))}function Gl(h){return h.length===1?function(y,w){h(y==null?w:null)}:h}function P5(h){var y=h.responseType;return y&&y!=="text"?h.response:h.responseText}e.dsv=function(h,y){var w=new RegExp('["'+h+` ]`),C=h.charCodeAt(0);function E(X,J,K){arguments.length<3&&(K=J,J=null);var ee=Ul(X,y,J==null?L:I(J),K);return ee.row=function(Me){return arguments.length?ee.response((J=Me)==null?L:I(Me)):J},ee}function L(X){return E.parse(X.responseText)}function I(X){return function(J){return E.parse(J.responseText,X)}}E.parse=function(X,J){var K;return E.parseRows(X,function(ee,Me){if(K)return K(ee,Me-1);var qe=function(ne){for(var he={},we=ee.length,Fe=0;Fe=qe)return ee;if(Fe)return Fe=!1,K;var cr=ne;if(X.charCodeAt(cr)===34){for(var Mr=cr;Mr++24?(isFinite(y)&&(clearTimeout(Do),Do=setTimeout(ks,y)),Ms=0):(Ms=1,wv(ks))}e.timer.flush=function(){Gf(),ad()};function Gf(){for(var h=Date.now(),y=Pi;y;)h>=y.t&&y.c(h-y.t)&&(y.c=null),y=y.n;return h}function ad(){for(var h,y=Pi,w=1/0;y;)y.c?(y.t=0;--F)ne.push(E[X[K[F]][2]]);for(F=+Me;F1&&aa(h[w[C-2]],h[w[C-1]],h[E])<=0;)--C;w[C++]=E}return w.slice(0,C)}function N5(h,y){return h[0]-y[0]||h[1]-y[1]}e.geom.polygon=function(h){return re(h,Av),h};var Av=e.geom.polygon.prototype=[];Av.area=function(){for(var h=-1,y=this.length,w,C=this[y-1],E=0;++hye)F=F.L;else if(I=y-Bm(F,w),I>ye){if(!F.R){C=F;break}F=F.R}else{L>-ye?(C=F.P,E=F):I>-ye?(C=F,E=F.N):C=E=F;break}var z=id(h);if(xo.insert(C,z),!(!C&&!E)){if(C===E){mu(C),E=id(C.site),xo.insert(z,E),z.edge=E.edge=Wf(C.site,z.site),qo(C),qo(E);return}if(!E){z.edge=Wf(C.site,z.site);return}mu(C),mu(E);var X=C.site,J=X.x,K=X.y,ee=h.x-J,Me=h.y-K,qe=E.site,ne=qe.x-J,he=qe.y-K,we=2*(ee*he-Me*ne),Fe=ee*ee+Me*Me,Re=ne*ne+he*he,me={x:(he*Fe-Me*Re)/we+J,y:(ee*Re-ne*Fe)/we+K};yu(E.edge,X,qe,me),z.edge=Wf(X,h,null,me),E.edge=Wf(h,qe,null,me),qo(C),qo(E)}}function od(h,y){var w=h.site,C=w.x,E=w.y,L=E-y;if(!L)return C;var I=h.P;if(!I)return-1/0;w=I.site;var F=w.x,z=w.y,X=z-y;if(!X)return F;var J=F-C,K=1/L-1/X,ee=J/X;return K?(-ee+Math.sqrt(ee*ee-2*K*(J*J/(-2*X)-z+X/2+E-L/2)))/K+C:(C+F)/2}function Bm(h,y){var w=h.N;if(w)return od(w,y);var C=h.site;return C.y===y?C.x:1/0}function ld(h){this.site=h,this.edges=[]}ld.prototype.prepare=function(){for(var h=this.edges,y=h.length,w;y--;)w=h[y].edge,(!w.b||!w.a)&&h.splice(y,1);return h.sort(kv),h.length};function pu(h){for(var y=h[0][0],w=h[1][0],C=h[0][1],E=h[1][1],L,I,F,z,X=sl,J=X.length,K,ee,Me,qe,ne,he;J--;)if(K=X[J],!(!K||!K.prepare()))for(Me=K.edges,qe=Me.length,ee=0;eeye||b(z-I)>ye)&&(Me.splice(ee,0,new Cv(z5(K.site,he,b(F-y)ye?{x:y,y:b(L-y)ye?{x:b(I-E)ye?{x:w,y:b(L-w)ye?{x:b(I-C)=-Ge)){var ee=z*z+X*X,Me=J*J+he*he,qe=(he*ee-X*Me)/K,ne=(z*Me-J*ee)/K,he=ne+F,we=Mv.pop()||new sd;we.arc=h,we.site=E,we.x=qe+I,we.y=he+Math.sqrt(qe*qe+ne*ne),we.cy=he,h.circle=we;for(var Fe=null,Re=Cs._;Re;)if(we.y0)){if(ne/=Me,Me<0){if(ne0){if(ne>ee)return;ne>K&&(K=ne)}if(ne=w-F,!(!Me&&ne<0)){if(ne/=Me,Me<0){if(ne>ee)return;ne>K&&(K=ne)}else if(Me>0){if(ne0)){if(ne/=qe,qe<0){if(ne0){if(ne>ee)return;ne>K&&(K=ne)}if(ne=C-z,!(!qe&&ne<0)){if(ne/=qe,qe<0){if(ne>ee)return;ne>K&&(K=ne)}else if(qe>0){if(ne0&&(E.a={x:F+K*Me,y:z+K*qe}),ee<1&&(E.b={x:F+ee*Me,y:z+ee*qe}),E}}}}}}function O5(h){for(var y=Vl,w=I5(h[0][0],h[0][1],h[1][0],h[1][1]),C=y.length,E;C--;)E=y[C],(!ud(E,h)||!w(E)||b(E.a.x-E.b.x)=L)return;if(J>ee){if(!C)C={x:qe,y:I};else if(C.y>=F)return;w={x:qe,y:F}}else{if(!C)C={x:qe,y:F};else if(C.y1)if(J>ee){if(!C)C={x:(I-we)/he,y:I};else if(C.y>=F)return;w={x:(F-we)/he,y:F}}else{if(!C)C={x:(F-we)/he,y:F};else if(C.y=L)return;w={x:L,y:he*L+we}}else{if(!C)C={x:L,y:he*L+we};else if(C.x=J&&we.x<=ee&&we.y>=K&&we.y<=Me?[[J,Me],[ee,Me],[ee,K],[J,K]]:[];Fe.point=z[ne]}),X}function F(z){return z.map(function(X,J){return{x:Math.round(C(X,J)/ye)*ye,y:Math.round(E(X,J)/ye)*ye,i:J}})}return I.links=function(z){return bu(F(z)).edges.filter(function(X){return X.l&&X.r}).map(function(X){return{source:z[X.l.i],target:z[X.r.i]}})},I.triangles=function(z){var X=[];return bu(F(z)).cells.forEach(function(J,K){for(var ee=J.site,Me=J.edges.sort(kv),qe=-1,ne=Me.length,he,we,Fe=Me[ne-1].edge,Re=Fe.l===ee?Fe.r:Fe.l;++qeRe&&(Re=J.x),J.y>me&&(me=J.y),Me.push(J.x),qe.push(J.y);else for(ne=0;neRe&&(Re=cr),Mr>me&&(me=Mr),Me.push(cr),qe.push(Mr)}var Pr=Re-we,Yr=me-Fe;Pr>Yr?me=Fe+Pr:Re=we+Yr;function it(ct,kt,ha,an,_a,zr,Ft,Ut){if(!(isNaN(ha)||isNaN(an)))if(ct.leaf){var ua=ct.x,Ba=ct.y;if(ua!=null)if(b(ua-ha)+b(Ba-an)<.01)ot(ct,kt,ha,an,_a,zr,Ft,Ut);else{var cn=ct.point;ct.x=ct.y=ct.point=null,ot(ct,cn,ua,Ba,_a,zr,Ft,Ut),ot(ct,kt,ha,an,_a,zr,Ft,Ut)}else ct.x=ha,ct.y=an,ct.point=kt}else ot(ct,kt,ha,an,_a,zr,Ft,Ut)}function ot(ct,kt,ha,an,_a,zr,Ft,Ut){var ua=(_a+Ft)*.5,Ba=(zr+Ut)*.5,cn=ha>=ua,Hn=an>=Ba,Kn=Hn<<1|cn;ct.leaf=!1,ct=ct.nodes[Kn]||(ct.nodes[Kn]=Hm()),cn?_a=ua:Ft=ua,Hn?zr=Ba:Ut=Ba,it(ct,kt,ha,an,_a,zr,Ft,Ut)}var qt=Hm();if(qt.add=function(ct){it(qt,ct,+K(ct,++ne),+ee(ct,ne),we,Fe,Re,me)},qt.visit=function(ct){Zf(ct,qt,we,Fe,Re,me)},qt.find=function(ct){return Vm(qt,ct[0],ct[1],we,Fe,Re,me)},ne=-1,y==null){for(;++neL||ee>I||Me=cr,Yr=w>=Mr,it=Yr<<1|Pr,ot=it+4;itw&&(L=y.slice(w,L),F[I]?F[I]+=L:F[++I]=L),(C=C[0])===(E=E[0])?F[I]?F[I]+=E:F[++I]=E:(F[++I]=null,z.push({i:I,x:ji(C,E)})),w=Lv.lastIndex;return w=0&&!(C=e.interpolators[w](h,y)););return C}e.interpolators=[function(h,y){var w=typeof y;return(w==="string"?Fn.has(y.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(y)?Ls:Xi:y instanceof Xa?Ls:Array.isArray(y)?Jf:w==="object"&&isNaN(y)?Ym:ji)(h,y)}],e.interpolateArray=Jf;function Jf(h,y){var w=[],C=[],E=h.length,L=y.length,I=Math.min(h.length,y.length),F;for(F=0;F=0?h.slice(0,y):h,C=y>=0?h.slice(y+1):"in";return w=Wm.get(w)||fd,C=jm.get(C)||$,V5(C(w.apply(null,r.call(arguments,1))))};function V5(h){return function(y){return y<=0?0:y>=1?1:h(y)}}function Ds(h){return function(y){return 1-h(1-y)}}function Rn(h){return function(y){return .5*(y<.5?h(2*y):2-h(2-2*y))}}function Xm(h){return h*h}function Zm(h){return h*h*h}function qs(h){if(h<=0)return 0;if(h>=1)return 1;var y=h*h,w=y*h;return 4*(h<.5?w:3*(h-y)+w-.75)}function Jm(h){return function(y){return Math.pow(y,h)}}function $m(h){return 1-Math.cos(h*$r)}function Y5(h){return Math.pow(2,10*(h-1))}function W5(h){return 1-Math.sqrt(1-h*h)}function j5(h,y){var w;return arguments.length<2&&(y=.45),arguments.length?w=y/Wr*Math.asin(1/h):(h=1,w=y/4),function(C){return 1+h*Math.pow(2,-10*C)*Math.sin((C-w)*Wr/y)}}function X5(h){return h||(h=1.70158),function(y){return y*y*((h+1)*y-h)}}function cd(h){return h<1/2.75?7.5625*h*h:h<2/2.75?7.5625*(h-=1.5/2.75)*h+.75:h<2.5/2.75?7.5625*(h-=2.25/2.75)*h+.9375:7.5625*(h-=2.625/2.75)*h+.984375}e.interpolateHcl=Qm;function Qm(h,y){h=e.hcl(h),y=e.hcl(y);var w=h.h,C=h.c,E=h.l,L=y.h-w,I=y.c-C,F=y.l-E;return isNaN(I)&&(I=0,C=isNaN(C)?y.c:C),isNaN(L)?(L=0,w=isNaN(w)?y.h:w):L>180?L-=360:L<-180&&(L+=360),function(z){return Wi(w+L*z,C+I*z,E+F*z)+""}}e.interpolateHsl=Z5;function Z5(h,y){h=e.hsl(h),y=e.hsl(y);var w=h.h,C=h.s,E=h.l,L=y.h-w,I=y.s-C,F=y.l-E;return isNaN(I)&&(I=0,C=isNaN(C)?y.s:C),isNaN(L)?(L=0,w=isNaN(w)?y.h:w):L>180?L-=360:L<-180&&(L+=360),function(z){return rn(w+L*z,C+I*z,E+F*z)+""}}e.interpolateLab=Km;function Km(h,y){h=e.lab(h),y=e.lab(y);var w=h.l,C=h.a,E=h.b,L=y.l-w,I=y.a-C,F=y.b-E;return function(z){return _v(w+L*z,C+I*z,E+F*z)+""}}e.interpolateRound=vd;function vd(h,y){return y-=h,function(w){return Math.round(h+y*w)}}e.transform=function(h){var y=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(w){if(w!=null){y.setAttribute("transform",w);var C=y.transform.baseVal.consolidate()}return new ey(C?C.matrix:Dv)})(h)};function ey(h){var y=[h.a,h.b],w=[h.c,h.d],C=ry(y),E=$f(y,w),L=ry(jl(w,y,-E))||0;y[0]*w[1]180?y+=360:y-h>180&&(h+=360),C.push({i:w.push(Fs(w)+"rotate(",null,")")-2,x:ji(h,y)})):y&&w.push(Fs(w)+"rotate("+y+")")}function ny(h,y,w,C){h!==y?C.push({i:w.push(Fs(w)+"skewX(",null,")")-2,x:ji(h,y)}):y&&w.push(Fs(w)+"skewX("+y+")")}function iy(h,y,w,C){if(h[0]!==y[0]||h[1]!==y[1]){var E=w.push(Fs(w)+"scale(",null,",",null,")");C.push({i:E-4,x:ji(h[0],y[0])},{i:E-2,x:ji(h[1],y[1])})}else(y[0]!==1||y[1]!==1)&&w.push(Fs(w)+"scale("+y+")")}function hd(h,y){var w=[],C=[];return h=e.transform(h),y=e.transform(y),ty(h.translate,y.translate,w,C),ay(h.rotate,y.rotate,w,C),ny(h.skew,y.skew,w,C),iy(h.scale,y.scale,w,C),h=y=null,function(E){for(var L=-1,I=C.length,F;++L0?L=me:(w.c=null,w.t=NaN,w=null,y.end({type:"end",alpha:L=0})):me>0&&(y.start({type:"start",alpha:L=me}),w=Ss(h.tick)),h):L},h.start=function(){var me,cr=Me.length,Mr=qe.length,Pr=C[0],Yr=C[1],it,ot;for(me=0;me=0;)L.push(J=X[z]),J.parent=F,J.depth=F.depth+1;w&&(F.value=0),F.children=X}else w&&(F.value=+w.call(C,F,F.depth)||0),delete F.children;return Fo(E,function(K){var ee,Me;h&&(ee=K.children)&&ee.sort(h),w&&(Me=K.parent)&&(Me.value+=K.value)}),I}return C.sort=function(E){return arguments.length?(h=E,C):h},C.children=function(E){return arguments.length?(y=E,C):y},C.value=function(E){return arguments.length?(w=E,C):w},C.revalue=function(E){return w&&(Qf(E,function(L){L.children&&(L.value=0)}),Fo(E,function(L){var I;L.children||(L.value=+w.call(C,L,L.depth)||0),(I=L.parent)&&(I.value+=L.value)})),E},C};function _u(h,y){return e.rebind(h,y,"sort","children","value"),h.nodes=h,h.links=e_,h}function Qf(h,y){for(var w=[h];(h=w.pop())!=null;)if(y(h),(E=h.children)&&(C=E.length))for(var C,E;--C>=0;)w.push(E[C])}function Fo(h,y){for(var w=[h],C=[];(h=w.pop())!=null;)if(C.push(h),(I=h.children)&&(L=I.length))for(var E=-1,L,I;++EE&&(E=F),C.push(F)}for(I=0;IC&&(w=y,C=E);return w}function a_(h){return h.reduce(n_,0)}function n_(h,y){return h+y[1]}e.layout.histogram=function(){var h=!0,y=Number,w=o_,C=i_;function E(L,ee){for(var F=[],z=L.map(y,this),X=w.call(this,z,ee),J=C.call(this,X,z,ee),K,ee=-1,Me=z.length,qe=J.length-1,ne=h?1:1/Me,he;++ee0)for(ee=-1;++ee=X[0]&&he<=X[1]&&(K=F[e.bisect(J,he,1,qe)-1],K.y+=ne,K.push(L[ee]));return F}return E.value=function(L){return arguments.length?(y=L,E):y},E.range=function(L){return arguments.length?(w=Vt(L),E):w},E.bins=function(L){return arguments.length?(C=typeof L=="number"?function(I){return py(I,L)}:Vt(L),E):C},E.frequency=function(L){return arguments.length?(h=!!L,E):h},E};function i_(h,y){return py(h,Math.ceil(Math.log(y.length)/Math.LN2+1))}function py(h,y){for(var w=-1,C=+h[0],E=(h[1]-C)/y,L=[];++w<=y;)L[w]=E*w+C;return L}function o_(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(yd),y=0,w=[1,1],C;function E(L,I){var F=h.call(this,L,I),z=F[0],X=w[0],J=w[1],K=C==null?Math.sqrt:typeof C=="function"?C:function(){return C};if(z.x=z.y=0,Fo(z,function(Me){Me.r=+K(Me.value)}),Fo(z,yy),y){var ee=y*(C?1:Math.max(2*z.r/X,2*z.r/J))/2;Fo(z,function(Me){Me.r+=ee}),Fo(z,yy),Fo(z,function(Me){Me.r-=ee})}return gy(z,X/2,J/2,C?1:1/Math.max(2*z.r/X,2*z.r/J)),F}return E.size=function(L){return arguments.length?(w=L,E):w},E.radius=function(L){return arguments.length?(C=L==null||typeof L=="function"?L:+L,E):C},E.padding=function(L){return arguments.length?(y=+L,E):y},_u(E,h)};function yd(h,y){return h.value-y.value}function gd(h,y){var w=h._pack_next;h._pack_next=y,y._pack_prev=h,y._pack_next=w,w._pack_prev=y}function bd(h,y){h._pack_next=y,y._pack_prev=h}function my(h,y){var w=y.x-h.x,C=y.y-h.y,E=h.r+y.r;return .999*E*E>w*w+C*C}function yy(h){if(!(y=h.children)||!(ee=y.length))return;var y,w=1/0,C=-1/0,E=1/0,L=-1/0,I,F,z,X,J,K,ee;function Me(me){w=Math.min(me.x-me.r,w),C=Math.max(me.x+me.r,C),E=Math.min(me.y-me.r,E),L=Math.max(me.y+me.r,L)}if(y.forEach(l_),I=y[0],I.x=-I.r,I.y=0,Me(I),ee>1&&(F=y[1],F.x=F.r,F.y=0,Me(F),ee>2))for(z=y[2],u_(I,F,z),Me(z),gd(I,z),I._pack_prev=z,gd(z,F),F=I._pack_next,X=3;Xhe.x&&(he=cr),cr.depth>we.depth&&(we=cr)});var Fe=y(ne,he)/2-ne.x,Re=w[0]/(he.x+y(he,ne)/2+Fe),me=w[1]/(we.depth||1);Qf(Me,function(cr){cr.x=(cr.x+Fe)*Re,cr.y=cr.depth*me})}return ee}function L(J){for(var K={A:null,children:[J]},ee=[K],Me;(Me=ee.pop())!=null;)for(var qe=Me.children,ne,he=0,we=qe.length;he0&&(f_(wy(ne,J,ee),J,cr),we+=cr,Fe+=cr),Re+=ne.m,we+=Me.m,me+=he.m,Fe+=qe.m;ne&&!_y(qe)&&(qe.t=ne,qe.m+=Re-Fe),Me&&!xy(he)&&(he.t=Me,he.m+=we-me,ee=J)}return ee}function X(J){J.x*=w[0],J.y=J.depth*w[1]}return E.separation=function(J){return arguments.length?(y=J,E):y},E.size=function(J){return arguments.length?(C=(w=J)==null?X:null,E):C?null:w},E.nodeSize=function(J){return arguments.length?(C=(w=J)==null?null:X,E):C?w:null},_u(E,h)};function by(h,y){return h.parent==y.parent?1:2}function xy(h){var y=h.children;return y.length?y[0]:h.t}function _y(h){var y=h.children,w;return(w=y.length)?y[w-1]:h.t}function f_(h,y,w){var C=w/(y.i-h.i);y.c-=C,y.s+=w,h.c+=C,y.z+=w,y.m+=w}function xd(h){for(var y=0,w=0,C=h.children,E=C.length,L;--E>=0;)L=C[E],L.z+=y,L.m+=y,y+=L.s+(w+=L.c)}function wy(h,y,w){return h.a.parent===y.parent?h.a:w}e.layout.cluster=function(){var h=e.layout.hierarchy().sort(null).value(null),y=by,w=[1,1],C=!1;function E(L,I){var F=h.call(this,L,I),z=F[0],X,J=0;Fo(z,function(ne){var he=ne.children;he&&he.length?(ne.x=Ay(he),ne.y=Ro(he)):(ne.x=X?J+=y(ne,X):0,ne.y=0,X=ne)});var K=Ty(z),ee=My(z),Me=K.x-y(K,ee)/2,qe=ee.x+y(ee,K)/2;return Fo(z,C?function(ne){ne.x=(ne.x-z.x)*w[0],ne.y=(z.y-ne.y)*w[1]}:function(ne){ne.x=(ne.x-Me)/(qe-Me)*w[0],ne.y=(1-(z.y?ne.y/z.y:1))*w[1]}),F}return E.separation=function(L){return arguments.length?(y=L,E):y},E.size=function(L){return arguments.length?(C=(w=L)==null,E):C?null:w},E.nodeSize=function(L){return arguments.length?(C=(w=L)!=null,E):C?w:null},_u(E,h)};function Ro(h){return 1+e.max(h,function(y){return y.y})}function Ay(h){return h.reduce(function(y,w){return y+w.x},0)/h.length}function Ty(h){var y=h.children;return y&&y.length?Ty(y[0]):h}function My(h){var y=h.children,w;return y&&(w=y.length)?My(y[w-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),y=Math.round,w=[1,1],C=null,E=_d,L=!1,I,F="squarify",z=.5*(1+Math.sqrt(5));function X(ne,he){for(var we=-1,Fe=ne.length,Re,me;++we0;)Fe.push(me=Re[Yr-1]),Fe.area+=me.area,F!=="squarify"||(Mr=ee(Fe,Pr))<=cr?(Re.pop(),cr=Mr):(Fe.area-=Fe.pop().area,Me(Fe,Pr,we,!1),Pr=Math.min(we.dx,we.dy),Fe.length=Fe.area=0,cr=1/0);Fe.length&&(Me(Fe,Pr,we,!0),Fe.length=Fe.area=0),he.forEach(J)}}function K(ne){var he=ne.children;if(he&&he.length){var we=E(ne),Fe=he.slice(),Re,me=[];for(X(Fe,we.dx*we.dy/ne.value),me.area=0;Re=Fe.pop();)me.push(Re),me.area+=Re.area,Re.z!=null&&(Me(me,Re.z?we.dx:we.dy,we,!Fe.length),me.length=me.area=0);he.forEach(K)}}function ee(ne,he){for(var we=ne.area,Fe,Re=0,me=1/0,cr=-1,Mr=ne.length;++crRe&&(Re=Fe));return we*=we,he*=he,we?Math.max(he*Re*z/we,we/(he*me*z)):1/0}function Me(ne,he,we,Fe){var Re=-1,me=ne.length,cr=we.x,Mr=we.y,Pr=he?y(ne.area/he):0,Yr;if(he==we.dx){for((Fe||Pr>we.dy)&&(Pr=we.dy);++Rewe.dx)&&(Pr=we.dx);++Re1);return h+y*C*Math.sqrt(-2*Math.log(L)/L)}},logNormal:function(){var h=e.random.normal.apply(e,arguments);return function(){return Math.exp(h())}},bates:function(h){var y=e.random.irwinHall(h);return function(){return y()/h}},irwinHall:function(h){return function(){for(var y=0,w=0;w2?Tu:c_,X=C?ly:oy;return E=z(h,y,X,w),L=z(y,h,X,Wl),F}function F(z){return E(z)}return F.invert=function(z){return L(z)},F.domain=function(z){return arguments.length?(h=z.map(Number),I()):h},F.range=function(z){return arguments.length?(y=z,I()):y},F.rangeRound=function(z){return F.range(z).interpolate(vd)},F.clamp=function(z){return arguments.length?(C=z,I()):C},F.interpolate=function(z){return arguments.length?(w=z,I()):w},F.ticks=function(z){return ec(h,z)},F.tickFormat=function(z,X){return d3_scale_linearTickFormat(h,z,X)},F.nice=function(z){return wd(h,z),I()},F.copy=function(){return ky(h,y,w,C)},I()}function Rs(h,y){return e.rebind(h,y,"range","rangeRound","interpolate","clamp")}function wd(h,y){return wu(h,Pn(Xl(h,y)[2])),wu(h,Pn(Xl(h,y)[2])),h}function Xl(h,y){y==null&&(y=10);var w=Pv(h),C=w[1]-w[0],E=Math.pow(10,Math.floor(Math.log(C/y)/Math.LN10)),L=y/C*E;return L<=.15?E*=10:L<=.35?E*=5:L<=.75&&(E*=2),w[0]=Math.ceil(w[0]/E)*E,w[1]=Math.floor(w[1]/E)*E+E*.5,w[2]=E,w}function ec(h,y){return e.range.apply(e,Xl(h,y))}var Ad={s:1,g:1,p:1,r:1,e:1};function Iv(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function Cy(h,y){var w=Iv(y[2]);return h in Ad?Math.abs(w-Iv(Math.max(b(y[0]),b(y[1]))))+ +(h!=="e"):w-(h==="%")*2}e.scale.log=function(){return Ov(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Ov(h,y,w,C){function E(F){return(w?Math.log(F<0?0:F):-Math.log(F>0?0:-F))/Math.log(y)}function L(F){return w?Math.pow(y,F):-Math.pow(y,-F)}function I(F){return h(E(F))}return I.invert=function(F){return L(h.invert(F))},I.domain=function(F){return arguments.length?(w=F[0]>=0,h.domain((C=F.map(Number)).map(E)),I):C},I.base=function(F){return arguments.length?(y=+F,h.domain(C.map(E)),I):y},I.nice=function(){var F=wu(C.map(E),w?Math:zv);return h.domain(F),C=F.map(L),I},I.ticks=function(){var F=Pv(C),z=[],X=F[0],J=F[1],K=Math.floor(E(X)),ee=Math.ceil(E(J)),Me=y%1?2:y;if(isFinite(ee-K)){if(w){for(;K0;qe--)z.push(L(K)*qe);for(K=0;z[K]J;ee--);z=z.slice(K,ee)}return z},I.copy=function(){return Ov(h.copy(),y,w,C)},Rs(I,h)}var zv={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return Td(e.scale.linear(),1,[0,1])};function Td(h,y,w){var C=rc(y),E=rc(1/y);function L(I){return h(C(I))}return L.invert=function(I){return E(h.invert(I))},L.domain=function(I){return arguments.length?(h.domain((w=I.map(Number)).map(C)),L):w},L.ticks=function(I){return ec(w,I)},L.tickFormat=function(I,F){return d3_scale_linearTickFormat(w,I,F)},L.nice=function(I){return L.domain(wd(w,I))},L.exponent=function(I){return arguments.length?(C=rc(y=I),E=rc(1/y),h.domain(w.map(C)),L):y},L.copy=function(){return Td(h.copy(),y,w)},Rs(L,h)}function rc(h){return function(y){return y<0?-Math.pow(-y,h):Math.pow(y,h)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Md([],{t:"range",a:[[]]})};function Md(h,y){var w,C,E;function L(F){return C[((w.get(F)||(y.t==="range"?w.set(F,h.push(F)):NaN))-1)%C.length]}function I(F,z){return e.range(h.length).map(function(X){return F+z*X})}return L.domain=function(F){if(!arguments.length)return h;h=[],w=new x;for(var z=-1,X=F.length,J;++z0?w[L-1]:h[0],Lee?0:1;if(J=tt)return z(J,qe)+(X?z(X,1-qe):"")+"Z";var ne,he,we,Fe,Re=0,me=0,cr,Mr,Pr,Yr,it,ot,qt,ct,kt=[];if((Fe=(+I.apply(this,arguments)||0)/2)&&(we=C===tc?Math.sqrt(X*X+J*J):+C.apply(this,arguments),qe||(me*=-1),J&&(me=Ln(we/J*Math.sin(Fe))),X&&(Re=Ln(we/X*Math.sin(Fe)))),J){cr=J*Math.cos(K+me),Mr=J*Math.sin(K+me),Pr=J*Math.cos(ee-me),Yr=J*Math.sin(ee-me);var ha=Math.abs(ee-K-2*me)<=Ie?0:1;if(me&&ac(cr,Mr,Pr,Yr)===qe^ha){var an=(K+ee)/2;cr=J*Math.cos(an),Mr=J*Math.sin(an),Pr=Yr=null}}else cr=Mr=0;if(X){it=X*Math.cos(ee-Re),ot=X*Math.sin(ee-Re),qt=X*Math.cos(K+Re),ct=X*Math.sin(K+Re);var _a=Math.abs(K-ee+2*Re)<=Ie?0:1;if(Re&&ac(it,ot,qt,ct)===1-qe^_a){var zr=(K+ee)/2;it=X*Math.cos(zr),ot=X*Math.sin(zr),qt=ct=null}}else it=ot=0;if(Me>ye&&(ne=Math.min(Math.abs(J-X)/2,+w.apply(this,arguments)))>.001){he=X0?0:1}function nc(h,y,w,C,E){var L=h[0]-y[0],I=h[1]-y[1],F=(E?C:-C)/Math.sqrt(L*L+I*I),z=F*I,X=-F*L,J=h[0]+z,K=h[1]+X,ee=y[0]+z,Me=y[1]+X,qe=(J+ee)/2,ne=(K+Me)/2,he=ee-J,we=Me-K,Fe=he*he+we*we,Re=w-C,me=J*Me-ee*K,cr=(we<0?-1:1)*Math.sqrt(Math.max(0,Re*Re*Fe-me*me)),Mr=(me*we-he*cr)/Fe,Pr=(-me*he-we*cr)/Fe,Yr=(me*we+he*cr)/Fe,it=(-me*he+we*cr)/Fe,ot=Mr-qe,qt=Pr-ne,ct=Yr-qe,kt=it-ne;return ot*ot+qt*qt>ct*ct+kt*kt&&(Mr=Yr,Pr=it),[[Mr-z,Pr-X],[Mr*w/Re,Pr*w/Re]]}function Uv(){return!0}function Nd(h){var y=Hl,w=du,C=Uv,E=Ni,L=E.key,I=.7;function F(z){var X=[],J=[],K=-1,ee=z.length,Me,qe=Vt(y),ne=Vt(w);function he(){X.push("M",E(h(J),I))}for(;++K1?h.join("L"):h+"Z"}function Hv(h){return h.join("L")+"Z"}function ic(h){for(var y=0,w=h.length,C=h[0],E=[C[0],",",C[1]];++y1&&E.push("H",C[0]),E.join("")}function Vv(h){for(var y=0,w=h.length,C=h[0],E=[C[0],",",C[1]];++y1){F=y[1],L=h[z],z++,C+="C"+(E[0]+I[0])+","+(E[1]+I[1])+","+(L[0]-F[0])+","+(L[1]-F[1])+","+L[0]+","+L[1];for(var X=2;X9&&(L=w*3/Math.sqrt(L),I[F]=L*C,I[F+1]=L*E));for(F=-1;++F<=z;)L=(h[Math.min(z,F+1)][0]-h[Math.max(0,F-1)][0])/(6*(1+I[F]*I[F])),y.push([L||0,I[F]*L||0]);return y}function qy(h){return h.length<3?Ni(h):h[0]+Ps(h,h_(h))}e.svg.line.radial=function(){var h=Nd(Od);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function Od(h){for(var y,w=-1,C=h.length,E,L;++wIe)+",1 "+K}function X(J,K,ee,Me){return"Q 0,0 "+Me}return L.radius=function(J){return arguments.length?(w=Vt(J),L):w},L.source=function(J){return arguments.length?(h=Vt(J),L):h},L.target=function(J){return arguments.length?(y=Vt(J),L):y},L.startAngle=function(J){return arguments.length?(C=Vt(J),L):C},L.endAngle=function(J){return arguments.length?(E=Vt(J),L):E},L};function Bd(h){return h.radius}e.svg.diagonal=function(){var h=Fy,y=Is,w=Ry;function C(E,L){var I=h.call(this,E,L),F=y.call(this,E,L),z=(I.y+F.y)/2,X=[I,{x:I.x,y:z},{x:F.x,y:z},F];return X=X.map(w),"M"+X[0]+"C"+X[1]+" "+X[2]+" "+X[3]}return C.source=function(E){return arguments.length?(h=Vt(E),C):h},C.target=function(E){return arguments.length?(y=Vt(E),C):y},C.projection=function(E){return arguments.length?(w=E,C):w},C};function Ry(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),y=Ry,w=h.projection;return h.projection=function(C){return arguments.length?w(d_(y=C)):y},h};function d_(h){return function(){var y=h.apply(this,arguments),w=y[0],C=y[1]-$r;return[w*Math.cos(C),w*Math.sin(C)]}}e.svg.symbol=function(){var h=m_,y=p_;function w(C,E){return(Ny.get(h.call(this,C,E))||Py)(y.call(this,C,E))}return w.type=function(C){return arguments.length?(h=Vt(C),w):h},w.size=function(C){return arguments.length?(y=Vt(C),w):y},w};function p_(){return 64}function m_(){return"circle"}function Py(h){var y=Math.sqrt(h/Ie);return"M0,"+y+"A"+y+","+y+" 0 1,1 0,"+-y+"A"+y+","+y+" 0 1,1 0,"+y+"Z"}var Ny=e.map({circle:Py,cross:function(h){var y=Math.sqrt(h/5)/2;return"M"+-3*y+","+-y+"H"+-y+"V"+-3*y+"H"+y+"V"+-y+"H"+3*y+"V"+y+"H"+y+"V"+3*y+"H"+-y+"V"+y+"H"+-3*y+"Z"},diamond:function(h){var y=Math.sqrt(h/(2*Iy)),w=y*Iy;return"M0,"+-y+"L"+w+",0 0,"+y+" "+-w+",0Z"},square:function(h){var y=Math.sqrt(h)/2;return"M"+-y+","+-y+"L"+y+","+-y+" "+y+","+y+" "+-y+","+y+"Z"},"triangle-down":function(h){var y=Math.sqrt(h/jv),w=y*jv/2;return"M0,"+w+"L"+y+","+-w+" "+-y+","+-w+"Z"},"triangle-up":function(h){var y=Math.sqrt(h/jv),w=y*jv/2;return"M0,"+-w+"L"+y+","+w+" "+-y+","+w+"Z"}});e.svg.symbolTypes=Ny.keys();var jv=Math.sqrt(3),Iy=Math.tan(30*St);Ce.transition=function(h){for(var y=$l||++Zv,w=Jv(h),C=[],E,L,I=Lu||{time:Date.now(),ease:qs,delay:0,duration:250},F=-1,z=this.length;++F0;)K[--Fe].call(h,we);if(he>=1)return I.event&&I.event.end.call(h,h.__data__,y),--L.count?delete L[C]:delete h[w],1}I||(F=E.time,z=Ss(ee,0,F),I=L[C]={tween:new x,time:F,timer:z,delay:E.delay,duration:E.duration,ease:E.ease,index:y},E=null,++L.count)}e.svg.axis=function(){var h=e.scale.linear(),y=$v,w=6,C=6,E=3,L=[10],I=null,F;function z(X){X.each(function(){var J=e.select(this),K=this.__chart__||h,ee=this.__chart__=h.copy(),Me=I==null?ee.ticks?ee.ticks.apply(ee,L):ee.domain():I,qe=F==null?ee.tickFormat?ee.tickFormat.apply(ee,L):$:F,ne=J.selectAll(".tick").data(Me,ee),he=ne.enter().insert("g",".domain").attr("class","tick").style("opacity",ye),we=e.transition(ne.exit()).style("opacity",ye).remove(),Fe=e.transition(ne.order()).style("opacity",1),Re=Math.max(w,0)+E,me,cr=Nv(ee),Mr=J.selectAll(".domain").data([0]),Pr=(Mr.enter().append("path").attr("class","domain"),e.transition(Mr));he.append("line"),he.append("text");var Yr=he.select("line"),it=Fe.select("line"),ot=ne.select("text").text(qe),qt=he.select("text"),ct=Fe.select("text"),kt=y==="top"||y==="left"?-1:1,ha,an,_a,zr;if(y==="bottom"||y==="top"?(me=Vd,ha="x",_a="y",an="x2",zr="y2",ot.attr("dy",kt<0?"0em":".71em").style("text-anchor","middle"),Pr.attr("d","M"+cr[0]+","+kt*C+"V0H"+cr[1]+"V"+kt*C)):(me=Yd,ha="y",_a="x",an="y2",zr="x2",ot.attr("dy",".32em").style("text-anchor",kt<0?"end":"start"),Pr.attr("d","M"+kt*C+","+cr[0]+"H0V"+cr[1]+"H"+kt*C)),Yr.attr(zr,kt*w),qt.attr(_a,kt*Re),it.attr(an,0).attr(zr,kt*w),ct.attr(ha,0).attr(_a,kt*Re),ee.rangeBand){var Ft=ee,Ut=Ft.rangeBand()/2;K=ee=function(ua){return Ft(ua)+Ut}}else K.rangeBand?K=ee:we.call(me,ee,K);he.call(me,K,ee),Fe.call(me,ee,ee)})}return z.scale=function(X){return arguments.length?(h=X,z):h},z.orient=function(X){return arguments.length?(y=X in Hd?X+"":$v,z):y},z.ticks=function(){return arguments.length?(L=t(arguments),z):L},z.tickValues=function(X){return arguments.length?(I=X,z):I},z.tickFormat=function(X){return arguments.length?(F=X,z):F},z.tickSize=function(X){var J=arguments.length;return J?(w=+X,C=+arguments[J-1],z):w},z.innerTickSize=function(X){return arguments.length?(w=+X,z):w},z.outerTickSize=function(X){return arguments.length?(C=+X,z):C},z.tickPadding=function(X){return arguments.length?(E=+X,z):E},z.tickSubdivide=function(){return arguments.length&&z},z};var $v="bottom",Hd={top:1,right:1,bottom:1,left:1};function Vd(h,y,w){h.attr("transform",function(C){var E=y(C);return"translate("+(isFinite(E)?E:w(C))+",0)"})}function Yd(h,y,w){h.attr("transform",function(C){var E=y(C);return"translate(0,"+(isFinite(E)?E:w(C))+")"})}e.svg.brush=function(){var h=se(J,"brushstart","brush","brushend"),y=null,w=null,C=[0,0],E=[0,0],L,I,F=!0,z=!0,X=sc[0];function J(ne){ne.each(function(){var he=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",qe).on("touchstart.brush",qe),we=he.selectAll(".background").data([0]);we.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),he.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Fe=he.selectAll(".resize").data(X,$);Fe.exit().remove(),Fe.enter().append("g").attr("class",function(Mr){return"resize "+Mr}).style("cursor",function(Mr){return Wd[Mr]}).append("rect").attr("x",function(Mr){return/[ew]$/.test(Mr)?-3:null}).attr("y",function(Mr){return/^[ns]/.test(Mr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Fe.style("display",J.empty()?"none":null);var Re=e.transition(he),me=e.transition(we),cr;y&&(cr=Nv(y),me.attr("x",cr[0]).attr("width",cr[1]-cr[0]),ee(Re)),w&&(cr=Nv(w),me.attr("y",cr[0]).attr("height",cr[1]-cr[0]),Me(Re)),K(Re)})}J.event=function(ne){ne.each(function(){var he=h.of(this,arguments),we={x:C,y:E,i:L,j:I},Fe=this.__chart__||we;this.__chart__=we,$l?e.select(this).transition().each("start.brush",function(){L=Fe.i,I=Fe.j,C=Fe.x,E=Fe.y,he({type:"brushstart"})}).tween("brush:brush",function(){var Re=Jf(C,we.x),me=Jf(E,we.y);return L=I=null,function(cr){C=we.x=Re(cr),E=we.y=me(cr),he({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=we.i,I=we.j,he({type:"brush",mode:"resize"}),he({type:"brushend"})}):(he({type:"brushstart"}),he({type:"brush",mode:"resize"}),he({type:"brushend"}))})};function K(ne){ne.selectAll(".resize").attr("transform",function(he){return"translate("+C[+/e$/.test(he)]+","+E[+/^s/.test(he)]+")"})}function ee(ne){ne.select(".extent").attr("x",C[0]),ne.selectAll(".extent,.n>rect,.s>rect").attr("width",C[1]-C[0])}function Me(ne){ne.select(".extent").attr("y",E[0]),ne.selectAll(".extent,.e>rect,.w>rect").attr("height",E[1]-E[0])}function qe(){var ne=this,he=e.select(e.event.target),we=h.of(ne,arguments),Fe=e.select(ne),Re=he.datum(),me=!/^(n|s)$/.test(Re)&&y,cr=!/^(e|w)$/.test(Re)&&w,Mr=he.classed("extent"),Pr=Ir(ne),Yr,it=e.mouse(ne),ot,qt=e.select(i(ne)).on("keydown.brush",ha).on("keyup.brush",an);if(e.event.changedTouches?qt.on("touchmove.brush",_a).on("touchend.brush",Ft):qt.on("mousemove.brush",_a).on("mouseup.brush",Ft),Fe.interrupt().selectAll("*").interrupt(),Mr)it[0]=C[0]-it[0],it[1]=E[0]-it[1];else if(Re){var ct=+/w$/.test(Re),kt=+/^n/.test(Re);ot=[C[1-ct]-it[0],E[1-kt]-it[1]],it[0]=C[ct],it[1]=E[kt]}else e.event.altKey&&(Yr=it.slice());Fe.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",he.style("cursor")),we({type:"brushstart"}),_a();function ha(){e.event.keyCode==32&&(Mr||(Yr=null,it[0]-=C[1],it[1]-=E[1],Mr=2),ve())}function an(){e.event.keyCode==32&&Mr==2&&(it[0]+=C[1],it[1]+=E[1],Mr=0,ve())}function _a(){var Ut=e.mouse(ne),ua=!1;ot&&(Ut[0]+=ot[0],Ut[1]+=ot[1]),Mr||(e.event.altKey?(Yr||(Yr=[(C[0]+C[1])/2,(E[0]+E[1])/2]),it[0]=C[+(Ut[0]{(function(e,r){typeof Gy=="object"&&typeof gM!="undefined"?r(Gy):(e=e||self,r(e.d3=e.d3||{}))})(Gy,function(e){"use strict";var r=new Date,t=new Date;function a(de,Oe,Ue,rt){function Ur(Ye){return de(Ye=arguments.length===0?new Date:new Date(+Ye)),Ye}return Ur.floor=function(Ye){return de(Ye=new Date(+Ye)),Ye},Ur.ceil=function(Ye){return de(Ye=new Date(Ye-1)),Oe(Ye,1),de(Ye),Ye},Ur.round=function(Ye){var Ve=Ur(Ye),pr=Ur.ceil(Ye);return Ye-Ve0))return Tr;do Tr.push(mr=new Date(+Ye)),Oe(Ye,pr),de(Ye);while(mr=Ve)for(;de(Ve),!Ye(Ve);)Ve.setTime(Ve-1)},function(Ve,pr){if(Ve>=Ve)if(pr<0)for(;++pr<=0;)for(;Oe(Ve,-1),!Ye(Ve););else for(;--pr>=0;)for(;Oe(Ve,1),!Ye(Ve););})},Ue&&(Ur.count=function(Ye,Ve){return r.setTime(+Ye),t.setTime(+Ve),de(r),de(t),Math.floor(Ue(r,t))},Ur.every=function(Ye){return Ye=Math.floor(Ye),!isFinite(Ye)||!(Ye>0)?null:Ye>1?Ur.filter(rt?function(Ve){return rt(Ve)%Ye===0}:function(Ve){return Ur.count(0,Ve)%Ye===0}):Ur}),Ur}var n=a(function(){},function(de,Oe){de.setTime(+de+Oe)},function(de,Oe){return Oe-de});n.every=function(de){return de=Math.floor(de),!isFinite(de)||!(de>0)?null:de>1?a(function(Oe){Oe.setTime(Math.floor(Oe/de)*de)},function(Oe,Ue){Oe.setTime(+Oe+Ue*de)},function(Oe,Ue){return(Ue-Oe)/de}):n};var i=n.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,c=a(function(de){de.setTime(de-de.getMilliseconds())},function(de,Oe){de.setTime(+de+Oe*o)},function(de,Oe){return(Oe-de)/o},function(de){return de.getUTCSeconds()}),v=c.range,d=a(function(de){de.setTime(de-de.getMilliseconds()-de.getSeconds()*o)},function(de,Oe){de.setTime(+de+Oe*l)},function(de,Oe){return(Oe-de)/l},function(de){return de.getMinutes()}),p=d.range,g=a(function(de){de.setTime(de-de.getMilliseconds()-de.getSeconds()*o-de.getMinutes()*l)},function(de,Oe){de.setTime(+de+Oe*s)},function(de,Oe){return(Oe-de)/s},function(de){return de.getHours()}),m=g.range,b=a(function(de){de.setHours(0,0,0,0)},function(de,Oe){de.setDate(de.getDate()+Oe)},function(de,Oe){return(Oe-de-(Oe.getTimezoneOffset()-de.getTimezoneOffset())*l)/u},function(de){return de.getDate()-1}),_=b.range;function A(de){return a(function(Oe){Oe.setDate(Oe.getDate()-(Oe.getDay()+7-de)%7),Oe.setHours(0,0,0,0)},function(Oe,Ue){Oe.setDate(Oe.getDate()+Ue*7)},function(Oe,Ue){return(Ue-Oe-(Ue.getTimezoneOffset()-Oe.getTimezoneOffset())*l)/f})}var x=A(0),T=A(1),S=A(2),M=A(3),k=A(4),D=A(5),P=A(6),N=x.range,q=T.range,O=S.range,U=M.range,$=k.range,W=D.range,H=P.range,B=a(function(de){de.setDate(1),de.setHours(0,0,0,0)},function(de,Oe){de.setMonth(de.getMonth()+Oe)},function(de,Oe){return Oe.getMonth()-de.getMonth()+(Oe.getFullYear()-de.getFullYear())*12},function(de){return de.getMonth()}),V=B.range,j=a(function(de){de.setMonth(0,1),de.setHours(0,0,0,0)},function(de,Oe){de.setFullYear(de.getFullYear()+Oe)},function(de,Oe){return Oe.getFullYear()-de.getFullYear()},function(de){return de.getFullYear()});j.every=function(de){return!isFinite(de=Math.floor(de))||!(de>0)?null:a(function(Oe){Oe.setFullYear(Math.floor(Oe.getFullYear()/de)*de),Oe.setMonth(0,1),Oe.setHours(0,0,0,0)},function(Oe,Ue){Oe.setFullYear(Oe.getFullYear()+Ue*de)})};var Q=j.range,ve=a(function(de){de.setUTCSeconds(0,0)},function(de,Oe){de.setTime(+de+Oe*l)},function(de,Oe){return(Oe-de)/l},function(de){return de.getUTCMinutes()}),xe=ve.range,se=a(function(de){de.setUTCMinutes(0,0,0)},function(de,Oe){de.setTime(+de+Oe*s)},function(de,Oe){return(Oe-de)/s},function(de){return de.getUTCHours()}),be=se.range,re=a(function(de){de.setUTCHours(0,0,0,0)},function(de,Oe){de.setUTCDate(de.getUTCDate()+Oe)},function(de,Oe){return(Oe-de)/u},function(de){return de.getUTCDate()-1}),ke=re.range;function ge(de){return a(function(Oe){Oe.setUTCDate(Oe.getUTCDate()-(Oe.getUTCDay()+7-de)%7),Oe.setUTCHours(0,0,0,0)},function(Oe,Ue){Oe.setUTCDate(Oe.getUTCDate()+Ue*7)},function(Oe,Ue){return(Ue-Oe)/f})}var Ee=ge(0),De=ge(1),Ce=ge(2),Y=ge(3),ae=ge(4),Z=ge(5),Te=ge(6),Pe=Ee.range,Ne=De.range,lr=Ce.range,Qe=Y.range,Je=ae.range,or=Z.range,yr=Te.range,ir=a(function(de){de.setUTCDate(1),de.setUTCHours(0,0,0,0)},function(de,Oe){de.setUTCMonth(de.getUTCMonth()+Oe)},function(de,Oe){return Oe.getUTCMonth()-de.getUTCMonth()+(Oe.getUTCFullYear()-de.getUTCFullYear())*12},function(de){return de.getUTCMonth()}),Xe=ir.range,Lr=a(function(de){de.setUTCMonth(0,1),de.setUTCHours(0,0,0,0)},function(de,Oe){de.setUTCFullYear(de.getUTCFullYear()+Oe)},function(de,Oe){return Oe.getUTCFullYear()-de.getUTCFullYear()},function(de){return de.getUTCFullYear()});Lr.every=function(de){return!isFinite(de=Math.floor(de))||!(de>0)?null:a(function(Oe){Oe.setUTCFullYear(Math.floor(Oe.getUTCFullYear()/de)*de),Oe.setUTCMonth(0,1),Oe.setUTCHours(0,0,0,0)},function(Oe,Ue){Oe.setUTCFullYear(Oe.getUTCFullYear()+Ue*de)})};var Ar=Lr.range;e.timeDay=b,e.timeDays=_,e.timeFriday=D,e.timeFridays=W,e.timeHour=g,e.timeHours=m,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=T,e.timeMondays=q,e.timeMonth=B,e.timeMonths=V,e.timeSaturday=P,e.timeSaturdays=H,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=x,e.timeSundays=N,e.timeThursday=k,e.timeThursdays=$,e.timeTuesday=S,e.timeTuesdays=O,e.timeWednesday=M,e.timeWednesdays=U,e.timeWeek=x,e.timeWeeks=N,e.timeYear=j,e.timeYears=Q,e.utcDay=re,e.utcDays=ke,e.utcFriday=Z,e.utcFridays=or,e.utcHour=se,e.utcHours=be,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ve,e.utcMinutes=xe,e.utcMonday=De,e.utcMondays=Ne,e.utcMonth=ir,e.utcMonths=Xe,e.utcSaturday=Te,e.utcSaturdays=yr,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=Ee,e.utcSundays=Pe,e.utcThursday=ae,e.utcThursdays=Je,e.utcTuesday=Ce,e.utcTuesdays=lr,e.utcWednesday=Y,e.utcWednesdays=Qe,e.utcWeek=Ee,e.utcWeeks=Pe,e.utcYear=Lr,e.utcYears=Ar,Object.defineProperty(e,"__esModule",{value:!0})})});var Kv=R((Hy,bM)=>{(function(e,r){typeof Hy=="object"&&typeof bM!="undefined"?r(Hy,y_()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(Hy,function(e,r){"use strict";function t(oe){if(0<=oe.y&&oe.y<100){var ye=new Date(-1,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L);return ye.setFullYear(oe.y),ye}return new Date(oe.y,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L)}function a(oe){if(0<=oe.y&&oe.y<100){var ye=new Date(Date.UTC(-1,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L));return ye.setUTCFullYear(oe.y),ye}return new Date(Date.UTC(oe.y,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L))}function n(oe,ye,Ge){return{y:oe,m:ye,d:Ge,H:0,M:0,S:0,L:0}}function i(oe){var ye=oe.dateTime,Ge=oe.date,Ie=oe.time,Wr=oe.periods,tt=oe.days,$r=oe.shortDays,St=oe.months,ea=oe.shortMonths,ma=v(Wr),aa=d(Wr),en=v(tt),Ln=d(tt),si=v($r),Dn=d($r),Vi=v(St),Bn=d(St),qn=v(ea),yi=d(ea),_t={a:_s,A:ws,b:Bl,B:_v,c:null,d:B,e:B,f:xe,H:V,I:j,j:Q,L:ve,m:se,M:be,p:As,q:Bf,Q:Ve,s:pr,S:re,u:ke,U:ge,V:Ee,w:De,W:Ce,x:null,X:null,y:Y,Y:ae,Z,"%":Ye},Ma={a:Uf,A:ol,b:ui,B:ll,c:null,d:Te,e:Te,f:Je,H:Pe,I:Ne,j:lr,L:Qe,m:or,M:yr,p:Ts,q:go,Q:Ve,s:pr,S:ir,u:Xe,U:Lr,V:Ar,w:de,W:Oe,x:null,X:null,y:Ue,Y:rt,Z:Ur,"%":Ye},ra={a:rn,A:on,b:Yi,B:Wi,c:xn,d:k,e:k,f:U,H:P,I:P,j:D,L:O,m:M,M:N,p:La,q:S,Q:W,s:H,S:q,u:g,U:m,V:b,w:p,W:_,x:Aa,X:Un,y:x,Y:A,Z:T,"%":$};_t.x=Ra(Ge,_t),_t.X=Ra(Ie,_t),_t.c=Ra(ye,_t),Ma.x=Ra(Ge,Ma),Ma.X=Ra(Ie,Ma),Ma.c=Ra(ye,Ma);function Ra(yt,jt){return function(va){var jr=[],Gn=-1,Ea=0,Fn=yt.length,Vt,bo,Ul;for(va instanceof Date||(va=new Date(+va));++Gn53)return null;"w"in jr||(jr.w=1),"Z"in jr?(Ea=a(n(jr.y,0,1)),Fn=Ea.getUTCDay(),Ea=Fn>4||Fn===0?r.utcMonday.ceil(Ea):r.utcMonday(Ea),Ea=r.utcDay.offset(Ea,(jr.V-1)*7),jr.y=Ea.getUTCFullYear(),jr.m=Ea.getUTCMonth(),jr.d=Ea.getUTCDate()+(jr.w+6)%7):(Ea=t(n(jr.y,0,1)),Fn=Ea.getDay(),Ea=Fn>4||Fn===0?r.timeMonday.ceil(Ea):r.timeMonday(Ea),Ea=r.timeDay.offset(Ea,(jr.V-1)*7),jr.y=Ea.getFullYear(),jr.m=Ea.getMonth(),jr.d=Ea.getDate()+(jr.w+6)%7)}else("W"in jr||"U"in jr)&&("w"in jr||(jr.w="u"in jr?jr.u%7:"W"in jr?1:0),Fn="Z"in jr?a(n(jr.y,0,1)).getUTCDay():t(n(jr.y,0,1)).getDay(),jr.m=0,jr.d="W"in jr?(jr.w+6)%7+jr.W*7-(Fn+5)%7:jr.w+jr.U*7-(Fn+6)%7);return"Z"in jr?(jr.H+=jr.Z/100|0,jr.M+=jr.Z%100,a(jr)):t(jr)}}function Sa(yt,jt,va,jr){for(var Gn=0,Ea=jt.length,Fn=va.length,Vt,bo;Gn=Fn)return-1;if(Vt=jt.charCodeAt(Gn++),Vt===37){if(Vt=jt.charAt(Gn++),bo=ra[Vt in o?jt.charAt(Gn++):Vt],!bo||(jr=bo(yt,va,jr))<0)return-1}else if(Vt!=va.charCodeAt(jr++))return-1}return jr}function La(yt,jt,va){var jr=ma.exec(jt.slice(va));return jr?(yt.p=aa[jr[0].toLowerCase()],va+jr[0].length):-1}function rn(yt,jt,va){var jr=si.exec(jt.slice(va));return jr?(yt.w=Dn[jr[0].toLowerCase()],va+jr[0].length):-1}function on(yt,jt,va){var jr=en.exec(jt.slice(va));return jr?(yt.w=Ln[jr[0].toLowerCase()],va+jr[0].length):-1}function Yi(yt,jt,va){var jr=qn.exec(jt.slice(va));return jr?(yt.m=yi[jr[0].toLowerCase()],va+jr[0].length):-1}function Wi(yt,jt,va){var jr=Vi.exec(jt.slice(va));return jr?(yt.m=Bn[jr[0].toLowerCase()],va+jr[0].length):-1}function xn(yt,jt,va){return Sa(yt,ye,jt,va)}function Aa(yt,jt,va){return Sa(yt,Ge,jt,va)}function Un(yt,jt,va){return Sa(yt,Ie,jt,va)}function _s(yt){return $r[yt.getDay()]}function ws(yt){return tt[yt.getDay()]}function Bl(yt){return ea[yt.getMonth()]}function _v(yt){return St[yt.getMonth()]}function As(yt){return Wr[+(yt.getHours()>=12)]}function Bf(yt){return 1+~~(yt.getMonth()/3)}function Uf(yt){return $r[yt.getUTCDay()]}function ol(yt){return tt[yt.getUTCDay()]}function ui(yt){return ea[yt.getUTCMonth()]}function ll(yt){return St[yt.getUTCMonth()]}function Ts(yt){return Wr[+(yt.getUTCHours()>=12)]}function go(yt){return 1+~~(yt.getUTCMonth()/3)}return{format:function(yt){var jt=Ra(yt+="",_t);return jt.toString=function(){return yt},jt},parse:function(yt){var jt=Xa(yt+="",!1);return jt.toString=function(){return yt},jt},utcFormat:function(yt){var jt=Ra(yt+="",Ma);return jt.toString=function(){return yt},jt},utcParse:function(yt){var jt=Xa(yt+="",!0);return jt.toString=function(){return yt},jt}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(oe,ye,Ge){var Ie=oe<0?"-":"",Wr=(Ie?-oe:oe)+"",tt=Wr.length;return Ie+(tt68?1900:2e3),Ge+Ie[0].length):-1}function T(oe,ye,Ge){var Ie=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ye.slice(Ge,Ge+6));return Ie?(oe.Z=Ie[1]?0:-(Ie[2]+(Ie[3]||"00")),Ge+Ie[0].length):-1}function S(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+1));return Ie?(oe.q=Ie[0]*3-3,Ge+Ie[0].length):-1}function M(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.m=Ie[0]-1,Ge+Ie[0].length):-1}function k(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.d=+Ie[0],Ge+Ie[0].length):-1}function D(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+3));return Ie?(oe.m=0,oe.d=+Ie[0],Ge+Ie[0].length):-1}function P(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.H=+Ie[0],Ge+Ie[0].length):-1}function N(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.M=+Ie[0],Ge+Ie[0].length):-1}function q(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.S=+Ie[0],Ge+Ie[0].length):-1}function O(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+3));return Ie?(oe.L=+Ie[0],Ge+Ie[0].length):-1}function U(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+6));return Ie?(oe.L=Math.floor(Ie[0]/1e3),Ge+Ie[0].length):-1}function $(oe,ye,Ge){var Ie=s.exec(ye.slice(Ge,Ge+1));return Ie?Ge+Ie[0].length:-1}function W(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge));return Ie?(oe.Q=+Ie[0],Ge+Ie[0].length):-1}function H(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge));return Ie?(oe.s=+Ie[0],Ge+Ie[0].length):-1}function B(oe,ye){return f(oe.getDate(),ye,2)}function V(oe,ye){return f(oe.getHours(),ye,2)}function j(oe,ye){return f(oe.getHours()%12||12,ye,2)}function Q(oe,ye){return f(1+r.timeDay.count(r.timeYear(oe),oe),ye,3)}function ve(oe,ye){return f(oe.getMilliseconds(),ye,3)}function xe(oe,ye){return ve(oe,ye)+"000"}function se(oe,ye){return f(oe.getMonth()+1,ye,2)}function be(oe,ye){return f(oe.getMinutes(),ye,2)}function re(oe,ye){return f(oe.getSeconds(),ye,2)}function ke(oe){var ye=oe.getDay();return ye===0?7:ye}function ge(oe,ye){return f(r.timeSunday.count(r.timeYear(oe)-1,oe),ye,2)}function Ee(oe,ye){var Ge=oe.getDay();return oe=Ge>=4||Ge===0?r.timeThursday(oe):r.timeThursday.ceil(oe),f(r.timeThursday.count(r.timeYear(oe),oe)+(r.timeYear(oe).getDay()===4),ye,2)}function De(oe){return oe.getDay()}function Ce(oe,ye){return f(r.timeMonday.count(r.timeYear(oe)-1,oe),ye,2)}function Y(oe,ye){return f(oe.getFullYear()%100,ye,2)}function ae(oe,ye){return f(oe.getFullYear()%1e4,ye,4)}function Z(oe){var ye=oe.getTimezoneOffset();return(ye>0?"-":(ye*=-1,"+"))+f(ye/60|0,"0",2)+f(ye%60,"0",2)}function Te(oe,ye){return f(oe.getUTCDate(),ye,2)}function Pe(oe,ye){return f(oe.getUTCHours(),ye,2)}function Ne(oe,ye){return f(oe.getUTCHours()%12||12,ye,2)}function lr(oe,ye){return f(1+r.utcDay.count(r.utcYear(oe),oe),ye,3)}function Qe(oe,ye){return f(oe.getUTCMilliseconds(),ye,3)}function Je(oe,ye){return Qe(oe,ye)+"000"}function or(oe,ye){return f(oe.getUTCMonth()+1,ye,2)}function yr(oe,ye){return f(oe.getUTCMinutes(),ye,2)}function ir(oe,ye){return f(oe.getUTCSeconds(),ye,2)}function Xe(oe){var ye=oe.getUTCDay();return ye===0?7:ye}function Lr(oe,ye){return f(r.utcSunday.count(r.utcYear(oe)-1,oe),ye,2)}function Ar(oe,ye){var Ge=oe.getUTCDay();return oe=Ge>=4||Ge===0?r.utcThursday(oe):r.utcThursday.ceil(oe),f(r.utcThursday.count(r.utcYear(oe),oe)+(r.utcYear(oe).getUTCDay()===4),ye,2)}function de(oe){return oe.getUTCDay()}function Oe(oe,ye){return f(r.utcMonday.count(r.utcYear(oe)-1,oe),ye,2)}function Ue(oe,ye){return f(oe.getUTCFullYear()%100,ye,2)}function rt(oe,ye){return f(oe.getUTCFullYear()%1e4,ye,4)}function Ur(){return"+0000"}function Ye(){return"%"}function Ve(oe){return+oe}function pr(oe){return Math.floor(+oe/1e3)}var Tr;mr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function mr(oe){return Tr=i(oe),e.timeFormat=Tr.format,e.timeParse=Tr.parse,e.utcFormat=Tr.utcFormat,e.utcParse=Tr.utcParse,Tr}var vr="%Y-%m-%dT%H:%M:%S.%LZ";function Cr(oe){return oe.toISOString()}var Ir=Date.prototype.toISOString?Cr:e.utcFormat(vr);function Gr(oe){var ye=new Date(oe);return isNaN(ye)?null:ye}var Ze=+new Date("2000-01-01T00:00:00.000Z")?Gr:e.utcParse(vr);e.isoFormat=Ir,e.isoParse=Ze,e.timeFormatDefaultLocale=mr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var g_=R((Vy,xM)=>{(function(e,r){typeof Vy=="object"&&typeof xM!="undefined"?r(Vy):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(Vy,function(e){"use strict";function r(M){return Math.abs(M=Math.round(M))>=1e21?M.toLocaleString("en").replace(/,/g,""):M.toString(10)}function t(M,k){if((D=(M=k?M.toExponential(k-1):M.toExponential()).indexOf("e"))<0)return null;var D,P=M.slice(0,D);return[P.length>1?P[0]+P.slice(2):P,+M.slice(D+1)]}function a(M){return M=t(Math.abs(M)),M?M[1]:NaN}function n(M,k){return function(D,P){for(var N=D.length,q=[],O=0,U=M[0],$=0;N>0&&U>0&&($+U+1>P&&(U=Math.max(1,P-$)),q.push(D.substring(N-=U,N+U)),!(($+=U+1)>P));)U=M[O=(O+1)%M.length];return q.reverse().join(k)}}function i(M){return function(k){return k.replace(/[0-9]/g,function(D){return M[+D]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(k=o.exec(M)))throw new Error("invalid format: "+M);var k;return new s({fill:k[1],align:k[2],sign:k[3],symbol:k[4],zero:k[5],width:k[6],comma:k[7],precision:k[8]&&k[8].slice(1),trim:k[9],type:k[10]})}l.prototype=s.prototype;function s(M){this.fill=M.fill===void 0?" ":M.fill+"",this.align=M.align===void 0?">":M.align+"",this.sign=M.sign===void 0?"-":M.sign+"",this.symbol=M.symbol===void 0?"":M.symbol+"",this.zero=!!M.zero,this.width=M.width===void 0?void 0:+M.width,this.comma=!!M.comma,this.precision=M.precision===void 0?void 0:+M.precision,this.trim=!!M.trim,this.type=M.type===void 0?"":M.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(M){e:for(var k=M.length,D=1,P=-1,N;D0&&(P=0);break}return P>0?M.slice(0,P)+M.slice(N+1):M}var f;function c(M,k){var D=t(M,k);if(!D)return M+"";var P=D[0],N=D[1],q=N-(f=Math.max(-8,Math.min(8,Math.floor(N/3)))*3)+1,O=P.length;return q===O?P:q>O?P+new Array(q-O+1).join("0"):q>0?P.slice(0,q)+"."+P.slice(q):"0."+new Array(1-q).join("0")+t(M,Math.max(0,k+q-1))[0]}function v(M,k){var D=t(M,k);if(!D)return M+"";var P=D[0],N=D[1];return N<0?"0."+new Array(-N).join("0")+P:P.length>N+1?P.slice(0,N+1)+"."+P.slice(N+1):P+new Array(N-P.length+2).join("0")}var d={"%":function(M,k){return(M*100).toFixed(k)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,k){return M.toExponential(k)},f:function(M,k){return M.toFixed(k)},g:function(M,k){return M.toPrecision(k)},o:function(M){return Math.round(M).toString(8)},p:function(M,k){return v(M*100,k)},r:v,s:c,X:function(M){return Math.round(M).toString(16).toUpperCase()},x:function(M){return Math.round(M).toString(16)}};function p(M){return M}var g=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function b(M){var k=M.grouping===void 0||M.thousands===void 0?p:n(g.call(M.grouping,Number),M.thousands+""),D=M.currency===void 0?"":M.currency[0]+"",P=M.currency===void 0?"":M.currency[1]+"",N=M.decimal===void 0?".":M.decimal+"",q=M.numerals===void 0?p:i(g.call(M.numerals,String)),O=M.percent===void 0?"%":M.percent+"",U=M.minus===void 0?"-":M.minus+"",$=M.nan===void 0?"NaN":M.nan+"";function W(B){B=l(B);var V=B.fill,j=B.align,Q=B.sign,ve=B.symbol,xe=B.zero,se=B.width,be=B.comma,re=B.precision,ke=B.trim,ge=B.type;ge==="n"?(be=!0,ge="g"):d[ge]||(re===void 0&&(re=12),ke=!0,ge="g"),(xe||V==="0"&&j==="=")&&(xe=!0,V="0",j="=");var Ee=ve==="$"?D:ve==="#"&&/[boxX]/.test(ge)?"0"+ge.toLowerCase():"",De=ve==="$"?P:/[%p]/.test(ge)?O:"",Ce=d[ge],Y=/[defgprs%]/.test(ge);re=re===void 0?6:/[gprs]/.test(ge)?Math.max(1,Math.min(21,re)):Math.max(0,Math.min(20,re));function ae(Z){var Te=Ee,Pe=De,Ne,lr,Qe;if(ge==="c")Pe=Ce(Z)+Pe,Z="";else{Z=+Z;var Je=Z<0||1/Z<0;if(Z=isNaN(Z)?$:Ce(Math.abs(Z),re),ke&&(Z=u(Z)),Je&&+Z==0&&Q!=="+"&&(Je=!1),Te=(Je?Q==="("?Q:U:Q==="-"||Q==="("?"":Q)+Te,Pe=(ge==="s"?m[8+f/3]:"")+Pe+(Je&&Q==="("?")":""),Y){for(Ne=-1,lr=Z.length;++NeQe||Qe>57){Pe=(Qe===46?N+Z.slice(Ne+1):Z.slice(Ne))+Pe,Z=Z.slice(0,Ne);break}}}be&&!xe&&(Z=k(Z,1/0));var or=Te.length+Z.length+Pe.length,yr=or>1)+Te+Z+Pe+yr.slice(or);break;default:Z=yr+Te+Z+Pe;break}return q(Z)}return ae.toString=function(){return B+""},ae}function H(B,V){var j=W((B=l(B),B.type="f",B)),Q=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,ve=Math.pow(10,-Q),xe=m[8+Q/3];return function(se){return j(ve*se)+xe}}return{format:W,formatPrefix:H}}var _;A({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function A(M){return _=b(M),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function x(M){return Math.max(0,-a(Math.abs(M)))}function T(M,k){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(k)/3)))*3-a(Math.abs(M)))}function S(M,k){return M=Math.abs(M),k=Math.abs(k)-M,Math.max(0,a(k)-a(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=A,e.formatLocale=b,e.formatSpecifier=l,e.precisionFixed=x,e.precisionPrefix=T,e.precisionRound=S,Object.defineProperty(e,"__esModule",{value:!0})})});var wM=R((JSe,_M)=>{"use strict";_M.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var ia=R(($Se,AM)=>{"use strict";var Bne=wM();AM.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&Bne(t))return!1}else if(r!=="number")return!1;return e-e<1}});var _n=R((QSe,TM)=>{"use strict";TM.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var b_=R((Yy,MM)=>{(function(e,r){typeof Yy=="object"&&typeof MM!="undefined"?r(Yy):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(Yy,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(l[s]&3)<<4|l[s+1]>>4],f+=r[(l[s+1]&15)<<2|l[s+2]>>6],f+=r[l[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(o){var l=o.length*.75,s=o.length,u,f=0,c,v,d,p;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var g=new ArrayBuffer(l),m=new Uint8Array(g);for(u=0;u>4,m[f++]=(v&15)<<4|d>>2,m[f++]=(d&3)<<6|p&63;return g};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var Ru=R((KSe,SM)=>{"use strict";SM.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var ro=R(cl=>{"use strict";var Une=b_().decode,Gne=Ru(),x_=Array.isArray,Hne=ArrayBuffer,Vne=DataView;function kM(e){return Hne.isView(e)&&!(e instanceof Vne)}cl.isTypedArray=kM;function Wy(e){return x_(e)||kM(e)}cl.isArrayOrTypedArray=Wy;function Yne(e){return!Wy(e[0])}cl.isArray1D=Yne;cl.ensureArray=function(e,r){return x_(e)||(e=[]),e.length=r,e};var ti={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};ti.uint8c=ti.u1c;ti.uint8=ti.u1;ti.int8=ti.i1;ti.uint16=ti.u2;ti.int16=ti.i2;ti.uint32=ti.u4;ti.int32=ti.i4;ti.float32=ti.f4;ti.float64=ti.f8;function __(e){return e.constructor===ArrayBuffer}cl.isArrayBuffer=__;cl.decodeTypedArraySpec=function(e){var r=[],t=Wne(e),a=t.dtype,n=ti[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;__(o)||(o=Une(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,u,f,c=+l[0],v=i*c,d=0;if(s===1)r=new n(o);else if(s===2)for(u=+l[1],f=0;f{"use strict";var EM=ia(),A_=ro().isArrayOrTypedArray;FM.exports=function(r,t){if(EM(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,o,l;for(l=0;l{"use strict";var e0=jy(),$ne=/^\w*$/,Qne=0,RM=1,Xy=2,PM=3,uc=4;NM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=e0(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|Xy,c.set(v,null);if(f){for(i=d;i{"use strict";var Kne=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,eie=/^[^\.\[\]]+$/;OM.exports=function(e,r){for(;r;){var t=e.match(Kne);if(t)e=t[1];else if(e.match(eie))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var Zy=R((nke,BM)=>{"use strict";var rie=ia();BM.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return rie(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var HM=R((ike,GM)=>{"use strict";var UM=ro().isArrayOrTypedArray,Jd=Ru();GM.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(UM(n)&&UM(i)&&Jd(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function tie(e,r){var t=e%r;return t<0?t+r:t}function aie(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}VM.exports={mod:tie,modHalf:aie}});var vl=R((lke,Jy)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,o=e.max,l=e.random;function s(Y,ae){if(Y=Y||"",ae=ae||{},Y instanceof s)return Y;if(!(this instanceof s))return new s(Y,ae);var Z=u(Y);this._originalInput=Y,this._r=Z.r,this._g=Z.g,this._b=Z.b,this._a=Z.a,this._roundA=n(100*this._a)/100,this._format=ae.format||Z.format,this._gradientType=ae.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=Z.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var Y=this.toRgb();return(Y.r*299+Y.g*587+Y.b*114)/1e3},getLuminance:function(){var Y=this.toRgb(),ae,Z,Te,Pe,Ne,lr;return ae=Y.r/255,Z=Y.g/255,Te=Y.b/255,ae<=.03928?Pe=ae/12.92:Pe=e.pow((ae+.055)/1.055,2.4),Z<=.03928?Ne=Z/12.92:Ne=e.pow((Z+.055)/1.055,2.4),Te<=.03928?lr=Te/12.92:lr=e.pow((Te+.055)/1.055,2.4),.2126*Pe+.7152*Ne+.0722*lr},setAlpha:function(Y){return this._a=B(Y),this._roundA=n(100*this._a)/100,this},toHsv:function(){var Y=d(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,v:Y.v,a:this._a}},toHsvString:function(){var Y=d(this._r,this._g,this._b),ae=n(Y.h*360),Z=n(Y.s*100),Te=n(Y.v*100);return this._a==1?"hsv("+ae+", "+Z+"%, "+Te+"%)":"hsva("+ae+", "+Z+"%, "+Te+"%, "+this._roundA+")"},toHsl:function(){var Y=c(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,l:Y.l,a:this._a}},toHslString:function(){var Y=c(this._r,this._g,this._b),ae=n(Y.h*360),Z=n(Y.s*100),Te=n(Y.l*100);return this._a==1?"hsl("+ae+", "+Z+"%, "+Te+"%)":"hsla("+ae+", "+Z+"%, "+Te+"%, "+this._roundA+")"},toHex:function(Y){return g(this._r,this._g,this._b,Y)},toHexString:function(Y){return"#"+this.toHex(Y)},toHex8:function(Y){return m(this._r,this._g,this._b,this._a,Y)},toHex8String:function(Y){return"#"+this.toHex8(Y)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(V(this._r,255)*100)+"%",g:n(V(this._g,255)*100)+"%",b:n(V(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%)":"rgba("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:W[g(this._r,this._g,this._b,!0)]||!1},toFilter:function(Y){var ae="#"+b(this._r,this._g,this._b,this._a),Z=ae,Te=this._gradientType?"GradientType = 1, ":"";if(Y){var Pe=s(Y);Z="#"+b(Pe._r,Pe._g,Pe._b,Pe._a)}return"progid:DXImageTransform.Microsoft.gradient("+Te+"startColorstr="+ae+",endColorstr="+Z+")"},toString:function(Y){var ae=!!Y;Y=Y||this._format;var Z=!1,Te=this._a<1&&this._a>=0,Pe=!ae&&Te&&(Y==="hex"||Y==="hex6"||Y==="hex3"||Y==="hex4"||Y==="hex8"||Y==="name");return Pe?Y==="name"&&this._a===0?this.toName():this.toRgbString():(Y==="rgb"&&(Z=this.toRgbString()),Y==="prgb"&&(Z=this.toPercentageRgbString()),(Y==="hex"||Y==="hex6")&&(Z=this.toHexString()),Y==="hex3"&&(Z=this.toHexString(!0)),Y==="hex4"&&(Z=this.toHex8String(!0)),Y==="hex8"&&(Z=this.toHex8String()),Y==="name"&&(Z=this.toName()),Y==="hsl"&&(Z=this.toHslString()),Y==="hsv"&&(Z=this.toHsvString()),Z||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(Y,ae){var Z=Y.apply(null,[this].concat([].slice.call(ae)));return this._r=Z._r,this._g=Z._g,this._b=Z._b,this.setAlpha(Z._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(S,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(A,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(Y,ae){return Y.apply(null,[this].concat([].slice.call(ae)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(U,arguments)},splitcomplement:function(){return this._applyCombination(q,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(N,arguments)}},s.fromRatio=function(Y,ae){if(typeof Y=="object"){var Z={};for(var Te in Y)Y.hasOwnProperty(Te)&&(Te==="a"?Z[Te]=Y[Te]:Z[Te]=be(Y[Te]));Y=Z}return s(Y,ae)};function u(Y){var ae={r:0,g:0,b:0},Z=1,Te=null,Pe=null,Ne=null,lr=!1,Qe=!1;return typeof Y=="string"&&(Y=De(Y)),typeof Y=="object"&&(Ee(Y.r)&&Ee(Y.g)&&Ee(Y.b)?(ae=f(Y.r,Y.g,Y.b),lr=!0,Qe=String(Y.r).substr(-1)==="%"?"prgb":"rgb"):Ee(Y.h)&&Ee(Y.s)&&Ee(Y.v)?(Te=be(Y.s),Pe=be(Y.v),ae=p(Y.h,Te,Pe),lr=!0,Qe="hsv"):Ee(Y.h)&&Ee(Y.s)&&Ee(Y.l)&&(Te=be(Y.s),Ne=be(Y.l),ae=v(Y.h,Te,Ne),lr=!0,Qe="hsl"),Y.hasOwnProperty("a")&&(Z=Y.a)),Z=B(Z),{ok:lr,format:Y.format||Qe,r:i(255,o(ae.r,0)),g:i(255,o(ae.g,0)),b:i(255,o(ae.b,0)),a:Z}}function f(Y,ae,Z){return{r:V(Y,255)*255,g:V(ae,255)*255,b:V(Z,255)*255}}function c(Y,ae,Z){Y=V(Y,255),ae=V(ae,255),Z=V(Z,255);var Te=o(Y,ae,Z),Pe=i(Y,ae,Z),Ne,lr,Qe=(Te+Pe)/2;if(Te==Pe)Ne=lr=0;else{var Je=Te-Pe;switch(lr=Qe>.5?Je/(2-Te-Pe):Je/(Te+Pe),Te){case Y:Ne=(ae-Z)/Je+(ae1&&(ir-=1),ir<1/6?or+(yr-or)*6*ir:ir<1/2?yr:ir<2/3?or+(yr-or)*(2/3-ir)*6:or}if(ae===0)Te=Pe=Ne=Z;else{var Qe=Z<.5?Z*(1+ae):Z+ae-Z*ae,Je=2*Z-Qe;Te=lr(Je,Qe,Y+1/3),Pe=lr(Je,Qe,Y),Ne=lr(Je,Qe,Y-1/3)}return{r:Te*255,g:Pe*255,b:Ne*255}}function d(Y,ae,Z){Y=V(Y,255),ae=V(ae,255),Z=V(Z,255);var Te=o(Y,ae,Z),Pe=i(Y,ae,Z),Ne,lr,Qe=Te,Je=Te-Pe;if(lr=Te===0?0:Je/Te,Te==Pe)Ne=0;else{switch(Te){case Y:Ne=(ae-Z)/Je+(ae>1)+720)%360;--ae;)Te.h=(Te.h+Pe)%360,Ne.push(s(Te));return Ne}function U(Y,ae){ae=ae||6;for(var Z=s(Y).toHsv(),Te=Z.h,Pe=Z.s,Ne=Z.v,lr=[],Qe=1/ae;ae--;)lr.push(s({h:Te,s:Pe,v:Ne})),Ne=(Ne+Qe)%1;return lr}s.mix=function(Y,ae,Z){Z=Z===0?0:Z||50;var Te=s(Y).toRgb(),Pe=s(ae).toRgb(),Ne=Z/100,lr={r:(Pe.r-Te.r)*Ne+Te.r,g:(Pe.g-Te.g)*Ne+Te.g,b:(Pe.b-Te.b)*Ne+Te.b,a:(Pe.a-Te.a)*Ne+Te.a};return s(lr)},s.readability=function(Y,ae){var Z=s(Y),Te=s(ae);return(e.max(Z.getLuminance(),Te.getLuminance())+.05)/(e.min(Z.getLuminance(),Te.getLuminance())+.05)},s.isReadable=function(Y,ae,Z){var Te=s.readability(Y,ae),Pe,Ne;switch(Ne=!1,Pe=Ce(Z),Pe.level+Pe.size){case"AAsmall":case"AAAlarge":Ne=Te>=4.5;break;case"AAlarge":Ne=Te>=3;break;case"AAAsmall":Ne=Te>=7;break}return Ne},s.mostReadable=function(Y,ae,Z){var Te=null,Pe=0,Ne,lr,Qe,Je;Z=Z||{},lr=Z.includeFallbackColors,Qe=Z.level,Je=Z.size;for(var or=0;orPe&&(Pe=Ne,Te=s(ae[or]));return s.isReadable(Y,Te,{level:Qe,size:Je})||!lr?Te:(Z.includeFallbackColors=!1,s.mostReadable(Y,["#fff","#000"],Z))};var $=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},W=s.hexNames=H($);function H(Y){var ae={};for(var Z in Y)Y.hasOwnProperty(Z)&&(ae[Y[Z]]=Z);return ae}function B(Y){return Y=parseFloat(Y),(isNaN(Y)||Y<0||Y>1)&&(Y=1),Y}function V(Y,ae){ve(Y)&&(Y="100%");var Z=xe(Y);return Y=i(ae,o(0,parseFloat(Y))),Z&&(Y=parseInt(Y*ae,10)/100),e.abs(Y-ae)<1e-6?1:Y%ae/parseFloat(ae)}function j(Y){return i(1,o(0,Y))}function Q(Y){return parseInt(Y,16)}function ve(Y){return typeof Y=="string"&&Y.indexOf(".")!=-1&&parseFloat(Y)===1}function xe(Y){return typeof Y=="string"&&Y.indexOf("%")!=-1}function se(Y){return Y.length==1?"0"+Y:""+Y}function be(Y){return Y<=1&&(Y=Y*100+"%"),Y}function re(Y){return e.round(parseFloat(Y)*255).toString(16)}function ke(Y){return Q(Y)/255}var ge=function(){var Y="[-\\+]?\\d+%?",ae="[-\\+]?\\d*\\.\\d+%?",Z="(?:"+ae+")|(?:"+Y+")",Te="[\\s|\\(]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")\\s*\\)?",Pe="[\\s|\\(]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")\\s*\\)?";return{CSS_UNIT:new RegExp(Z),rgb:new RegExp("rgb"+Te),rgba:new RegExp("rgba"+Pe),hsl:new RegExp("hsl"+Te),hsla:new RegExp("hsla"+Pe),hsv:new RegExp("hsv"+Te),hsva:new RegExp("hsva"+Pe),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Ee(Y){return!!ge.CSS_UNIT.exec(Y)}function De(Y){Y=Y.replace(r,"").replace(t,"").toLowerCase();var ae=!1;if($[Y])Y=$[Y],ae=!0;else if(Y=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var Z;return(Z=ge.rgb.exec(Y))?{r:Z[1],g:Z[2],b:Z[3]}:(Z=ge.rgba.exec(Y))?{r:Z[1],g:Z[2],b:Z[3],a:Z[4]}:(Z=ge.hsl.exec(Y))?{h:Z[1],s:Z[2],l:Z[3]}:(Z=ge.hsla.exec(Y))?{h:Z[1],s:Z[2],l:Z[3],a:Z[4]}:(Z=ge.hsv.exec(Y))?{h:Z[1],s:Z[2],v:Z[3]}:(Z=ge.hsva.exec(Y))?{h:Z[1],s:Z[2],v:Z[3],a:Z[4]}:(Z=ge.hex8.exec(Y))?{r:Q(Z[1]),g:Q(Z[2]),b:Q(Z[3]),a:ke(Z[4]),format:ae?"name":"hex8"}:(Z=ge.hex6.exec(Y))?{r:Q(Z[1]),g:Q(Z[2]),b:Q(Z[3]),format:ae?"name":"hex"}:(Z=ge.hex4.exec(Y))?{r:Q(Z[1]+""+Z[1]),g:Q(Z[2]+""+Z[2]),b:Q(Z[3]+""+Z[3]),a:ke(Z[4]+""+Z[4]),format:ae?"name":"hex8"}:(Z=ge.hex3.exec(Y))?{r:Q(Z[1]+""+Z[1]),g:Q(Z[2]+""+Z[2]),b:Q(Z[3]+""+Z[3]),format:ae?"name":"hex"}:!1}function Ce(Y){var ae,Z;return Y=Y||{level:"AA",size:"small"},ae=(Y.level||"AA").toUpperCase(),Z=(Y.size||"small").toLowerCase(),ae!=="AA"&&ae!=="AAA"&&(ae="AA"),Z!=="small"&&Z!=="large"&&(Z="small"),{level:ae,size:Z}}typeof Jy!="undefined"&&Jy.exports?Jy.exports=s:window.tinycolor=s})(Math)});var hn=R(Kd=>{"use strict";var YM=Ru(),$d=Array.isArray;function nie(e,r){var t,a;for(t=0;t{"use strict";WM.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var e1=R((fke,jM)=>{"use strict";jM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var t0=R((cke,JM)=>{"use strict";var XM=e1(),ZM=ci(),T_=ZM({editType:"none"});T_.family.dflt=XM.HOVERFONT;T_.size.dflt=XM.HOVERFONTSIZE;JM.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:T_,grouptitlefont:ZM({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Ky=R((vke,$M)=>{"use strict";var iie=ci(),$y=t0().hoverlabel,Qy=hn().extendFlat;$M.exports={hoverlabel:{bgcolor:Qy({},$y.bgcolor,{arrayOk:!0}),bordercolor:Qy({},$y.bordercolor,{arrayOk:!0}),font:iie({arrayOk:!0,editType:"none"}),align:Qy({},$y.align,{arrayOk:!0}),namelength:Qy({},$y.namelength,{arrayOk:!0}),editType:"none"}}});var hl=R((hke,QM)=>{"use strict";var oie=ci(),lie=Ky();QM.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:oie({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:lie.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var fc=R((dke,rS)=>{"use strict";var sie=vl(),eg={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},KM=eg.RdBu;function uie(e,r){if(r||(r=KM),!e)return r;function t(){try{e=eg[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),eS(e)?e:r}function eS(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";cc.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];cc.defaultLine="#444";cc.lightLine="#eee";cc.background="#fff";cc.borderLine="#BEC8D9";cc.lightFraction=100*10/11});var Kt=R((mke,tS)=>{"use strict";var to=vl(),cie=ia(),vie=ro().isTypedArray,Wn=tS.exports={},rg=Ql();Wn.defaults=rg.defaults;var hie=Wn.defaultLine=rg.defaultLine;Wn.lightLine=rg.lightLine;var S_=Wn.background=rg.background;Wn.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};Wn.rgb=function(e){return Wn.tinyRGB(to(e))};Wn.opacity=function(e){return e?to(e).getAlpha():0};Wn.addOpacity=function(e,r){var t=to(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};Wn.combine=function(e,r){var t=to(e).toRgb();if(t.a===1)return to(e).toRgbString();var a=to(r||S_).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return to(i).toRgbString()};Wn.interpolate=function(e,r,t){var a=to(e).toRgb(),n=to(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return to(i).toRgbString()};Wn.contrast=function(e,r,t){var a=to(e);a.getAlpha()!==1&&(a=to(Wn.combine(e,S_)));var n=a.isDark()?r?a.lighten(r):S_:t?a.darken(t):hie;return n.toString()};Wn.stroke=function(e,r){var t=to(r);e.style({stroke:Wn.tinyRGB(t),"stroke-opacity":t.getAlpha()})};Wn.fill=function(e,r){var t=to(r);e.style({fill:Wn.tinyRGB(t),"fill-opacity":t.getAlpha()})};Wn.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var o=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+o+", "+a[3]+")":"rgb("+o+")"}});var a0=R((yke,aS)=>{"use strict";aS.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n0=R(nS=>{"use strict";nS.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var sS=R(ao=>{"use strict";var k_=ia(),iS=vl(),oS=hn().extendFlat,die=hl(),pie=fc(),mie=Kt(),yie=a0().DESELECTDIM,i0=jy(),lS=n0().counter,gie=r0().modHalf,Kl=ro().isArrayOrTypedArray,Pu=ro().isTypedArraySpec,Nu=ro().decodeTypedArraySpec;ao.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Kl(e)?e:Pu(e)?Nu(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}Pu(e)&&(e=Nu(e)),e%1||!k_(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Pu(e)&&(e=Nu(e)),iS(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return iS(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(pie.get(e,t))}},angle:{coerceFunction:function(e,r,t){Pu(e)&&(e=Nu(e)),e==="auto"?r.set("auto"):k_(e)?r.set(gie(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||lS(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!lS(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var uS={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},fS={};function cS(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),cS(a,r[t]))}}cS(uS,fS);vS.exports={configAttributes:uS,dfltConfig:fS}});var E_=R((_ke,hS)=>{"use strict";var C_=ta(),bie=ia(),r1=[];hS.exports=function(e,r){if(r1.indexOf(e)!==-1)return;r1.push(e);var t=1e3;bie(r)?t=r:r==="long"&&(t=3e3);var a=C_.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(r1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=r1.indexOf(l);s!==-1&&r1.splice(s,1),C_.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=C_.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),u=o.split(//g),f=0;f{"use strict";var o0=vc().dfltConfig,L_=E_(),D_=dS.exports={};D_.log=function(){var e;if(o0.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};D_.warn=function(){var e;if(o0.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};D_.error=function(){var e;if(o0.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var ag=R((Ake,pS)=>{"use strict";pS.exports=function(){}});var q_=R((Tke,mS)=>{"use strict";mS.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{yS.exports=xie;function xie(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var xS=R((Ske,bS)=>{bS.exports=_ie;function _ie(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var wS=R((kke,_S)=>{_S.exports=wie;function wie(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var F_=R((Cke,AS)=>{AS.exports=Aie;function Aie(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var MS=R((Eke,TS)=>{TS.exports=Tie;function Tie(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],o=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=o,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var kS=R((Lke,SS)=>{SS.exports=Mie;function Mie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],g=r[13],m=r[14],b=r[15],_=t*l-a*o,A=t*s-n*o,x=t*u-i*o,T=a*s-n*l,S=a*u-i*l,M=n*u-i*s,k=f*g-c*p,D=f*m-v*p,P=f*b-d*p,N=c*m-v*g,q=c*b-d*g,O=v*b-d*m,U=_*O-A*q+x*N+T*P-S*D+M*k;return U?(U=1/U,e[0]=(l*O-s*q+u*N)*U,e[1]=(n*q-a*O-i*N)*U,e[2]=(g*M-m*S+b*T)*U,e[3]=(v*S-c*M-d*T)*U,e[4]=(s*P-o*O-u*D)*U,e[5]=(t*O-n*P+i*D)*U,e[6]=(m*x-p*M-b*A)*U,e[7]=(f*M-v*x+d*A)*U,e[8]=(o*q-l*P+u*k)*U,e[9]=(a*P-t*q-i*k)*U,e[10]=(p*S-g*x+b*_)*U,e[11]=(c*x-f*S-d*_)*U,e[12]=(l*D-o*N-s*k)*U,e[13]=(t*N-a*D+n*k)*U,e[14]=(g*A-p*T-m*_)*U,e[15]=(f*T-c*A+v*_)*U,e):null}});var ES=R((Dke,CS)=>{CS.exports=Sie;function Sie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],g=r[13],m=r[14],b=r[15];return e[0]=l*(v*b-d*m)-c*(s*b-u*m)+g*(s*d-u*v),e[1]=-(a*(v*b-d*m)-c*(n*b-i*m)+g*(n*d-i*v)),e[2]=a*(s*b-u*m)-l*(n*b-i*m)+g*(n*u-i*s),e[3]=-(a*(s*d-u*v)-l*(n*d-i*v)+c*(n*u-i*s)),e[4]=-(o*(v*b-d*m)-f*(s*b-u*m)+p*(s*d-u*v)),e[5]=t*(v*b-d*m)-f*(n*b-i*m)+p*(n*d-i*v),e[6]=-(t*(s*b-u*m)-o*(n*b-i*m)+p*(n*u-i*s)),e[7]=t*(s*d-u*v)-o*(n*d-i*v)+f*(n*u-i*s),e[8]=o*(c*b-d*g)-f*(l*b-u*g)+p*(l*d-u*c),e[9]=-(t*(c*b-d*g)-f*(a*b-i*g)+p*(a*d-i*c)),e[10]=t*(l*b-u*g)-o*(a*b-i*g)+p*(a*u-i*l),e[11]=-(t*(l*d-u*c)-o*(a*d-i*c)+f*(a*u-i*l)),e[12]=-(o*(c*m-v*g)-f*(l*m-s*g)+p*(l*v-s*c)),e[13]=t*(c*m-v*g)-f*(a*m-n*g)+p*(a*v-n*c),e[14]=-(t*(l*m-s*g)-o*(a*m-n*g)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+f*(a*s-n*l),e}});var DS=R((qke,LS)=>{LS.exports=kie;function kie(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],o=e[5],l=e[6],s=e[7],u=e[8],f=e[9],c=e[10],v=e[11],d=e[12],p=e[13],g=e[14],m=e[15],b=r*o-t*i,_=r*l-a*i,A=r*s-n*i,x=t*l-a*o,T=t*s-n*o,S=a*s-n*l,M=u*p-f*d,k=u*g-c*d,D=u*m-v*d,P=f*g-c*p,N=f*m-v*p,q=c*m-v*g;return b*q-_*N+A*P+x*D-T*k+S*M}});var FS=R((Fke,qS)=>{qS.exports=Cie;function Cie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=r[4],s=r[5],u=r[6],f=r[7],c=r[8],v=r[9],d=r[10],p=r[11],g=r[12],m=r[13],b=r[14],_=r[15],A=t[0],x=t[1],T=t[2],S=t[3];return e[0]=A*a+x*l+T*c+S*g,e[1]=A*n+x*s+T*v+S*m,e[2]=A*i+x*u+T*d+S*b,e[3]=A*o+x*f+T*p+S*_,A=t[4],x=t[5],T=t[6],S=t[7],e[4]=A*a+x*l+T*c+S*g,e[5]=A*n+x*s+T*v+S*m,e[6]=A*i+x*u+T*d+S*b,e[7]=A*o+x*f+T*p+S*_,A=t[8],x=t[9],T=t[10],S=t[11],e[8]=A*a+x*l+T*c+S*g,e[9]=A*n+x*s+T*v+S*m,e[10]=A*i+x*u+T*d+S*b,e[11]=A*o+x*f+T*p+S*_,A=t[12],x=t[13],T=t[14],S=t[15],e[12]=A*a+x*l+T*c+S*g,e[13]=A*n+x*s+T*v+S*m,e[14]=A*i+x*u+T*d+S*b,e[15]=A*o+x*f+T*p+S*_,e}});var PS=R((Rke,RS)=>{RS.exports=Eie;function Eie(e,r,t){var a=t[0],n=t[1],i=t[2],o,l,s,u,f,c,v,d,p,g,m,b;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(o=r[0],l=r[1],s=r[2],u=r[3],f=r[4],c=r[5],v=r[6],d=r[7],p=r[8],g=r[9],m=r[10],b=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=u,e[4]=f,e[5]=c,e[6]=v,e[7]=d,e[8]=p,e[9]=g,e[10]=m,e[11]=b,e[12]=o*a+f*n+p*i+r[12],e[13]=l*a+c*n+g*i+r[13],e[14]=s*a+v*n+m*i+r[14],e[15]=u*a+d*n+b*i+r[15]),e}});var IS=R((Pke,NS)=>{NS.exports=Lie;function Lie(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var zS=R((Nke,OS)=>{OS.exports=Die;function Die(e,r,t,a){var n=a[0],i=a[1],o=a[2],l=Math.sqrt(n*n+i*i+o*o),s,u,f,c,v,d,p,g,m,b,_,A,x,T,S,M,k,D,P,N,q,O,U,$;return Math.abs(l)<1e-6?null:(l=1/l,n*=l,i*=l,o*=l,s=Math.sin(t),u=Math.cos(t),f=1-u,c=r[0],v=r[1],d=r[2],p=r[3],g=r[4],m=r[5],b=r[6],_=r[7],A=r[8],x=r[9],T=r[10],S=r[11],M=n*n*f+u,k=i*n*f+o*s,D=o*n*f-i*s,P=n*i*f-o*s,N=i*i*f+u,q=o*i*f+n*s,O=n*o*f+i*s,U=i*o*f-n*s,$=o*o*f+u,e[0]=c*M+g*k+A*D,e[1]=v*M+m*k+x*D,e[2]=d*M+b*k+T*D,e[3]=p*M+_*k+S*D,e[4]=c*P+g*N+A*q,e[5]=v*P+m*N+x*q,e[6]=d*P+b*N+T*q,e[7]=p*P+_*N+S*q,e[8]=c*O+g*U+A*$,e[9]=v*O+m*U+x*$,e[10]=d*O+b*U+T*$,e[11]=p*O+_*U+S*$,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var US=R((Ike,BS)=>{BS.exports=qie;function qie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=o*n+f*a,e[6]=l*n+c*a,e[7]=s*n+v*a,e[8]=u*n-i*a,e[9]=f*n-o*a,e[10]=c*n-l*a,e[11]=v*n-s*a,e}});var HS=R((Oke,GS)=>{GS.exports=Fie;function Fie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=o*n-f*a,e[2]=l*n-c*a,e[3]=s*n-v*a,e[8]=i*a+u*n,e[9]=o*a+f*n,e[10]=l*a+c*n,e[11]=s*a+v*n,e}});var YS=R((zke,VS)=>{VS.exports=Rie;function Rie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[4],f=r[5],c=r[6],v=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=o*n+f*a,e[2]=l*n+c*a,e[3]=s*n+v*a,e[4]=u*n-i*a,e[5]=f*n-o*a,e[6]=c*n-l*a,e[7]=v*n-s*a,e}});var jS=R((Bke,WS)=>{WS.exports=Pie;function Pie(e,r,t){var a,n,i,o=t[0],l=t[1],s=t[2],u=Math.sqrt(o*o+l*l+s*s);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,l*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=o*o*i+n,e[1]=l*o*i+s*a,e[2]=s*o*i-l*a,e[3]=0,e[4]=o*l*i-s*a,e[5]=l*l*i+n,e[6]=s*l*i+o*a,e[7]=0,e[8]=o*s*i+l*a,e[9]=l*s*i-o*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var ZS=R((Uke,XS)=>{XS.exports=Nie;function Nie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=a+a,s=n+n,u=i+i,f=a*l,c=a*s,v=a*u,d=n*s,p=n*u,g=i*u,m=o*l,b=o*s,_=o*u;return e[0]=1-(d+g),e[1]=c+_,e[2]=v-b,e[3]=0,e[4]=c-_,e[5]=1-(f+g),e[6]=p+m,e[7]=0,e[8]=v+b,e[9]=p-m,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var $S=R((Gke,JS)=>{JS.exports=Iie;function Iie(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var KS=R((Hke,QS)=>{QS.exports=Oie;function Oie(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var rk=R((Vke,ek)=>{ek.exports=zie;function zie(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ak=R((Yke,tk)=>{tk.exports=Bie;function Bie(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ik=R((Wke,nk)=>{nk.exports=Uie;function Uie(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var R_=R((jke,ok)=>{ok.exports=Gie;function Gie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=t+t,l=a+a,s=n+n,u=t*o,f=a*o,c=a*l,v=n*o,d=n*l,p=n*s,g=i*o,m=i*l,b=i*s;return e[0]=1-c-p,e[1]=f+b,e[2]=v-m,e[3]=0,e[4]=f-b,e[5]=1-u-p,e[6]=d+g,e[7]=0,e[8]=v+m,e[9]=d-g,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var sk=R((Xke,lk)=>{lk.exports=Hie;function Hie(e,r,t,a,n,i,o){var l=1/(t-r),s=1/(n-a),u=1/(i-o);return e[0]=i*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(n+a)*s,e[10]=(o+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*u,e[15]=0,e}});var fk=R((Zke,uk)=>{uk.exports=Vie;function Vie(e,r,t,a,n){var i=1/Math.tan(r/2),o=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*o,e[15]=0,e}});var vk=R((Jke,ck)=>{ck.exports=Yie;function Yie(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),o=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),s=2/(o+l),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var dk=R(($ke,hk)=>{hk.exports=Wie;function Wie(e,r,t,a,n,i,o){var l=1/(r-t),s=1/(a-n),u=1/(i-o);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*l,e[13]=(n+a)*s,e[14]=(o+i)*u,e[15]=1,e}});var mk=R((Qke,pk)=>{var jie=F_();pk.exports=Xie;function Xie(e,r,t,a){var n,i,o,l,s,u,f,c,v,d,p=r[0],g=r[1],m=r[2],b=a[0],_=a[1],A=a[2],x=t[0],T=t[1],S=t[2];return Math.abs(p-x)<1e-6&&Math.abs(g-T)<1e-6&&Math.abs(m-S)<1e-6?jie(e):(f=p-x,c=g-T,v=m-S,d=1/Math.sqrt(f*f+c*c+v*v),f*=d,c*=d,v*=d,n=_*v-A*c,i=A*f-b*v,o=b*c-_*f,d=Math.sqrt(n*n+i*i+o*o),d?(d=1/d,n*=d,i*=d,o*=d):(n=0,i=0,o=0),l=c*o-v*i,s=v*n-f*o,u=f*i-c*n,d=Math.sqrt(l*l+s*s+u*u),d?(d=1/d,l*=d,s*=d,u*=d):(l=0,s=0,u=0),e[0]=n,e[1]=l,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=o,e[9]=u,e[10]=v,e[11]=0,e[12]=-(n*p+i*g+o*m),e[13]=-(l*p+s*g+u*m),e[14]=-(f*p+c*g+v*m),e[15]=1,e)}});var gk=R((Kke,yk)=>{yk.exports=Zie;function Zie(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var P_=R((eCe,bk)=>{bk.exports={create:gS(),clone:xS(),copy:wS(),identity:F_(),transpose:MS(),invert:kS(),adjoint:ES(),determinant:DS(),multiply:FS(),translate:PS(),scale:IS(),rotate:zS(),rotateX:US(),rotateY:HS(),rotateZ:YS(),fromRotation:jS(),fromRotationTranslation:ZS(),fromScaling:$S(),fromTranslation:KS(),fromXRotation:rk(),fromYRotation:ak(),fromZRotation:ik(),fromQuat:R_(),frustum:sk(),perspective:fk(),perspectiveFromFieldOfView:vk(),ortho:dk(),lookAt:mk(),str:gk()}});var ng=R(dn=>{"use strict";var Jie=P_();dn.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var $ie=ta(),xk=hc(),Qie=ng(),Kie=P_();function eoe(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function roe(e){var r=$ie.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function _k(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function toe(e,r){wk("global",e,r)}function wk(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):xk.warn("addStyleRule failed"):xk.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function aoe(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&_k(t)}function noe(e,r,t,a,n,i){var o=a.split(":"),l=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[o[0]]=o[1]:f.style[l[0]]=l[1])}),u.setAttribute(s,!0))})}function ioe(e){var r=Tk(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=Ak(a);if(n){var i=Qie.convertCssMatrix(n);t=Kie.multiply(t,t,i)}}),t}function Ak(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function Tk(e){for(var r=[];ooe(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function ooe(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function loe(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}Mk.exports={getGraphDiv:eoe,isPlotDiv:roe,removeElement:_k,addStyleRule:toe,addRelatedStyleRule:wk,deleteRelatedStyleRule:aoe,setStyleOnHover:noe,getFullTransformMatrix:ioe,getElementTransformMatrix:Ak,getElementAndAncestors:Tk,equalDomRects:loe}});var a1=R((aCe,Sk)=>{"use strict";Sk.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var dl=R((nCe,Fk)=>{"use strict";var Ck=hn().extendFlat,soe=Ru(),Ek={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Lk={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},uoe=Ek.flags.slice().concat(["fullReplot"]),foe=Lk.flags.slice().concat("layoutReplot");Fk.exports={traces:Ek,layout:Lk,traceFlags:function(){return kk(uoe)},layoutFlags:function(){return kk(foe)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";N_.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};N_.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var I_=R((oCe,Rk)=>{"use strict";Rk.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var l0=R(ig=>{"use strict";var Pk=I_(),lCe=Pk.FORMAT_LINK,sCe=Pk.DATE_FORMAT_LINK;function O_(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function Ou(e,r){return r?r.d2l(e):e}function Nk(e,r){return r?r.l2d(e):e}function coe(e){return e.x0}function voe(e){return e.x1}function hoe(e){return e.y0}function doe(e){return e.y1}function Ik(e){return e.x0shift||0}function Ok(e){return e.x1shift||0}function zk(e){return e.y0shift||0}function Bk(e){return e.y1shift||0}function og(e,r){return Ou(e.x1,r)+Ok(e)-Ou(e.x0,r)-Ik(e)}function lg(e,r,t){return Ou(e.y1,t)+Bk(e)-Ou(e.y0,t)-zk(e)}function poe(e,r){return Math.abs(og(e,r))}function moe(e,r,t){return Math.abs(lg(e,r,t))}function yoe(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(og(e,r),2)+Math.pow(lg(e,r,t),2))}function goe(e,r){return Nk((Ou(e.x1,r)+Ok(e)+Ou(e.x0,r)+Ik(e))/2,r)}function boe(e,r,t){return Nk((Ou(e.y1,t)+Bk(e)+Ou(e.y0,t)+zk(e))/2,t)}function xoe(e,r,t){return e.type!=="line"?void 0:lg(e,r,t)/og(e,r)}Uk.exports={x0:coe,x1:voe,y0:hoe,y1:doe,slope:xoe,dx:og,dy:lg,width:poe,height:moe,length:yoe,xcenter:goe,ycenter:boe}});var Vk=R((cCe,Hk)=>{"use strict";var _oe=dl().overrideAll,dc=hl(),Gk=ci(),woe=Iu().dash,zu=hn().extendFlat,Aoe=l0().shapeTexttemplateAttrs,Toe=sg();Hk.exports=_oe({newshape:{visible:zu({},dc.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:zu({},dc.legend,{}),legendgroup:zu({},dc.legendgroup,{}),legendgrouptitle:{text:zu({},dc.legendgrouptitle.text,{}),font:Gk({})},legendrank:zu({},dc.legendrank,{}),legendwidth:zu({},dc.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:zu({},woe,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:zu({},dc.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Aoe({newshape:!0},{keys:Object.keys(Toe)}),font:Gk({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Wk=R((vCe,Yk)=>{"use strict";var Moe=Iu().dash,Soe=hn().extendFlat;Yk.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:Soe({},Moe,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var ug=R((hCe,jk)=>{"use strict";jk.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var s0=R((dCe,$k)=>{"use strict";var z_=ci(),koe=a1(),fg=Ql(),Xk=Vk(),Zk=Wk(),Coe=ug(),Jk=hn().extendFlat,cg=z_({editType:"calc"});cg.family.dflt='"Open Sans", verdana, arial, sans-serif';cg.size.dflt=12;cg.color.dflt=fg.defaultLine;$k.exports={font:cg,title:{text:{valType:"string",editType:"layoutstyle"},font:z_({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:z_({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Jk(Coe({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:fg.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:fg.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:fg.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:Xk.newshape,activeshape:Xk.activeshape,newselection:Zk.newselection,activeselection:Zk.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Jk({},koe.transition,{editType:"none"})}});var Qk=Qv(()=>{});var Eoe={};var Kk=Qv(()=>{Qk()});var Ct=R(Xt=>{"use strict";var u0=hc(),eC=ag(),rC=q_(),Loe=Ru(),Doe=t1().addStyleRule,tC=hn(),qoe=hl(),Foe=s0(),Roe=tC.extendFlat,B_=tC.extendDeepAll;Xt.modules={};Xt.allCategories={};Xt.allTypes=[];Xt.subplotsRegistry={};Xt.componentsRegistry={};Xt.layoutArrayContainers=[];Xt.layoutArrayRegexes=[];Xt.traceLayoutAttributes={};Xt.localeRegistry={};Xt.apiMethodRegistry={};Xt.collectableSubplotTypes=null;Xt.register=function(r){if(Xt.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var Boe=Kv().timeFormat,hC=ia(),U_=hc(),Uu=r0().mod,v0=_n(),Io=v0.BADNUM,no=v0.ONEDAY,n1=v0.ONEHOUR,Bu=v0.ONEMIN,c0=v0.ONESEC,i1=v0.EPOCHJD,Bs=Ct(),lC=Kv().utcFormat,Uoe=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Goe=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,sC=new Date().getFullYear()-70;function Us(e){return e&&Bs.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}pn.dateTick0=function(e,r){var t=Hoe(e,!!r);if(r<2)return t;var a=pn.dateTime2ms(t,e);return a+=no*(r-1),pn.ms2DateTime(a,0,e)};function Hoe(e,r){return Us(e)?r?Bs.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Bs.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}pn.dfltRange=function(e){return Us(e)?Bs.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};pn.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var hg,dg;pn.dateTime2ms=function(e,r){if(pn.isJSDate(e)){var t=e.getTimezoneOffset()*Bu,a=(e.getUTCMinutes()-e.getMinutes())*Bu+(e.getUTCSeconds()-e.getSeconds())*c0+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Bu;t=t-n/2+Uu(a-t+n/2,n)}return e=Number(e)-t,e>=hg&&e<=dg?e:Io}if(typeof e!="string"&&typeof e!="number")return Io;e=String(e);var i=Us(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.substr(1),r="");var l=i&&r.substr(0,7)==="chinese",s=e.match(l?Goe:Uoe);if(!s)return Io;var u=s[1],f=s[3]||"1",c=Number(s[5]||1),v=Number(s[7]||0),d=Number(s[9]||0),p=Number(s[11]||0);if(i){if(u.length===2)return Io;u=Number(u);var g;try{var m=Bs.getComponentMethod("calendars","getCal")(r);if(l){var b=f.charAt(f.length-1)==="i";f=parseInt(f,10),g=m.newDate(u,m.toMonthIndex(u,f,b),c)}else g=m.newDate(u,Number(f),c)}catch(A){return Io}return g?(g.toJD()-i1)*no+v*n1+d*Bu+p*c0:Io}u.length===2?u=(Number(u)+2e3-sC)%100+sC:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,v,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?Io:_.getTime()+p*c0};hg=pn.MIN_MS=pn.dateTime2ms("-9999");dg=pn.MAX_MS=pn.dateTime2ms("9999-12-31 23:59:59.9999");pn.isDateTime=function(e,r){return pn.dateTime2ms(e,r)!==Io};function f0(e,r){return String(e+Math.pow(10,r)).substr(1)}var vg=90*no,uC=3*n1,fC=5*Bu;pn.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=hg&&e<=dg))return Io;r||(r=0);var a=Math.floor(Uu(e+.05,1)*10),n=Math.round(e-a/10),i,o,l,s,u,f;if(Us(t)){var c=Math.floor(n/no)+i1,v=Math.floor(Uu(e,no));try{i=Bs.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=lC("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;o=r=hg+no&&e<=dg-no))return Io;var r=Math.floor(Uu(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=Boe("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return dC(a,n,i,o,l)};function dC(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+f0(r,2)+":"+f0(t,2),(a||n)&&(e+=":"+f0(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+f0(n,i)}return e}pn.cleanDate=function(e,r,t){if(e===Io)return r;if(pn.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Us(t))return U_.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=pn.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!pn.isDateTime(e,t))return U_.error("unrecognized date",e),r;return e};var Voe=/%\d?f/g,Yoe=/%h/g,Woe={1:"1",2:"1",3:"2",4:"2"};function cC(e,r,t,a){e=e.replace(Voe,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return l});var n=new Date(Math.floor(r+.05));if(e=e.replace(Yoe,function(){return Woe[t("%q")(n)]}),Us(a))try{e=Bs.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var joe=[59,59.9,59.99,59.999,59.9999];function Xoe(e,r){var t=Uu(e+.05,no),a=f0(Math.floor(t/n1),2)+":"+f0(Uu(Math.floor(t/Bu),60),2);if(r!=="M"){hC(r)||(r=0);var n=Math.min(Uu(e/c0,60),joe[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}pn.formatDate=function(e,r,t,a,n,i){if(n=Us(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-gl3d.js b/dist/plotly-gl3d.js index 22de6d06862..2409210dc80 100644 --- a/dist/plotly-gl3d.js +++ b/dist/plotly-gl3d.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl3d) v3.0.2 +* plotly.js (gl3d) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-gl3d.min.js b/dist/plotly-gl3d.min.js index a224550f858..784ded4c3f0 100644 --- a/dist/plotly-gl3d.min.js +++ b/dist/plotly-gl3d.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl3d - minified) v3.0.2 +* plotly.js (gl3d - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var ab=Object.defineProperty;var kB=Object.getOwnPropertyDescriptor;var SB=Object.getOwnPropertyNames;var CB=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var pe=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var EB=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of SB(r))!CB.call(e,a)&&a!==t&&ab(e,a,{get:()=>r[a],enumerable:!(n=kB(r,a))||n.enumerable});return e};var LB=e=>EB(ab({},"__esModule",{value:!0}),e);var pc=pe(ob=>{"use strict";ob.version="3.0.2"});var sb=pe((lb,gc)=>{(function(r,t,n){t[r]=t[r]||n(),typeof gc!="undefined"&&gc.exports&&(gc.exports=t[r])})("Promise",typeof window!="undefined"?window:lb,function(){"use strict";var r,t,n,a=Object.prototype.toString,o=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(k,S,x,T){return Object.defineProperty(k,S,{value:x,writable:!0,configurable:T!==!1})}}catch(m){r=function(S,x,T){return S[x]=T,S}}n=function(){var k,S,x;function T(d,_){this.fn=d,this.self=_,this.next=void 0}return{add:function(_,g){x=new T(_,g),S?S.next=x:k=x,S=x,x=void 0},drain:function(){var _=k;for(k=S=t=void 0;_;)_.fn.call(_.self),_=_.next}}}();function i(m,k){n.add(m,k),t||(t=o(n.drain))}function l(m){var k,S=typeof m;return m!=null&&(S=="object"||S=="function")&&(k=m.then),typeof k=="function"?k:!1}function u(){for(var m=0;m0&&i(u,S))}catch(x){v.call(new b(S),x)}}}function v(m){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=m,k.state=2,k.chain.length>0&&i(u,k))}function p(m,k,S,x){for(var T=0;T{(function(){var e={version:"3.8.2"},r=[].slice,t=function(C){return r.call(C)},n=self.document;function a(C){return C&&(C.ownerDocument||C.document||C).documentElement}function o(C){return C&&(C.ownerDocument&&C.ownerDocument.defaultView||C.document&&C||C.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(C){t=function(z){for(var B=z.length,V=new Array(B);B--;)V[B]=z[B];return V}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(C){var i=this.Element.prototype,l=i.setAttribute,u=i.setAttributeNS,s=this.CSSStyleDeclaration.prototype,f=s.setProperty;i.setAttribute=function(z,B){l.call(this,z,B+"")},i.setAttributeNS=function(z,B,V){u.call(this,z,B,V+"")},s.setProperty=function(z,B,V){f.call(this,z,B+"",V)}}e.ascending=v;function v(C,z){return Cz?1:C>=z?0:NaN}e.descending=function(C,z){return zC?1:z>=C?0:NaN},e.min=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BJ&&(W=J)}else{for(;++B=J){W=J;break}for(;++BJ&&(W=J)}return W},e.max=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BW&&(W=J)}else{for(;++B=J){W=J;break}for(;++BW&&(W=J)}return W},e.extent=function(C,z){var B=-1,V=C.length,W,J,le;if(arguments.length===1){for(;++B=J){W=le=J;break}for(;++BJ&&(W=J),le=J){W=le=J;break}for(;++BJ&&(W=J),le1)return le/(fe-1)},e.deviation=function(){var C=e.variance.apply(this,arguments);return C&&Math.sqrt(C)};function y(C){return{left:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)<0?V=J+1:W=J}return V},right:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)>0?W=J:V=J+1}return V}}}var w=y(v);e.bisectLeft=w.left,e.bisect=e.bisectRight=w.right,e.bisector=function(C){return y(C.length===1?function(z,B){return v(C(z),B)}:C)},e.shuffle=function(C,z,B){(V=arguments.length)<3&&(B=C.length,V<2&&(z=0));for(var V=B-z,W,J;V;)J=Math.random()*V--|0,W=C[V+z],C[V+z]=C[J+z],C[J+z]=W;return C},e.permute=function(C,z){for(var B=z.length,V=new Array(B);B--;)V[B]=C[z[B]];return V},e.pairs=function(C){for(var z=0,B=C.length-1,V,W=C[0],J=new Array(B<0?0:B);z=0;)for(le=C[z],B=le.length;--B>=0;)J[--W]=le[B];return J};var m=Math.abs;e.range=function(C,z,B){if(arguments.length<3&&(B=1,arguments.length<2&&(z=C,C=0)),(z-C)/B===1/0)throw new Error("infinite range");var V=[],W=k(m(B)),J=-1,le;if(C*=W,z*=W,B*=W,B<0)for(;(le=C+B*++J)>z;)V.push(le/W);else for(;(le=C+B*++J)=z.length)return W?W.call(C,fe):V?fe.sort(V):fe;for(var _e=-1,Ie=fe.length,Ne=z[xe++],$e,rr,qe,He=new x,Xe;++_e=z.length)return ie;var xe=[],_e=B[fe++];return ie.forEach(function(Ie,Ne){xe.push({key:Ie,values:le(Ne,fe)})}),_e?xe.sort(function(Ie,Ne){return _e(Ie.key,Ne.key)}):xe}return C.map=function(ie,fe){return J(fe,ie,0)},C.entries=function(ie){return le(J(e.map,ie,0),0)},C.key=function(ie){return z.push(ie),C},C.sortKeys=function(ie){return B[z.length-1]=ie,C},C.sortValues=function(ie){return V=ie,C},C.rollup=function(ie){return W=ie,C},C},e.set=function(C){var z=new D;if(C)for(var B=0,V=C.length;B=0&&(V=C.slice(B+1),C=C.slice(0,B)),C)return arguments.length<2?this[C].on(V):this[C].on(V,z);if(arguments.length===2){if(z==null)for(C in this)this.hasOwnProperty(C)&&this[C].on(V,null);return this}};function U(C){var z=[],B=new x;function V(){for(var W=z,J=-1,le=W.length,ie;++J=0&&(B=C.slice(0,z))!=="xmlns"&&(C=C.slice(z+1)),te.hasOwnProperty(B)?{space:te[B],local:C}:C}},ee.attr=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node();return C=e.ns.qualify(C),C.local?B.getAttributeNS(C.space,C.local):B.getAttribute(C)}for(z in C)this.each(ue(z,C[z]));return this}return this.each(ue(C,z))};function ue(C,z){C=e.ns.qualify(C);function B(){this.removeAttribute(C)}function V(){this.removeAttributeNS(C.space,C.local)}function W(){this.setAttribute(C,z)}function J(){this.setAttributeNS(C.space,C.local,z)}function le(){var fe=z.apply(this,arguments);fe==null?this.removeAttribute(C):this.setAttribute(C,fe)}function ie(){var fe=z.apply(this,arguments);fe==null?this.removeAttributeNS(C.space,C.local):this.setAttributeNS(C.space,C.local,fe)}return z==null?C.local?V:B:typeof z=="function"?C.local?ie:le:C.local?J:W}function de(C){return C.trim().replace(/\s+/g," ")}ee.classed=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node(),V=(C=Me(C)).length,W=-1;if(z=B.classList){for(;++W=0;)(J=B[V])&&(W&&W!==J.nextSibling&&W.parentNode.insertBefore(J,W),W=J);return this},ee.sort=function(C){C=Te.apply(this,arguments);for(var z=-1,B=this.length;++z=z&&(z=W+1);!(fe=le[z])&&++z0&&(C=C.slice(0,W));var le=be.get(C);le&&(C=le,J=ze);function ie(){var _e=this[V];_e&&(this.removeEventListener(C,_e,_e.$),delete this[V])}function fe(){var _e=J(z,t(arguments));ie.call(this),this.addEventListener(C,this[V]=_e,_e.$=B),_e._=z}function xe(){var _e=new RegExp("^__on([^.]+)"+e.requote(C)+"$"),Ie;for(var Ne in this)if(Ie=Ne.match(_e)){var $e=this[Ne];this.removeEventListener(Ie[1],$e,$e.$),delete this[Ne]}}return W?z?fe:ie:z?P:xe}var be=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&be.forEach(function(C){"on"+C in n&&be.remove(C)});function Se(C,z){return function(B){var V=e.event;e.event=B,z[0]=this.__data__;try{C.apply(this,z)}finally{e.event=V}}}function ze(C,z){var B=Se(C,z);return function(V){var W=this,J=V.relatedTarget;(!J||J!==W&&!(J.compareDocumentPosition(W)&8))&&B.call(W,V)}}var Fe,Ze=0;function Ye(C){var z=".dragsuppress-"+ ++Ze,B="click"+z,V=e.select(o(C)).on("touchmove"+z,X).on("dragstart"+z,X).on("selectstart"+z,X);if(Fe==null&&(Fe="onselectstart"in C?!1:F(C.style,"userSelect")),Fe){var W=a(C).style,J=W[Fe];W[Fe]="none"}return function(le){if(V.on(z,null),Fe&&(W[Fe]=J),le){var ie=function(){V.on(B,null)};V.on(B,function(){X(),ie()},!0),setTimeout(ie,0)}}}e.mouse=function(C){return We(C,j())};var Ge=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function We(C,z){z.changedTouches&&(z=z.changedTouches[0]);var B=C.ownerSVGElement||C;if(B.createSVGPoint){var V=B.createSVGPoint();if(Ge<0){var W=o(C);if(W.scrollX||W.scrollY){B=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var J=B[0][0].getScreenCTM();Ge=!(J.f||J.e),B.remove()}}return Ge?(V.x=z.pageX,V.y=z.pageY):(V.x=z.clientX,V.y=z.clientY),V=V.matrixTransform(C.getScreenCTM().inverse()),[V.x,V.y]}var le=C.getBoundingClientRect();return[z.clientX-le.left-C.clientLeft,z.clientY-le.top-C.clientTop]}e.touch=function(C,z,B){if(arguments.length<3&&(B=z,z=j().changedTouches),z){for(var V=0,W=z.length,J;V0?1:C<0?-1:0}function je(C,z,B){return(z[0]-C[0])*(B[1]-C[1])-(z[1]-C[1])*(B[0]-C[0])}function nr(C){return C>1?0:C<-1?Ve:Math.acos(C)}function hr(C){return C>1?K:C<-1?-K:Math.asin(C)}function wr(C){return((C=Math.exp(C))-1/C)/2}function Cr(C){return((C=Math.exp(C))+1/C)/2}function Tr(C){return((C=Math.exp(2*C))-1)/(C+1)}function Ar(C){return(C=Math.sin(C/2))*C}var ft=Math.SQRT2,Yr=2,mr=4;e.interpolateZoom=function(C,z){var B=C[0],V=C[1],W=C[2],J=z[0],le=z[1],ie=z[2],fe=J-B,xe=le-V,_e=fe*fe+xe*xe,Ie,Ne;if(_e0&&(vr=vr.transition().duration(le)),vr.call(tr.event)}function br(){He&&He.domain(qe.range().map(function(vr){return(vr-C.x)/C.k}).map(qe.invert)),er&&er.domain(Xe.range().map(function(vr){return(vr-C.y)/C.k}).map(Xe.invert))}function _r(vr){ie++||vr({type:"zoomstart"})}function qr(vr){br(),vr({type:"zoom",scale:C.k,translate:[C.x,C.y]})}function Mr(vr){--ie||(vr({type:"zoomend"}),B=null)}function Pr(){var vr=this,Or=rr.of(vr,arguments),Vr=0,st=e.select(o(vr)).on(xe,bn).on(_e,In),Pt=Ke(e.mouse(vr)),$t=Ye(vr);cc.call(vr),_r(Or);function bn(){Vr=1,yr(e.mouse(vr),Pt),qr(Or)}function In(){st.on(xe,null).on(_e,null),$t(Vr),Mr(Or)}}function lt(){var vr=this,Or=rr.of(vr,arguments),Vr={},st=0,Pt,$t=".zoom-"+e.event.changedTouches[0].identifier,bn="touchmove"+$t,In="touchend"+$t,Gn=[],Nn=e.select(vr),$n=Ye(vr);jn(),_r(Or),Nn.on(fe,null).on(Ne,jn);function An(){var Za=e.touches(vr);return Pt=C.k,Za.forEach(function(_n){_n.identifier in Vr&&(Vr[_n.identifier]=Ke(_n))}),Za}function jn(){var Za=e.event.target;e.select(Za).on(bn,ml).on(In,AB),Gn.push(Za);for(var _n=e.event.changedTouches,Ta=0,Mi=_n.length;Ta1){var xl=Aa[0],_o=Aa[1],dc=xl[0]-_o[0],nb=xl[1]-_o[1];st=dc*dc+nb*nb}}function ml(){var Za=e.touches(vr),_n,Ta,Mi,Aa;cc.call(vr);for(var As=0,xl=Za.length;As1?1:z,B=B<0?0:B>1?1:B,W=B<=.5?B*(1+z):B+z-B*z,V=2*B-W;function J(ie){return ie>360?ie-=360:ie<0&&(ie+=360),ie<60?V+(W-V)*ie/60:ie<180?W:ie<240?V+(W-V)*(240-ie)/60:V}function le(ie){return Math.round(J(ie)*255)}return new nn(le(C+120),le(C),le(C-120))}e.hcl=Lt;function Lt(C,z,B){return this instanceof Lt?(this.h=+C,this.c=+z,void(this.l=+B)):arguments.length<2?C instanceof Lt?new Lt(C.h,C.c,C.l):C instanceof Rt?xi(C.l,C.a,C.b):xi((C=gr((C=e.rgb(C)).r,C.g,C.b)).l,C.a,C.b):new Lt(C,z,B)}var yn=Lt.prototype=new xt;yn.brighter=function(C){return new Lt(this.h,this.c,Math.min(100,this.l+nt*(arguments.length?C:1)))},yn.darker=function(C){return new Lt(this.h,this.c,Math.max(0,this.l-nt*(arguments.length?C:1)))},yn.rgb=function(){return Gt(this.h,this.c,this.l).rgb()};function Gt(C,z,B){return isNaN(C)&&(C=0),isNaN(z)&&(z=0),new Rt(B,Math.cos(C*=ae)*z,Math.sin(C)*z)}e.lab=Rt;function Rt(C,z,B){return this instanceof Rt?(this.l=+C,this.a=+z,void(this.b=+B)):arguments.length<2?C instanceof Rt?new Rt(C.l,C.a,C.b):C instanceof Lt?Gt(C.h,C.c,C.l):gr((C=nn(C)).r,C.g,C.b):new Rt(C,z,B)}var nt=18,Ft=.95047,ha=1,Qn=1.08883,Fn=Rt.prototype=new xt;Fn.brighter=function(C){return new Rt(Math.min(100,this.l+nt*(arguments.length?C:1)),this.a,this.b)},Fn.darker=function(C){return new Rt(Math.max(0,this.l-nt*(arguments.length?C:1)),this.a,this.b)},Fn.rgb=function(){return wa(this.l,this.a,this.b)};function wa(C,z,B){var V=(C+16)/116,W=V+z/500,J=V-B/200;return W=Gi(W)*Ft,V=Gi(V)*ha,J=Gi(J)*Qn,new nn(Wi(3.2404542*W-1.5371385*V-.4985314*J),Wi(-.969266*W+1.8760108*V+.041556*J),Wi(.0556434*W-.2040259*V+1.0572252*J))}function xi(C,z,B){return C>0?new Lt(Math.atan2(B,z)*Re,Math.sqrt(z*z+B*B),C):new Lt(NaN,NaN,C)}function Gi(C){return C>.206893034?C*C*C:(C-4/29)/7.787037}function Yi(C){return C>.008856?Math.pow(C,1/3):7.787037*C+4/29}function Wi(C){return Math.round(255*(C<=.00304?12.92*C:1.055*Math.pow(C,1/2.4)-.055))}e.rgb=nn;function nn(C,z,B){return this instanceof nn?(this.r=~~C,this.g=~~z,void(this.b=~~B)):arguments.length<2?C instanceof nn?new nn(C.r,C.g,C.b):at(""+C,nn,Ot):new nn(C,z,B)}function xo(C){return new nn(C>>16,C>>8&255,C&255)}function bi(C){return xo(C)+""}var _i=nn.prototype=new xt;_i.brighter=function(C){C=Math.pow(.7,arguments.length?C:1);var z=this.r,B=this.g,V=this.b,W=30;return!z&&!B&&!V?new nn(W,W,W):(z&&z>4,V=V>>4|V,W=fe&240,W=W>>4|W,J=fe&15,J=J<<4|J):C.length===7&&(V=(fe&16711680)>>16,W=(fe&65280)>>8,J=fe&255)),z(V,W,J))}function vt(C,z,B){var V=Math.min(C/=255,z/=255,B/=255),W=Math.max(C,z,B),J=W-V,le,ie,fe=(W+V)/2;return J?(ie=fe<.5?J/(W+V):J/(2-W-V),C==W?le=(z-B)/J+(z0&&fe<1?0:le),new zr(le,ie,fe)}function gr(C,z,B){C=mn(C),z=mn(z),B=mn(B);var V=Yi((.4124564*C+.3575761*z+.1804375*B)/Ft),W=Yi((.2126729*C+.7151522*z+.072175*B)/ha),J=Yi((.0193339*C+.119192*z+.9503041*B)/Qn);return Rt(116*W-16,500*(V-W),200*(W-J))}function mn(C){return(C/=255)<=.04045?C/12.92:Math.pow((C+.055)/1.055,2.4)}function bt(C){var z=parseFloat(C);return C.charAt(C.length-1)==="%"?Math.round(z*2.55):z}var xn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});xn.forEach(function(C,z){xn.set(C,xo(z))});function Xr(C){return typeof C=="function"?C:function(){return C}}e.functor=Xr,e.xhr=Wa(N);function Wa(C){return function(z,B,V){return arguments.length===2&&typeof B=="function"&&(V=B,B=null),hl(z,B,C,V)}}function hl(C,z,B,V){var W={},J=e.dispatch("beforesend","progress","load","error"),le={},ie=new XMLHttpRequest,fe=null;self.XDomainRequest&&!("withCredentials"in ie)&&/^(http(s)?:)?\/\//.test(C)&&(ie=new XDomainRequest),"onload"in ie?ie.onload=ie.onerror=xe:ie.onreadystatechange=function(){ie.readyState>3&&xe()};function xe(){var _e=ie.status,Ie;if(!_e&&Sq(ie)||_e>=200&&_e<300||_e===304){try{Ie=B.call(W,ie)}catch(Ne){J.error.call(W,Ne);return}J.load.call(W,Ie)}else J.error.call(W,ie)}return ie.onprogress=function(_e){var Ie=e.event;e.event=_e;try{J.progress.call(W,ie)}finally{e.event=Ie}},W.header=function(_e,Ie){return _e=(_e+"").toLowerCase(),arguments.length<2?le[_e]:(Ie==null?delete le[_e]:le[_e]=Ie+"",W)},W.mimeType=function(_e){return arguments.length?(z=_e==null?null:_e+"",W):z},W.responseType=function(_e){return arguments.length?(fe=_e,W):fe},W.response=function(_e){return B=_e,W},["get","post"].forEach(function(_e){W[_e]=function(){return W.send.apply(W,[_e].concat(t(arguments)))}}),W.send=function(_e,Ie,Ne){if(arguments.length===2&&typeof Ie=="function"&&(Ne=Ie,Ie=null),ie.open(_e,C,!0),z!=null&&!("accept"in le)&&(le.accept=z+",*/*"),ie.setRequestHeader)for(var $e in le)ie.setRequestHeader($e,le[$e]);return z!=null&&ie.overrideMimeType&&ie.overrideMimeType(z),fe!=null&&(ie.responseType=fe),Ne!=null&&W.on("error",Ne).on("load",function(rr){Ne(null,rr)}),J.beforesend.call(W,ie),ie.send(Ie==null?null:Ie),W},W.abort=function(){return ie.abort(),W},e.rebind(W,J,"on"),V==null?W:W.get(kq(V))}function kq(C){return C.length===1?function(z,B){C(z==null?B:null)}:C}function Sq(C){var z=C.responseType;return z&&z!=="text"?C.response:C.responseText}e.dsv=function(C,z){var B=new RegExp('["'+C+` +"use strict";var Plotly=(()=>{var ab=Object.defineProperty;var kB=Object.getOwnPropertyDescriptor;var SB=Object.getOwnPropertyNames;var CB=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var pe=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var EB=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of SB(r))!CB.call(e,a)&&a!==t&&ab(e,a,{get:()=>r[a],enumerable:!(n=kB(r,a))||n.enumerable});return e};var LB=e=>EB(ab({},"__esModule",{value:!0}),e);var pc=pe(ob=>{"use strict";ob.version="3.0.3"});var sb=pe((lb,gc)=>{(function(r,t,n){t[r]=t[r]||n(),typeof gc!="undefined"&&gc.exports&&(gc.exports=t[r])})("Promise",typeof window!="undefined"?window:lb,function(){"use strict";var r,t,n,a=Object.prototype.toString,o=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(k,S,x,T){return Object.defineProperty(k,S,{value:x,writable:!0,configurable:T!==!1})}}catch(m){r=function(S,x,T){return S[x]=T,S}}n=function(){var k,S,x;function T(d,_){this.fn=d,this.self=_,this.next=void 0}return{add:function(_,g){x=new T(_,g),S?S.next=x:k=x,S=x,x=void 0},drain:function(){var _=k;for(k=S=t=void 0;_;)_.fn.call(_.self),_=_.next}}}();function i(m,k){n.add(m,k),t||(t=o(n.drain))}function l(m){var k,S=typeof m;return m!=null&&(S=="object"||S=="function")&&(k=m.then),typeof k=="function"?k:!1}function u(){for(var m=0;m0&&i(u,S))}catch(x){v.call(new b(S),x)}}}function v(m){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=m,k.state=2,k.chain.length>0&&i(u,k))}function p(m,k,S,x){for(var T=0;T{(function(){var e={version:"3.8.2"},r=[].slice,t=function(C){return r.call(C)},n=self.document;function a(C){return C&&(C.ownerDocument||C.document||C).documentElement}function o(C){return C&&(C.ownerDocument&&C.ownerDocument.defaultView||C.document&&C||C.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(C){t=function(z){for(var B=z.length,V=new Array(B);B--;)V[B]=z[B];return V}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(C){var i=this.Element.prototype,l=i.setAttribute,u=i.setAttributeNS,s=this.CSSStyleDeclaration.prototype,f=s.setProperty;i.setAttribute=function(z,B){l.call(this,z,B+"")},i.setAttributeNS=function(z,B,V){u.call(this,z,B,V+"")},s.setProperty=function(z,B,V){f.call(this,z,B+"",V)}}e.ascending=v;function v(C,z){return Cz?1:C>=z?0:NaN}e.descending=function(C,z){return zC?1:z>=C?0:NaN},e.min=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BJ&&(W=J)}else{for(;++B=J){W=J;break}for(;++BJ&&(W=J)}return W},e.max=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BW&&(W=J)}else{for(;++B=J){W=J;break}for(;++BW&&(W=J)}return W},e.extent=function(C,z){var B=-1,V=C.length,W,J,le;if(arguments.length===1){for(;++B=J){W=le=J;break}for(;++BJ&&(W=J),le=J){W=le=J;break}for(;++BJ&&(W=J),le1)return le/(fe-1)},e.deviation=function(){var C=e.variance.apply(this,arguments);return C&&Math.sqrt(C)};function y(C){return{left:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)<0?V=J+1:W=J}return V},right:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)>0?W=J:V=J+1}return V}}}var w=y(v);e.bisectLeft=w.left,e.bisect=e.bisectRight=w.right,e.bisector=function(C){return y(C.length===1?function(z,B){return v(C(z),B)}:C)},e.shuffle=function(C,z,B){(V=arguments.length)<3&&(B=C.length,V<2&&(z=0));for(var V=B-z,W,J;V;)J=Math.random()*V--|0,W=C[V+z],C[V+z]=C[J+z],C[J+z]=W;return C},e.permute=function(C,z){for(var B=z.length,V=new Array(B);B--;)V[B]=C[z[B]];return V},e.pairs=function(C){for(var z=0,B=C.length-1,V,W=C[0],J=new Array(B<0?0:B);z=0;)for(le=C[z],B=le.length;--B>=0;)J[--W]=le[B];return J};var m=Math.abs;e.range=function(C,z,B){if(arguments.length<3&&(B=1,arguments.length<2&&(z=C,C=0)),(z-C)/B===1/0)throw new Error("infinite range");var V=[],W=k(m(B)),J=-1,le;if(C*=W,z*=W,B*=W,B<0)for(;(le=C+B*++J)>z;)V.push(le/W);else for(;(le=C+B*++J)=z.length)return W?W.call(C,fe):V?fe.sort(V):fe;for(var _e=-1,Ie=fe.length,Ne=z[xe++],$e,rr,qe,He=new x,Xe;++_e=z.length)return ie;var xe=[],_e=B[fe++];return ie.forEach(function(Ie,Ne){xe.push({key:Ie,values:le(Ne,fe)})}),_e?xe.sort(function(Ie,Ne){return _e(Ie.key,Ne.key)}):xe}return C.map=function(ie,fe){return J(fe,ie,0)},C.entries=function(ie){return le(J(e.map,ie,0),0)},C.key=function(ie){return z.push(ie),C},C.sortKeys=function(ie){return B[z.length-1]=ie,C},C.sortValues=function(ie){return V=ie,C},C.rollup=function(ie){return W=ie,C},C},e.set=function(C){var z=new D;if(C)for(var B=0,V=C.length;B=0&&(V=C.slice(B+1),C=C.slice(0,B)),C)return arguments.length<2?this[C].on(V):this[C].on(V,z);if(arguments.length===2){if(z==null)for(C in this)this.hasOwnProperty(C)&&this[C].on(V,null);return this}};function U(C){var z=[],B=new x;function V(){for(var W=z,J=-1,le=W.length,ie;++J=0&&(B=C.slice(0,z))!=="xmlns"&&(C=C.slice(z+1)),te.hasOwnProperty(B)?{space:te[B],local:C}:C}},ee.attr=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node();return C=e.ns.qualify(C),C.local?B.getAttributeNS(C.space,C.local):B.getAttribute(C)}for(z in C)this.each(ue(z,C[z]));return this}return this.each(ue(C,z))};function ue(C,z){C=e.ns.qualify(C);function B(){this.removeAttribute(C)}function V(){this.removeAttributeNS(C.space,C.local)}function W(){this.setAttribute(C,z)}function J(){this.setAttributeNS(C.space,C.local,z)}function le(){var fe=z.apply(this,arguments);fe==null?this.removeAttribute(C):this.setAttribute(C,fe)}function ie(){var fe=z.apply(this,arguments);fe==null?this.removeAttributeNS(C.space,C.local):this.setAttributeNS(C.space,C.local,fe)}return z==null?C.local?V:B:typeof z=="function"?C.local?ie:le:C.local?J:W}function de(C){return C.trim().replace(/\s+/g," ")}ee.classed=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node(),V=(C=Me(C)).length,W=-1;if(z=B.classList){for(;++W=0;)(J=B[V])&&(W&&W!==J.nextSibling&&W.parentNode.insertBefore(J,W),W=J);return this},ee.sort=function(C){C=Te.apply(this,arguments);for(var z=-1,B=this.length;++z=z&&(z=W+1);!(fe=le[z])&&++z0&&(C=C.slice(0,W));var le=be.get(C);le&&(C=le,J=ze);function ie(){var _e=this[V];_e&&(this.removeEventListener(C,_e,_e.$),delete this[V])}function fe(){var _e=J(z,t(arguments));ie.call(this),this.addEventListener(C,this[V]=_e,_e.$=B),_e._=z}function xe(){var _e=new RegExp("^__on([^.]+)"+e.requote(C)+"$"),Ie;for(var Ne in this)if(Ie=Ne.match(_e)){var $e=this[Ne];this.removeEventListener(Ie[1],$e,$e.$),delete this[Ne]}}return W?z?fe:ie:z?P:xe}var be=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&be.forEach(function(C){"on"+C in n&&be.remove(C)});function Se(C,z){return function(B){var V=e.event;e.event=B,z[0]=this.__data__;try{C.apply(this,z)}finally{e.event=V}}}function ze(C,z){var B=Se(C,z);return function(V){var W=this,J=V.relatedTarget;(!J||J!==W&&!(J.compareDocumentPosition(W)&8))&&B.call(W,V)}}var Fe,Ze=0;function Ye(C){var z=".dragsuppress-"+ ++Ze,B="click"+z,V=e.select(o(C)).on("touchmove"+z,X).on("dragstart"+z,X).on("selectstart"+z,X);if(Fe==null&&(Fe="onselectstart"in C?!1:F(C.style,"userSelect")),Fe){var W=a(C).style,J=W[Fe];W[Fe]="none"}return function(le){if(V.on(z,null),Fe&&(W[Fe]=J),le){var ie=function(){V.on(B,null)};V.on(B,function(){X(),ie()},!0),setTimeout(ie,0)}}}e.mouse=function(C){return We(C,j())};var Ge=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function We(C,z){z.changedTouches&&(z=z.changedTouches[0]);var B=C.ownerSVGElement||C;if(B.createSVGPoint){var V=B.createSVGPoint();if(Ge<0){var W=o(C);if(W.scrollX||W.scrollY){B=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var J=B[0][0].getScreenCTM();Ge=!(J.f||J.e),B.remove()}}return Ge?(V.x=z.pageX,V.y=z.pageY):(V.x=z.clientX,V.y=z.clientY),V=V.matrixTransform(C.getScreenCTM().inverse()),[V.x,V.y]}var le=C.getBoundingClientRect();return[z.clientX-le.left-C.clientLeft,z.clientY-le.top-C.clientTop]}e.touch=function(C,z,B){if(arguments.length<3&&(B=z,z=j().changedTouches),z){for(var V=0,W=z.length,J;V0?1:C<0?-1:0}function je(C,z,B){return(z[0]-C[0])*(B[1]-C[1])-(z[1]-C[1])*(B[0]-C[0])}function nr(C){return C>1?0:C<-1?Ve:Math.acos(C)}function hr(C){return C>1?K:C<-1?-K:Math.asin(C)}function wr(C){return((C=Math.exp(C))-1/C)/2}function Cr(C){return((C=Math.exp(C))+1/C)/2}function Tr(C){return((C=Math.exp(2*C))-1)/(C+1)}function Ar(C){return(C=Math.sin(C/2))*C}var ft=Math.SQRT2,Yr=2,mr=4;e.interpolateZoom=function(C,z){var B=C[0],V=C[1],W=C[2],J=z[0],le=z[1],ie=z[2],fe=J-B,xe=le-V,_e=fe*fe+xe*xe,Ie,Ne;if(_e0&&(vr=vr.transition().duration(le)),vr.call(tr.event)}function br(){He&&He.domain(qe.range().map(function(vr){return(vr-C.x)/C.k}).map(qe.invert)),er&&er.domain(Xe.range().map(function(vr){return(vr-C.y)/C.k}).map(Xe.invert))}function _r(vr){ie++||vr({type:"zoomstart"})}function qr(vr){br(),vr({type:"zoom",scale:C.k,translate:[C.x,C.y]})}function Mr(vr){--ie||(vr({type:"zoomend"}),B=null)}function Pr(){var vr=this,Or=rr.of(vr,arguments),Vr=0,st=e.select(o(vr)).on(xe,bn).on(_e,In),Pt=Ke(e.mouse(vr)),$t=Ye(vr);cc.call(vr),_r(Or);function bn(){Vr=1,yr(e.mouse(vr),Pt),qr(Or)}function In(){st.on(xe,null).on(_e,null),$t(Vr),Mr(Or)}}function lt(){var vr=this,Or=rr.of(vr,arguments),Vr={},st=0,Pt,$t=".zoom-"+e.event.changedTouches[0].identifier,bn="touchmove"+$t,In="touchend"+$t,Gn=[],Nn=e.select(vr),$n=Ye(vr);jn(),_r(Or),Nn.on(fe,null).on(Ne,jn);function An(){var Za=e.touches(vr);return Pt=C.k,Za.forEach(function(_n){_n.identifier in Vr&&(Vr[_n.identifier]=Ke(_n))}),Za}function jn(){var Za=e.event.target;e.select(Za).on(bn,ml).on(In,AB),Gn.push(Za);for(var _n=e.event.changedTouches,Ta=0,Mi=_n.length;Ta1){var xl=Aa[0],_o=Aa[1],dc=xl[0]-_o[0],nb=xl[1]-_o[1];st=dc*dc+nb*nb}}function ml(){var Za=e.touches(vr),_n,Ta,Mi,Aa;cc.call(vr);for(var As=0,xl=Za.length;As1?1:z,B=B<0?0:B>1?1:B,W=B<=.5?B*(1+z):B+z-B*z,V=2*B-W;function J(ie){return ie>360?ie-=360:ie<0&&(ie+=360),ie<60?V+(W-V)*ie/60:ie<180?W:ie<240?V+(W-V)*(240-ie)/60:V}function le(ie){return Math.round(J(ie)*255)}return new nn(le(C+120),le(C),le(C-120))}e.hcl=Lt;function Lt(C,z,B){return this instanceof Lt?(this.h=+C,this.c=+z,void(this.l=+B)):arguments.length<2?C instanceof Lt?new Lt(C.h,C.c,C.l):C instanceof Rt?xi(C.l,C.a,C.b):xi((C=gr((C=e.rgb(C)).r,C.g,C.b)).l,C.a,C.b):new Lt(C,z,B)}var yn=Lt.prototype=new xt;yn.brighter=function(C){return new Lt(this.h,this.c,Math.min(100,this.l+nt*(arguments.length?C:1)))},yn.darker=function(C){return new Lt(this.h,this.c,Math.max(0,this.l-nt*(arguments.length?C:1)))},yn.rgb=function(){return Gt(this.h,this.c,this.l).rgb()};function Gt(C,z,B){return isNaN(C)&&(C=0),isNaN(z)&&(z=0),new Rt(B,Math.cos(C*=ae)*z,Math.sin(C)*z)}e.lab=Rt;function Rt(C,z,B){return this instanceof Rt?(this.l=+C,this.a=+z,void(this.b=+B)):arguments.length<2?C instanceof Rt?new Rt(C.l,C.a,C.b):C instanceof Lt?Gt(C.h,C.c,C.l):gr((C=nn(C)).r,C.g,C.b):new Rt(C,z,B)}var nt=18,Ft=.95047,ha=1,Qn=1.08883,Fn=Rt.prototype=new xt;Fn.brighter=function(C){return new Rt(Math.min(100,this.l+nt*(arguments.length?C:1)),this.a,this.b)},Fn.darker=function(C){return new Rt(Math.max(0,this.l-nt*(arguments.length?C:1)),this.a,this.b)},Fn.rgb=function(){return wa(this.l,this.a,this.b)};function wa(C,z,B){var V=(C+16)/116,W=V+z/500,J=V-B/200;return W=Gi(W)*Ft,V=Gi(V)*ha,J=Gi(J)*Qn,new nn(Wi(3.2404542*W-1.5371385*V-.4985314*J),Wi(-.969266*W+1.8760108*V+.041556*J),Wi(.0556434*W-.2040259*V+1.0572252*J))}function xi(C,z,B){return C>0?new Lt(Math.atan2(B,z)*Re,Math.sqrt(z*z+B*B),C):new Lt(NaN,NaN,C)}function Gi(C){return C>.206893034?C*C*C:(C-4/29)/7.787037}function Yi(C){return C>.008856?Math.pow(C,1/3):7.787037*C+4/29}function Wi(C){return Math.round(255*(C<=.00304?12.92*C:1.055*Math.pow(C,1/2.4)-.055))}e.rgb=nn;function nn(C,z,B){return this instanceof nn?(this.r=~~C,this.g=~~z,void(this.b=~~B)):arguments.length<2?C instanceof nn?new nn(C.r,C.g,C.b):at(""+C,nn,Ot):new nn(C,z,B)}function xo(C){return new nn(C>>16,C>>8&255,C&255)}function bi(C){return xo(C)+""}var _i=nn.prototype=new xt;_i.brighter=function(C){C=Math.pow(.7,arguments.length?C:1);var z=this.r,B=this.g,V=this.b,W=30;return!z&&!B&&!V?new nn(W,W,W):(z&&z>4,V=V>>4|V,W=fe&240,W=W>>4|W,J=fe&15,J=J<<4|J):C.length===7&&(V=(fe&16711680)>>16,W=(fe&65280)>>8,J=fe&255)),z(V,W,J))}function vt(C,z,B){var V=Math.min(C/=255,z/=255,B/=255),W=Math.max(C,z,B),J=W-V,le,ie,fe=(W+V)/2;return J?(ie=fe<.5?J/(W+V):J/(2-W-V),C==W?le=(z-B)/J+(z0&&fe<1?0:le),new zr(le,ie,fe)}function gr(C,z,B){C=mn(C),z=mn(z),B=mn(B);var V=Yi((.4124564*C+.3575761*z+.1804375*B)/Ft),W=Yi((.2126729*C+.7151522*z+.072175*B)/ha),J=Yi((.0193339*C+.119192*z+.9503041*B)/Qn);return Rt(116*W-16,500*(V-W),200*(W-J))}function mn(C){return(C/=255)<=.04045?C/12.92:Math.pow((C+.055)/1.055,2.4)}function bt(C){var z=parseFloat(C);return C.charAt(C.length-1)==="%"?Math.round(z*2.55):z}var xn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});xn.forEach(function(C,z){xn.set(C,xo(z))});function Xr(C){return typeof C=="function"?C:function(){return C}}e.functor=Xr,e.xhr=Wa(N);function Wa(C){return function(z,B,V){return arguments.length===2&&typeof B=="function"&&(V=B,B=null),hl(z,B,C,V)}}function hl(C,z,B,V){var W={},J=e.dispatch("beforesend","progress","load","error"),le={},ie=new XMLHttpRequest,fe=null;self.XDomainRequest&&!("withCredentials"in ie)&&/^(http(s)?:)?\/\//.test(C)&&(ie=new XDomainRequest),"onload"in ie?ie.onload=ie.onerror=xe:ie.onreadystatechange=function(){ie.readyState>3&&xe()};function xe(){var _e=ie.status,Ie;if(!_e&&Sq(ie)||_e>=200&&_e<300||_e===304){try{Ie=B.call(W,ie)}catch(Ne){J.error.call(W,Ne);return}J.load.call(W,Ie)}else J.error.call(W,ie)}return ie.onprogress=function(_e){var Ie=e.event;e.event=_e;try{J.progress.call(W,ie)}finally{e.event=Ie}},W.header=function(_e,Ie){return _e=(_e+"").toLowerCase(),arguments.length<2?le[_e]:(Ie==null?delete le[_e]:le[_e]=Ie+"",W)},W.mimeType=function(_e){return arguments.length?(z=_e==null?null:_e+"",W):z},W.responseType=function(_e){return arguments.length?(fe=_e,W):fe},W.response=function(_e){return B=_e,W},["get","post"].forEach(function(_e){W[_e]=function(){return W.send.apply(W,[_e].concat(t(arguments)))}}),W.send=function(_e,Ie,Ne){if(arguments.length===2&&typeof Ie=="function"&&(Ne=Ie,Ie=null),ie.open(_e,C,!0),z!=null&&!("accept"in le)&&(le.accept=z+",*/*"),ie.setRequestHeader)for(var $e in le)ie.setRequestHeader($e,le[$e]);return z!=null&&ie.overrideMimeType&&ie.overrideMimeType(z),fe!=null&&(ie.responseType=fe),Ne!=null&&W.on("error",Ne).on("load",function(rr){Ne(null,rr)}),J.beforesend.call(W,ie),ie.send(Ie==null?null:Ie),W},W.abort=function(){return ie.abort(),W},e.rebind(W,J,"on"),V==null?W:W.get(kq(V))}function kq(C){return C.length===1?function(z,B){C(z==null?B:null)}:C}function Sq(C){var z=C.responseType;return z&&z!=="text"?C.response:C.responseText}e.dsv=function(C,z){var B=new RegExp('["'+C+` ]`),V=C.charCodeAt(0);function W(xe,_e,Ie){arguments.length<3&&(Ie=_e,_e=null);var Ne=hl(xe,z,_e==null?J:le(_e),Ie);return Ne.row=function($e){return arguments.length?Ne.response((_e=$e)==null?J:le($e)):_e},Ne}function J(xe){return W.parse(xe.responseText)}function le(xe){return function(_e){return W.parse(_e.responseText,xe)}}W.parse=function(xe,_e){var Ie;return W.parseRows(xe,function(Ne,$e){if(Ie)return Ie(Ne,$e-1);var rr=function(qe){for(var He={},Xe=Ne.length,er=0;er=rr)return Ne;if(er)return er=!1,Ie;var or=qe;if(xe.charCodeAt(or)===34){for(var dr=or;dr++24?(isFinite(z)&&(clearTimeout(J0),J0=setTimeout(Rd,z)),Z0=0):(Z0=1,V5(Rd))}e.timer.flush=function(){G5(),Y5()};function G5(){for(var C=Date.now(),z=W0;z;)C>=z.t&&z.c(C-z.t)&&(z.c=null),z=z.n;return C}function Y5(){for(var C,z=W0,B=1/0;z;)z.c?(z.t=0;--ie)qe.push(W[xe[Ie[ie]][2]]);for(ie=+$e;ie1&&je(C[B[V-2]],C[B[V-1]],C[W])<=0;)--V;B[V++]=W}return B.slice(0,V)}function Cq(C,z){return C[0]-z[0]||C[1]-z[1]}e.geom.polygon=function(C){return q(C,Q0),C};var Q0=e.geom.polygon.prototype=[];Q0.area=function(){for(var C=-1,z=this.length,B,V=this[z-1],W=0;++CPe)ie=ie.L;else if(le=z-Dq(ie,B),le>Pe){if(!ie.R){V=ie;break}ie=ie.R}else{J>-Pe?(V=ie.P,W=ie):le>-Pe?(V=ie,W=ie.N):V=W=ie;break}var fe=K5(C);if(_s.insert(V,fe),!(!V&&!W)){if(V===W){Ms(V),W=K5(V.site),_s.insert(fe,W),fe.edge=W.edge=Ku(V.site,fe.site),ws(V),ws(W);return}if(!W){fe.edge=Ku(V.site,fe.site);return}Ms(V),Ms(W);var xe=V.site,_e=xe.x,Ie=xe.y,Ne=C.x-_e,$e=C.y-Ie,rr=W.site,qe=rr.x-_e,He=rr.y-Ie,Xe=2*(Ne*He-$e*qe),er=Ne*Ne+$e*$e,tr=qe*qe+He*He,Ke={x:(He*er-$e*tr)/Xe+_e,y:(Ne*tr-qe*er)/Xe+Ie};$0(W.edge,xe,rr,Ke),fe.edge=Ku(xe,C,null,Ke),W.edge=Ku(C,rr,null,Ke),ws(V),ws(W)}}function Q5(C,z){var B=C.site,V=B.x,W=B.y,J=W-z;if(!J)return V;var le=C.P;if(!le)return-1/0;B=le.site;var ie=B.x,fe=B.y,xe=fe-z;if(!xe)return ie;var _e=ie-V,Ie=1/J-1/xe,Ne=_e/xe;return Ie?(-Ne+Math.sqrt(Ne*Ne-2*Ie*(_e*_e/(-2*xe)-fe+xe/2+W-J/2)))/Ie+V:(V+ie)/2}function Dq(C,z){var B=C.N;if(B)return Q5(B,z);var V=C.site;return V.y===z?V.x:1/0}function $5(C){this.site=C,this.edges=[]}$5.prototype.prepare=function(){for(var C=this.edges,z=C.length,B;z--;)B=C[z].edge,(!B.b||!B.a)&&C.splice(z,1);return C.sort(j5),C.length};function Pq(C){for(var z=C[0][0],B=C[1][0],V=C[0][1],W=C[1][1],J,le,ie,fe,xe=dl,_e=xe.length,Ie,Ne,$e,rr,qe,He;_e--;)if(Ie=xe[_e],!(!Ie||!Ie.prepare()))for($e=Ie.edges,rr=$e.length,Ne=0;NePe||m(fe-le)>Pe)&&($e.splice(Ne,0,new j0(qq(Ie.site,He,m(ie-z)Pe?{x:z,y:m(J-z)Pe?{x:m(le-W)Pe?{x:B,y:m(J-B)Pe?{x:m(le-V)=-Qe)){var Ne=fe*fe+xe*xe,$e=_e*_e+He*He,rr=(He*Ne-xe*$e)/Ie,qe=(fe*$e-_e*Ne)/Ie,He=qe+ie,Xe=J5.pop()||new Fq;Xe.arc=C,Xe.site=W,Xe.x=rr+le,Xe.y=He+Math.sqrt(rr*rr+qe*qe),Xe.cy=He,C.circle=Xe;for(var er=null,tr=Ju._;tr;)if(Xe.y0)){if(qe/=$e,$e<0){if(qe0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}if(qe=B-ie,!(!$e&&qe<0)){if(qe/=$e,$e<0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}else if($e>0){if(qe0)){if(qe/=rr,rr<0){if(qe0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}if(qe=V-fe,!(!rr&&qe<0)){if(qe/=rr,rr<0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}else if(rr>0){if(qe0&&(W.a={x:ie+Ie*$e,y:fe+Ie*rr}),Ne<1&&(W.b={x:ie+Ne*$e,y:fe+Ne*rr}),W}}}}}}function Nq(C){for(var z=bs,B=Iq(C[0][0],C[0][1],C[1][0],C[1][1]),V=z.length,W;V--;)W=z[V],(!zq(W,C)||!B(W)||m(W.a.x-W.b.x)=J)return;if(_e>Ne){if(!V)V={x:rr,y:le};else if(V.y>=ie)return;B={x:rr,y:ie}}else{if(!V)V={x:rr,y:ie};else if(V.y1)if(_e>Ne){if(!V)V={x:(le-Xe)/He,y:le};else if(V.y>=ie)return;B={x:(ie-Xe)/He,y:ie}}else{if(!V)V={x:(ie-Xe)/He,y:ie};else if(V.y=J)return;B={x:J,y:He*J+Xe}}else{if(!V)V={x:J,y:He*J+Xe};else if(V.x=_e&&Xe.x<=Ne&&Xe.y>=Ie&&Xe.y<=$e?[[_e,$e],[Ne,$e],[Ne,Ie],[_e,Ie]]:[];er.point=fe[qe]}),xe}function ie(fe){return fe.map(function(xe,_e){return{x:Math.round(V(xe,_e)/Pe)*Pe,y:Math.round(W(xe,_e)/Pe)*Pe,i:_e}})}return le.links=function(fe){return zd(ie(fe)).edges.filter(function(xe){return xe.l&&xe.r}).map(function(xe){return{source:fe[xe.l.i],target:fe[xe.r.i]}})},le.triangles=function(fe){var xe=[];return zd(ie(fe)).cells.forEach(function(_e,Ie){for(var Ne=_e.site,$e=_e.edges.sort(j5),rr=-1,qe=$e.length,He,Xe,er=$e[qe-1].edge,tr=er.l===Ne?er.r:er.l;++rrtr&&(tr=_e.x),_e.y>Ke&&(Ke=_e.y),$e.push(_e.x),rr.push(_e.y);else for(qe=0;qetr&&(tr=or),dr>Ke&&(Ke=dr),$e.push(or),rr.push(dr)}var yr=tr-Xe,pr=Ke-er;yr>pr?Ke=er+yr:tr=Xe+pr;function br(Mr,Pr,lt,Bt,dt,vr,Or,Vr){if(!(isNaN(lt)||isNaN(Bt)))if(Mr.leaf){var st=Mr.x,Pt=Mr.y;if(st!=null)if(m(st-lt)+m(Pt-Bt)<.01)_r(Mr,Pr,lt,Bt,dt,vr,Or,Vr);else{var $t=Mr.point;Mr.x=Mr.y=Mr.point=null,_r(Mr,$t,st,Pt,dt,vr,Or,Vr),_r(Mr,Pr,lt,Bt,dt,vr,Or,Vr)}else Mr.x=lt,Mr.y=Bt,Mr.point=Pr}else _r(Mr,Pr,lt,Bt,dt,vr,Or,Vr)}function _r(Mr,Pr,lt,Bt,dt,vr,Or,Vr){var st=(dt+Or)*.5,Pt=(vr+Vr)*.5,$t=lt>=st,bn=Bt>=Pt,In=bn<<1|$t;Mr.leaf=!1,Mr=Mr.nodes[In]||(Mr.nodes[In]=tx()),$t?dt=st:Or=st,bn?vr=Pt:Vr=Pt,br(Mr,Pr,lt,Bt,dt,vr,Or,Vr)}var qr=tx();if(qr.add=function(Mr){br(qr,Mr,+Ie(Mr,++qe),+Ne(Mr,qe),Xe,er,tr,Ke)},qr.visit=function(Mr){ju(Mr,qr,Xe,er,tr,Ke)},qr.find=function(Mr){return Vq(qr,Mr[0],Mr[1],Xe,er,tr,Ke)},qe=-1,z==null){for(;++qeJ||Ne>le||$e=or,pr=B>=dr,br=pr<<1|yr,_r=br+4;br<_r;++br)if(_e=Ke[br&3])switch(br&3){case 0:xe(_e,Ie,Ne,or,dr);break;case 1:xe(_e,or,Ne,$e,dr);break;case 2:xe(_e,Ie,dr,or,rr);break;case 3:xe(_e,or,dr,$e,rr);break}}}(C,V,W,J,le),fe}e.interpolateRgb=qd;function qd(C,z){C=e.rgb(C),z=e.rgb(z);var B=C.r,V=C.g,W=C.b,J=z.r-B,le=z.g-V,ie=z.b-W;return function(fe){return"#"+kr(Math.round(B+J*fe))+kr(Math.round(V+le*fe))+kr(Math.round(W+ie*fe))}}e.interpolateObject=nx;function nx(C,z){var B={},V={},W;for(W in C)W in z?B[W]=pl(C[W],z[W]):V[W]=C[W];for(W in z)W in C||(V[W]=z[W]);return function(J){for(W in B)V[W]=B[W](J);return V}}e.interpolateNumber=Xi;function Xi(C,z){return C=+C,z=+z,function(B){return C*(1-B)+z*B}}e.interpolateString=ax;function ax(C,z){var B=Od.lastIndex=Bd.lastIndex=0,V,W,J,le=-1,ie=[],fe=[];for(C=C+"",z=z+"";(V=Od.exec(C))&&(W=Bd.exec(z));)(J=W.index)>B&&(J=z.slice(B,J),ie[le]?ie[le]+=J:ie[++le]=J),(V=V[0])===(W=W[0])?ie[le]?ie[le]+=W:ie[++le]=W:(ie[++le]=null,fe.push({i:le,x:Xi(V,W)})),B=Bd.lastIndex;return B=0&&!(V=e.interpolators[B](C,z)););return V}e.interpolators=[function(C,z){var B=typeof z;return(B==="string"?xn.has(z.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(z)?qd:ax:z instanceof xt?qd:Array.isArray(z)?tc:B==="object"&&isNaN(z)?nx:Xi)(C,z)}],e.interpolateArray=tc;function tc(C,z){var B=[],V=[],W=C.length,J=z.length,le=Math.min(C.length,z.length),ie;for(ie=0;ie=0?C.slice(0,z):C,V=z>=0?C.slice(z+1):"in";return B=Gq.get(B)||ix,V=Yq.get(V)||N,Wq(V(B.apply(null,r.call(arguments,1))))};function Wq(C){return function(z){return z<=0?0:z>=1?1:C(z)}}function ox(C){return function(z){return 1-C(1-z)}}function lx(C){return function(z){return .5*(z<.5?C(2*z):2-C(2-2*z))}}function Xq(C){return C*C}function Zq(C){return C*C*C}function Jq(C){if(C<=0)return 0;if(C>=1)return 1;var z=C*C,B=z*C;return 4*(C<.5?B:3*(C-z)+B-.75)}function Kq(C){return function(z){return Math.pow(z,C)}}function Qq(C){return 1-Math.cos(C*K)}function $q(C){return Math.pow(2,10*(C-1))}function jq(C){return 1-Math.sqrt(1-C*C)}function eO(C,z){var B;return arguments.length<2&&(z=.45),arguments.length?B=z/ar*Math.asin(1/C):(C=1,B=z/4),function(V){return 1+C*Math.pow(2,-10*V)*Math.sin((V-B)*ar/z)}}function rO(C){return C||(C=1.70158),function(z){return z*z*((C+1)*z-C)}}function tO(C){return C<1/2.75?7.5625*C*C:C<2/2.75?7.5625*(C-=1.5/2.75)*C+.75:C<2.5/2.75?7.5625*(C-=2.25/2.75)*C+.9375:7.5625*(C-=2.625/2.75)*C+.984375}e.interpolateHcl=nO;function nO(C,z){C=e.hcl(C),z=e.hcl(z);var B=C.h,V=C.c,W=C.l,J=z.h-B,le=z.c-V,ie=z.l-W;return isNaN(le)&&(le=0,V=isNaN(V)?z.c:V),isNaN(J)?(J=0,B=isNaN(B)?z.h:B):J>180?J-=360:J<-180&&(J+=360),function(fe){return Gt(B+J*fe,V+le*fe,W+ie*fe)+""}}e.interpolateHsl=aO;function aO(C,z){C=e.hsl(C),z=e.hsl(z);var B=C.h,V=C.s,W=C.l,J=z.h-B,le=z.s-V,ie=z.l-W;return isNaN(le)&&(le=0,V=isNaN(V)?z.s:V),isNaN(J)?(J=0,B=isNaN(B)?z.h:B):J>180?J-=360:J<-180&&(J+=360),function(fe){return Ot(B+J*fe,V+le*fe,W+ie*fe)+""}}e.interpolateLab=iO;function iO(C,z){C=e.lab(C),z=e.lab(z);var B=C.l,V=C.a,W=C.b,J=z.l-B,le=z.a-V,ie=z.b-W;return function(fe){return wa(B+J*fe,V+le*fe,W+ie*fe)+""}}e.interpolateRound=sx;function sx(C,z){return z-=C,function(B){return Math.round(C+z*B)}}e.transform=function(C){var z=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(B){if(B!=null){z.setAttribute("transform",B);var V=z.transform.baseVal.consolidate()}return new ux(V?V.matrix:lO)})(C)};function ux(C){var z=[C.a,C.b],B=[C.c,C.d],V=cx(z),W=fx(z,B),J=cx(oO(B,z,-W))||0;z[0]*B[1]180?z+=360:z-C>180&&(C+=360),V.push({i:B.push(Ts(B)+"rotate(",null,")")-2,x:Xi(C,z)})):z&&B.push(Ts(B)+"rotate("+z+")")}function fO(C,z,B,V){C!==z?V.push({i:B.push(Ts(B)+"skewX(",null,")")-2,x:Xi(C,z)}):z&&B.push(Ts(B)+"skewX("+z+")")}function cO(C,z,B,V){if(C[0]!==z[0]||C[1]!==z[1]){var W=B.push(Ts(B)+"scale(",null,",",null,")");V.push({i:W-4,x:Xi(C[0],z[0])},{i:W-2,x:Xi(C[1],z[1])})}else(z[0]!==1||z[1]!==1)&&B.push(Ts(B)+"scale("+z+")")}function vx(C,z){var B=[],V=[];return C=e.transform(C),z=e.transform(z),sO(C.translate,z.translate,B,V),uO(C.rotate,z.rotate,B,V),fO(C.skew,z.skew,B,V),cO(C.scale,z.scale,B,V),C=z=null,function(W){for(var J=-1,le=V.length,ie;++J0?J=Ke:(B.c=null,B.t=NaN,B=null,z.end({type:"end",alpha:J=0})):Ke>0&&(z.start({type:"start",alpha:J=Ke}),B=K0(C.tick)),C):J},C.start=function(){var Ke,or=$e.length,dr=rr.length,yr=V[0],pr=V[1],br,_r;for(Ke=0;Ke=0;)J.push(_e=xe[fe]),_e.parent=ie,_e.depth=ie.depth+1;B&&(ie.value=0),ie.children=xe}else B&&(ie.value=+B.call(V,ie,ie.depth)||0),delete ie.children;return wi(W,function(Ie){var Ne,$e;C&&(Ne=Ie.children)&&Ne.sort(C),B&&($e=Ie.parent)&&($e.value+=Ie.value)}),le}return V.sort=function(W){return arguments.length?(C=W,V):C},V.children=function(W){return arguments.length?(z=W,V):z},V.value=function(W){return arguments.length?(B=W,V):B},V.revalue=function(W){return B&&(rf(W,function(J){J.children&&(J.value=0)}),wi(W,function(J){var le;J.children||(J.value=+B.call(V,J,J.depth)||0),(le=J.parent)&&(le.value+=J.value)})),W},V};function ef(C,z){return e.rebind(C,z,"sort","children","value"),C.nodes=C,C.links=kO,C}function rf(C,z){for(var B=[C];(C=B.pop())!=null;)if(z(C),(W=C.children)&&(V=W.length))for(var V,W;--V>=0;)B.push(W[V])}function wi(C,z){for(var B=[C],V=[];(C=B.pop())!=null;)if(V.push(C),(le=C.children)&&(J=le.length))for(var W=-1,J,le;++WW&&(W=ie),V.push(ie)}for(le=0;leV&&(B=z,V=W);return B}function PO(C){return C.reduce(FO,0)}function FO(C,z){return C+z[1]}e.layout.histogram=function(){var C=!0,z=Number,B=NO,V=IO;function W(J,Ne){for(var ie=[],fe=J.map(z,this),xe=B.call(this,fe,Ne),_e=V.call(this,xe,fe,Ne),Ie,Ne=-1,$e=fe.length,rr=_e.length-1,qe=C?1:1/$e,He;++Ne0)for(Ne=-1;++Ne<$e;)He=fe[Ne],He>=xe[0]&&He<=xe[1]&&(Ie=ie[e.bisect(_e,He,1,rr)-1],Ie.y+=qe,Ie.push(J[Ne]));return ie}return W.value=function(J){return arguments.length?(z=J,W):z},W.range=function(J){return arguments.length?(B=Xr(J),W):B},W.bins=function(J){return arguments.length?(V=typeof J=="number"?function(le){return gx(le,J)}:Xr(J),W):V},W.frequency=function(J){return arguments.length?(C=!!J,W):C},W};function IO(C,z){return gx(C,Math.ceil(Math.log(z.length)/Math.LN2+1))}function gx(C,z){for(var B=-1,V=+C[0],W=(C[1]-V)/z,J=[];++B<=z;)J[B]=W*B+V;return J}function NO(C){return[e.min(C),e.max(C)]}e.layout.pack=function(){var C=e.layout.hierarchy().sort(zO),z=0,B=[1,1],V;function W(J,le){var ie=C.call(this,J,le),fe=ie[0],xe=B[0],_e=B[1],Ie=V==null?Math.sqrt:typeof V=="function"?V:function(){return V};if(fe.x=fe.y=0,wi(fe,function($e){$e.r=+Ie($e.value)}),wi(fe,xx),z){var Ne=z*(V?1:Math.max(2*fe.r/xe,2*fe.r/_e))/2;wi(fe,function($e){$e.r+=Ne}),wi(fe,xx),wi(fe,function($e){$e.r-=Ne})}return bx(fe,xe/2,_e/2,V?1:1/Math.max(2*fe.r/xe,2*fe.r/_e)),ie}return W.size=function(J){return arguments.length?(B=J,W):B},W.radius=function(J){return arguments.length?(V=J==null||typeof J=="function"?J:+J,W):V},W.padding=function(J){return arguments.length?(z=+J,W):z},ef(W,C)};function zO(C,z){return C.value-z.value}function Vd(C,z){var B=C._pack_next;C._pack_next=z,z._pack_prev=C,z._pack_next=B,B._pack_prev=z}function yx(C,z){C._pack_next=z,z._pack_prev=C}function mx(C,z){var B=z.x-C.x,V=z.y-C.y,W=C.r+z.r;return .999*W*W>B*B+V*V}function xx(C){if(!(z=C.children)||!(Ne=z.length))return;var z,B=1/0,V=-1/0,W=1/0,J=-1/0,le,ie,fe,xe,_e,Ie,Ne;function $e(Ke){B=Math.min(Ke.x-Ke.r,B),V=Math.max(Ke.x+Ke.r,V),W=Math.min(Ke.y-Ke.r,W),J=Math.max(Ke.y+Ke.r,J)}if(z.forEach(qO),le=z[0],le.x=-le.r,le.y=0,$e(le),Ne>1&&(ie=z[1],ie.x=ie.r,ie.y=0,$e(ie),Ne>2))for(fe=z[2],_x(le,ie,fe),$e(fe),Vd(le,fe),le._pack_prev=fe,Vd(fe,ie),ie=le._pack_next,xe=3;xeHe.x&&(He=or),or.depth>Xe.depth&&(Xe=or)});var er=z(qe,He)/2-qe.x,tr=B[0]/(He.x+z(He,qe)/2+er),Ke=B[1]/(Xe.depth||1);rf($e,function(or){or.x=(or.x+er)*tr,or.y=or.depth*Ke})}return Ne}function J(_e){for(var Ie={A:null,children:[_e]},Ne=[Ie],$e;($e=Ne.pop())!=null;)for(var rr=$e.children,qe,He=0,Xe=rr.length;He0&&(BO(HO(qe,_e,Ne),_e,or),Xe+=or,er+=or),tr+=qe.m,Xe+=$e.m,Ke+=He.m,er+=rr.m;qe&&!Yd(rr)&&(rr.t=qe,rr.m+=tr-er),$e&&!Gd(He)&&(He.t=$e,He.m+=Xe-Ke,Ne=_e)}return Ne}function xe(_e){_e.x*=B[0],_e.y=_e.depth*B[1]}return W.separation=function(_e){return arguments.length?(z=_e,W):z},W.size=function(_e){return arguments.length?(V=(B=_e)==null?xe:null,W):V?null:B},W.nodeSize=function(_e){return arguments.length?(V=(B=_e)==null?null:xe,W):V?B:null},ef(W,C)};function wx(C,z){return C.parent==z.parent?1:2}function Gd(C){var z=C.children;return z.length?z[0]:C.t}function Yd(C){var z=C.children,B;return(B=z.length)?z[B-1]:C.t}function BO(C,z,B){var V=B/(z.i-C.i);z.c-=V,z.s+=B,C.c+=V,z.z+=B,z.m+=B}function UO(C){for(var z=0,B=0,V=C.children,W=V.length,J;--W>=0;)J=V[W],J.z+=z,J.m+=z,z+=J.s+(B+=J.c)}function HO(C,z,B){return C.a.parent===z.parent?C.a:B}e.layout.cluster=function(){var C=e.layout.hierarchy().sort(null).value(null),z=wx,B=[1,1],V=!1;function W(J,le){var ie=C.call(this,J,le),fe=ie[0],xe,_e=0;wi(fe,function(qe){var He=qe.children;He&&He.length?(qe.x=GO(He),qe.y=VO(He)):(qe.x=xe?_e+=z(qe,xe):0,qe.y=0,xe=qe)});var Ie=Mx(fe),Ne=Tx(fe),$e=Ie.x-z(Ie,Ne)/2,rr=Ne.x+z(Ne,Ie)/2;return wi(fe,V?function(qe){qe.x=(qe.x-fe.x)*B[0],qe.y=(fe.y-qe.y)*B[1]}:function(qe){qe.x=(qe.x-$e)/(rr-$e)*B[0],qe.y=(1-(fe.y?qe.y/fe.y:1))*B[1]}),ie}return W.separation=function(J){return arguments.length?(z=J,W):z},W.size=function(J){return arguments.length?(V=(B=J)==null,W):V?null:B},W.nodeSize=function(J){return arguments.length?(V=(B=J)!=null,W):V?B:null},ef(W,C)};function VO(C){return 1+e.max(C,function(z){return z.y})}function GO(C){return C.reduce(function(z,B){return z+B.x},0)/C.length}function Mx(C){var z=C.children;return z&&z.length?Mx(z[0]):C}function Tx(C){var z=C.children,B;return z&&(B=z.length)?Tx(z[B-1]):C}e.layout.treemap=function(){var C=e.layout.hierarchy(),z=Math.round,B=[1,1],V=null,W=Wd,J=!1,le,ie="squarify",fe=.5*(1+Math.sqrt(5));function xe(qe,He){for(var Xe=-1,er=qe.length,tr,Ke;++Xe0;)er.push(Ke=tr[pr-1]),er.area+=Ke.area,ie!=="squarify"||(dr=Ne(er,yr))<=or?(tr.pop(),or=dr):(er.area-=er.pop().area,$e(er,yr,Xe,!1),yr=Math.min(Xe.dx,Xe.dy),er.length=er.area=0,or=1/0);er.length&&($e(er,yr,Xe,!0),er.length=er.area=0),He.forEach(_e)}}function Ie(qe){var He=qe.children;if(He&&He.length){var Xe=W(qe),er=He.slice(),tr,Ke=[];for(xe(er,Xe.dx*Xe.dy/qe.value),Ke.area=0;tr=er.pop();)Ke.push(tr),Ke.area+=tr.area,tr.z!=null&&($e(Ke,tr.z?Xe.dx:Xe.dy,Xe,!er.length),Ke.length=Ke.area=0);He.forEach(Ie)}}function Ne(qe,He){for(var Xe=qe.area,er,tr=0,Ke=1/0,or=-1,dr=qe.length;++ortr&&(tr=er));return Xe*=Xe,He*=He,Xe?Math.max(He*tr*fe/Xe,Xe/(He*Ke*fe)):1/0}function $e(qe,He,Xe,er){var tr=-1,Ke=qe.length,or=Xe.x,dr=Xe.y,yr=He?z(qe.area/He):0,pr;if(He==Xe.dx){for((er||yr>Xe.dy)&&(yr=Xe.dy);++trXe.dx)&&(yr=Xe.dx);++tr1);return C+z*V*Math.sqrt(-2*Math.log(J)/J)}},logNormal:function(){var C=e.random.normal.apply(e,arguments);return function(){return Math.exp(C())}},bates:function(C){var z=e.random.irwinHall(C);return function(){return z()/C}},irwinHall:function(C){return function(){for(var z=0,B=0;B2?XO:YO,xe=V?hO:vO;return W=fe(C,z,xe,B),J=fe(z,C,xe,pl),ie}function ie(fe){return W(fe)}return ie.invert=function(fe){return J(fe)},ie.domain=function(fe){return arguments.length?(C=fe.map(Number),le()):C},ie.range=function(fe){return arguments.length?(z=fe,le()):z},ie.rangeRound=function(fe){return ie.range(fe).interpolate(sx)},ie.clamp=function(fe){return arguments.length?(V=fe,le()):V},ie.interpolate=function(fe){return arguments.length?(B=fe,le()):B},ie.ticks=function(fe){return Jd(C,fe)},ie.tickFormat=function(fe,xe){return d3_scale_linearTickFormat(C,fe,xe)},ie.nice=function(fe){return Ex(C,fe),le()},ie.copy=function(){return Sx(C,z,B,V)},le()}function Cx(C,z){return e.rebind(C,z,"range","rangeRound","interpolate","clamp")}function Ex(C,z){return Xd(C,kx(Zd(C,z)[2])),Xd(C,kx(Zd(C,z)[2])),C}function Zd(C,z){z==null&&(z=10);var B=nc(C),V=B[1]-B[0],W=Math.pow(10,Math.floor(Math.log(V/z)/Math.LN10)),J=z/V*W;return J<=.15?W*=10:J<=.35?W*=5:J<=.75&&(W*=2),B[0]=Math.ceil(B[0]/W)*W,B[1]=Math.floor(B[1]/W)*W+W*.5,B[2]=W,B}function Jd(C,z){return e.range.apply(e,Zd(C,z))}var ZO={s:1,g:1,p:1,r:1,e:1};function Lx(C){return-Math.floor(Math.log(C)/Math.LN10+.01)}function Iue(C,z){var B=Lx(z[2]);return C in ZO?Math.abs(B-Lx(Math.max(m(z[0]),m(z[1]))))+ +(C!=="e"):B-(C==="%")*2}e.scale.log=function(){return Rx(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Rx(C,z,B,V){function W(ie){return(B?Math.log(ie<0?0:ie):-Math.log(ie>0?0:-ie))/Math.log(z)}function J(ie){return B?Math.pow(z,ie):-Math.pow(z,-ie)}function le(ie){return C(W(ie))}return le.invert=function(ie){return J(C.invert(ie))},le.domain=function(ie){return arguments.length?(B=ie[0]>=0,C.domain((V=ie.map(Number)).map(W)),le):V},le.base=function(ie){return arguments.length?(z=+ie,C.domain(V.map(W)),le):z},le.nice=function(){var ie=Xd(V.map(W),B?Math:JO);return C.domain(ie),V=ie.map(J),le},le.ticks=function(){var ie=nc(V),fe=[],xe=ie[0],_e=ie[1],Ie=Math.floor(W(xe)),Ne=Math.ceil(W(_e)),$e=z%1?2:z;if(isFinite(Ne-Ie)){if(B){for(;Ie0;rr--)fe.push(J(Ie)*rr);for(Ie=0;fe[Ie]_e;Ne--);fe=fe.slice(Ie,Ne)}return fe},le.copy=function(){return Rx(C.copy(),z,B,V)},Cx(le,C)}var JO={floor:function(C){return-Math.ceil(-C)},ceil:function(C){return-Math.floor(-C)}};e.scale.pow=function(){return Dx(e.scale.linear(),1,[0,1])};function Dx(C,z,B){var V=ic(z),W=ic(1/z);function J(le){return C(V(le))}return J.invert=function(le){return W(C.invert(le))},J.domain=function(le){return arguments.length?(C.domain((B=le.map(Number)).map(V)),J):B},J.ticks=function(le){return Jd(B,le)},J.tickFormat=function(le,ie){return d3_scale_linearTickFormat(B,le,ie)},J.nice=function(le){return J.domain(Ex(B,le))},J.exponent=function(le){return arguments.length?(V=ic(z=le),W=ic(1/z),C.domain(B.map(V)),J):z},J.copy=function(){return Dx(C.copy(),z,B)},Cx(J,C)}function ic(C){return function(z){return z<0?-Math.pow(-z,C):Math.pow(z,C)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Px([],{t:"range",a:[[]]})};function Px(C,z){var B,V,W;function J(ie){return V[((B.get(ie)||(z.t==="range"?B.set(ie,C.push(ie)):NaN))-1)%V.length]}function le(ie,fe){return e.range(C.length).map(function(xe){return ie+fe*xe})}return J.domain=function(ie){if(!arguments.length)return C;C=[],B=new x;for(var fe=-1,xe=ie.length,_e;++fe0?B[J-1]:C[0],JNe?0:1;if(_e=se)return fe(_e,rr)+(xe?fe(xe,1-rr):"")+"Z";var qe,He,Xe,er,tr=0,Ke=0,or,dr,yr,pr,br,_r,qr,Mr,Pr=[];if((er=(+le.apply(this,arguments)||0)/2)&&(Xe=V===oc?Math.sqrt(xe*xe+_e*_e):+V.apply(this,arguments),rr||(Ke*=-1),_e&&(Ke=hr(Xe/_e*Math.sin(er))),xe&&(tr=hr(Xe/xe*Math.sin(er)))),_e){or=_e*Math.cos(Ie+Ke),dr=_e*Math.sin(Ie+Ke),yr=_e*Math.cos(Ne-Ke),pr=_e*Math.sin(Ne-Ke);var lt=Math.abs(Ne-Ie-2*Ke)<=Ve?0:1;if(Ke&&lc(or,dr,yr,pr)===rr^lt){var Bt=(Ie+Ne)/2;or=_e*Math.cos(Bt),dr=_e*Math.sin(Bt),yr=pr=null}}else or=dr=0;if(xe){br=xe*Math.cos(Ne-tr),_r=xe*Math.sin(Ne-tr),qr=xe*Math.cos(Ie+tr),Mr=xe*Math.sin(Ie+tr);var dt=Math.abs(Ie-Ne+2*tr)<=Ve?0:1;if(tr&&lc(br,_r,qr,Mr)===1-rr^dt){var vr=(Ie+Ne)/2;br=xe*Math.cos(vr),_r=xe*Math.sin(vr),qr=Mr=null}}else br=_r=0;if($e>Pe&&(qe=Math.min(Math.abs(_e-xe)/2,+B.apply(this,arguments)))>.001){He=xe<_e^rr?0:1;var Or=qe,Vr=qe;if($e0?0:1}function sc(C,z,B,V,W){var J=C[0]-z[0],le=C[1]-z[1],ie=(W?V:-V)/Math.sqrt(J*J+le*le),fe=ie*le,xe=-ie*J,_e=C[0]+fe,Ie=C[1]+xe,Ne=z[0]+fe,$e=z[1]+xe,rr=(_e+Ne)/2,qe=(Ie+$e)/2,He=Ne-_e,Xe=$e-Ie,er=He*He+Xe*Xe,tr=B-V,Ke=_e*$e-Ne*Ie,or=(Xe<0?-1:1)*Math.sqrt(Math.max(0,tr*tr*er-Ke*Ke)),dr=(Ke*Xe-He*or)/er,yr=(-Ke*He-Xe*or)/er,pr=(Ke*Xe+He*or)/er,br=(-Ke*He+Xe*or)/er,_r=dr-rr,qr=yr-qe,Mr=pr-rr,Pr=br-qe;return _r*_r+qr*qr>Mr*Mr+Pr*Pr&&(dr=pr,yr=br),[[dr-fe,yr-xe],[dr*B/tr,yr*B/tr]]}function Bx(){return!0}function Ux(C){var z=xs,B=Zu,V=Bx,W=Xa,J=W.key,le=.7;function ie(fe){var xe=[],_e=[],Ie=-1,Ne=fe.length,$e,rr=Xr(z),qe=Xr(B);function He(){xe.push("M",W(C(_e),le))}for(;++Ie1?C.join("L"):C+"Z"}function Hx(C){return C.join("L")+"Z"}function aB(C){for(var z=0,B=C.length,V=C[0],W=[V[0],",",V[1]];++z1&&W.push("H",V[0]),W.join("")}function Qd(C){for(var z=0,B=C.length,V=C[0],W=[V[0],",",V[1]];++z1){ie=z[1],J=C[fe],fe++,V+="C"+(W[0]+le[0])+","+(W[1]+le[1])+","+(J[0]-ie[0])+","+(J[1]-ie[1])+","+J[0]+","+J[1];for(var xe=2;xe9&&(J=B*3/Math.sqrt(J),le[ie]=J*V,le[ie+1]=J*W));for(ie=-1;++ie<=fe;)J=(C[Math.min(fe,ie+1)][0]-C[Math.max(0,ie-1)][0])/(6*(1+le[ie]*le[ie])),z.push([J||0,le[ie]*J||0]);return z}function hB(C){return C.length<3?Xa(C):C[0]+uc(C,vB(C))}e.svg.line.radial=function(){var C=Ux(Wx);return C.radius=C.x,delete C.x,C.angle=C.y,delete C.y,C};function Wx(C){for(var z,B=-1,V=C.length,W,J;++BVe)+",1 "+Ie}function xe(_e,Ie,Ne,$e){return"Q 0,0 "+$e}return J.radius=function(_e){return arguments.length?(B=Xr(_e),J):B},J.source=function(_e){return arguments.length?(C=Xr(_e),J):C},J.target=function(_e){return arguments.length?(z=Xr(_e),J):z},J.startAngle=function(_e){return arguments.length?(V=Xr(_e),J):V},J.endAngle=function(_e){return arguments.length?(W=Xr(_e),J):W},J};function dB(C){return C.radius}e.svg.diagonal=function(){var C=Zx,z=Jx,B=Kx;function V(W,J){var le=C.call(this,W,J),ie=z.call(this,W,J),fe=(le.y+ie.y)/2,xe=[le,{x:le.x,y:fe},{x:ie.x,y:fe},ie];return xe=xe.map(B),"M"+xe[0]+"C"+xe[1]+" "+xe[2]+" "+xe[3]}return V.source=function(W){return arguments.length?(C=Xr(W),V):C},V.target=function(W){return arguments.length?(z=Xr(W),V):z},V.projection=function(W){return arguments.length?(B=W,V):B},V};function Kx(C){return[C.x,C.y]}e.svg.diagonal.radial=function(){var C=e.svg.diagonal(),z=Kx,B=C.projection;return C.projection=function(V){return arguments.length?B(pB(z=V)):z},C};function pB(C){return function(){var z=C.apply(this,arguments),B=z[0],V=z[1]-K;return[B*Math.cos(V),B*Math.sin(V)]}}e.svg.symbol=function(){var C=yB,z=gB;function B(V,W){return($x.get(C.call(this,V,W))||Qx)(z.call(this,V,W))}return B.type=function(V){return arguments.length?(C=Xr(V),B):C},B.size=function(V){return arguments.length?(z=Xr(V),B):z},B};function gB(){return 64}function yB(){return"circle"}function Qx(C){var z=Math.sqrt(C/Ve);return"M0,"+z+"A"+z+","+z+" 0 1,1 0,"+-z+"A"+z+","+z+" 0 1,1 0,"+z+"Z"}var $x=e.map({circle:Qx,cross:function(C){var z=Math.sqrt(C/5)/2;return"M"+-3*z+","+-z+"H"+-z+"V"+-3*z+"H"+z+"V"+-z+"H"+3*z+"V"+z+"H"+z+"V"+3*z+"H"+-z+"V"+z+"H"+-3*z+"Z"},diamond:function(C){var z=Math.sqrt(C/(2*jx)),B=z*jx;return"M0,"+-z+"L"+B+",0 0,"+z+" "+-B+",0Z"},square:function(C){var z=Math.sqrt(C)/2;return"M"+-z+","+-z+"L"+z+","+-z+" "+z+","+z+" "+-z+","+z+"Z"},"triangle-down":function(C){var z=Math.sqrt(C/fc),B=z*fc/2;return"M0,"+B+"L"+z+","+-B+" "+-z+","+-B+"Z"},"triangle-up":function(C){var z=Math.sqrt(C/fc),B=z*fc/2;return"M0,"+-B+"L"+z+","+B+" "+-z+","+B+"Z"}});e.svg.symbolTypes=$x.keys();var fc=Math.sqrt(3),jx=Math.tan(30*ae);ee.transition=function(C){for(var z=yl||++rb,B=np(C),V=[],W,J,le=vc||{time:Date.now(),ease:Jq,delay:0,duration:250},ie=-1,fe=this.length;++ie0;)Ie[--er].call(C,Xe);if(He>=1)return le.event&&le.event.end.call(C,C.__data__,z),--J.count?delete J[V]:delete C[B],1}le||(ie=W.time,fe=K0(Ne,0,ie),le=J[V]={tween:new x,time:ie,timer:fe,delay:W.delay,duration:W.duration,ease:W.ease,index:z},W=null,++J.count)}e.svg.axis=function(){var C=e.scale.linear(),z=tb,B=6,V=6,W=3,J=[10],le=null,ie;function fe(xe){xe.each(function(){var _e=e.select(this),Ie=this.__chart__||C,Ne=this.__chart__=C.copy(),$e=le==null?Ne.ticks?Ne.ticks.apply(Ne,J):Ne.domain():le,rr=ie==null?Ne.tickFormat?Ne.tickFormat.apply(Ne,J):N:ie,qe=_e.selectAll(".tick").data($e,Ne),He=qe.enter().insert("g",".domain").attr("class","tick").style("opacity",Pe),Xe=e.transition(qe.exit()).style("opacity",Pe).remove(),er=e.transition(qe.order()).style("opacity",1),tr=Math.max(B,0)+W,Ke,or=ac(Ne),dr=_e.selectAll(".domain").data([0]),yr=(dr.enter().append("path").attr("class","domain"),e.transition(dr));He.append("line"),He.append("text");var pr=He.select("line"),br=er.select("line"),_r=qe.select("text").text(rr),qr=He.select("text"),Mr=er.select("text"),Pr=z==="top"||z==="left"?-1:1,lt,Bt,dt,vr;if(z==="bottom"||z==="top"?(Ke=bB,lt="x",dt="y",Bt="x2",vr="y2",_r.attr("dy",Pr<0?"0em":".71em").style("text-anchor","middle"),yr.attr("d","M"+or[0]+","+Pr*V+"V0H"+or[1]+"V"+Pr*V)):(Ke=_B,lt="y",dt="x",Bt="y2",vr="x2",_r.attr("dy",".32em").style("text-anchor",Pr<0?"end":"start"),yr.attr("d","M"+Pr*V+","+or[0]+"H0V"+or[1]+"H"+Pr*V)),pr.attr(vr,Pr*B),qr.attr(dt,Pr*tr),br.attr(Bt,0).attr(vr,Pr*B),Mr.attr(lt,0).attr(dt,Pr*tr),Ne.rangeBand){var Or=Ne,Vr=Or.rangeBand()/2;Ie=Ne=function(st){return Or(st)+Vr}}else Ie.rangeBand?Ie=Ne:Xe.call(Ke,Ne,Ie);He.call(Ke,Ie,Ne),er.call(Ke,Ne,Ne)})}return fe.scale=function(xe){return arguments.length?(C=xe,fe):C},fe.orient=function(xe){return arguments.length?(z=xe in xB?xe+"":tb,fe):z},fe.ticks=function(){return arguments.length?(J=t(arguments),fe):J},fe.tickValues=function(xe){return arguments.length?(le=xe,fe):le},fe.tickFormat=function(xe){return arguments.length?(ie=xe,fe):ie},fe.tickSize=function(xe){var _e=arguments.length;return _e?(B=+xe,V=+arguments[_e-1],fe):B},fe.innerTickSize=function(xe){return arguments.length?(B=+xe,fe):B},fe.outerTickSize=function(xe){return arguments.length?(V=+xe,fe):V},fe.tickPadding=function(xe){return arguments.length?(W=+xe,fe):W},fe.tickSubdivide=function(){return arguments.length&&fe},fe};var tb="bottom",xB={top:1,right:1,bottom:1,left:1};function bB(C,z,B){C.attr("transform",function(V){var W=z(V);return"translate("+(isFinite(W)?W:B(V))+",0)"})}function _B(C,z,B){C.attr("transform",function(V){var W=z(V);return"translate(0,"+(isFinite(W)?W:B(V))+")"})}e.svg.brush=function(){var C=$(_e,"brushstart","brush","brushend"),z=null,B=null,V=[0,0],W=[0,0],J,le,ie=!0,fe=!0,xe=ap[0];function _e(qe){qe.each(function(){var He=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",rr).on("touchstart.brush",rr),Xe=He.selectAll(".background").data([0]);Xe.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),He.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var er=He.selectAll(".resize").data(xe,N);er.exit().remove(),er.enter().append("g").attr("class",function(dr){return"resize "+dr}).style("cursor",function(dr){return wB[dr]}).append("rect").attr("x",function(dr){return/[ew]$/.test(dr)?-3:null}).attr("y",function(dr){return/^[ns]/.test(dr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),er.style("display",_e.empty()?"none":null);var tr=e.transition(He),Ke=e.transition(Xe),or;z&&(or=ac(z),Ke.attr("x",or[0]).attr("width",or[1]-or[0]),Ne(tr)),B&&(or=ac(B),Ke.attr("y",or[0]).attr("height",or[1]-or[0]),$e(tr)),Ie(tr)})}_e.event=function(qe){qe.each(function(){var He=C.of(this,arguments),Xe={x:V,y:W,i:J,j:le},er=this.__chart__||Xe;this.__chart__=Xe,yl?e.select(this).transition().each("start.brush",function(){J=er.i,le=er.j,V=er.x,W=er.y,He({type:"brushstart"})}).tween("brush:brush",function(){var tr=tc(V,Xe.x),Ke=tc(W,Xe.y);return J=le=null,function(or){V=Xe.x=tr(or),W=Xe.y=Ke(or),He({type:"brush",mode:"resize"})}}).each("end.brush",function(){J=Xe.i,le=Xe.j,He({type:"brush",mode:"resize"}),He({type:"brushend"})}):(He({type:"brushstart"}),He({type:"brush",mode:"resize"}),He({type:"brushend"}))})};function Ie(qe){qe.selectAll(".resize").attr("transform",function(He){return"translate("+V[+/e$/.test(He)]+","+W[+/^s/.test(He)]+")"})}function Ne(qe){qe.select(".extent").attr("x",V[0]),qe.selectAll(".extent,.n>rect,.s>rect").attr("width",V[1]-V[0])}function $e(qe){qe.select(".extent").attr("y",W[0]),qe.selectAll(".extent,.e>rect,.w>rect").attr("height",W[1]-W[0])}function rr(){var qe=this,He=e.select(e.event.target),Xe=C.of(qe,arguments),er=e.select(qe),tr=He.datum(),Ke=!/^(n|s)$/.test(tr)&&z,or=!/^(e|w)$/.test(tr)&&B,dr=He.classed("extent"),yr=Ye(qe),pr,br=e.mouse(qe),_r,qr=e.select(o(qe)).on("keydown.brush",lt).on("keyup.brush",Bt);if(e.event.changedTouches?qr.on("touchmove.brush",dt).on("touchend.brush",Or):qr.on("mousemove.brush",dt).on("mouseup.brush",Or),er.interrupt().selectAll("*").interrupt(),dr)br[0]=V[0]-br[0],br[1]=W[0]-br[1];else if(tr){var Mr=+/w$/.test(tr),Pr=+/^n/.test(tr);_r=[V[1-Mr]-br[0],W[1-Pr]-br[1]],br[0]=V[Mr],br[1]=W[Pr]}else e.event.altKey&&(pr=br.slice());er.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",He.style("cursor")),Xe({type:"brushstart"}),dt();function lt(){e.event.keyCode==32&&(dr||(pr=null,br[0]-=V[1],br[1]-=W[1],dr=2),X())}function Bt(){e.event.keyCode==32&&dr==2&&(br[0]+=V[1],br[1]+=W[1],dr=0,X())}function dt(){var Vr=e.mouse(qe),st=!1;_r&&(Vr[0]+=_r[0],Vr[1]+=_r[1]),dr||(e.event.altKey?(pr||(pr=[(V[0]+V[1])/2,(W[0]+W[1])/2]),br[0]=V[+(Vr[0]{(function(e,r){typeof mc=="object"&&typeof ub!="undefined"?r(mc):(e=e||self,r(e.d3=e.d3||{}))})(mc,function(e){"use strict";var r=new Date,t=new Date;function n(ge,Te,ce,ye){function Le(me){return ge(me=arguments.length===0?new Date:new Date(+me)),me}return Le.floor=function(me){return ge(me=new Date(+me)),me},Le.ceil=function(me){return ge(me=new Date(me-1)),Te(me,1),ge(me),me},Le.round=function(me){var he=Le(me),be=Le.ceil(me);return me-he0))return Se;do Se.push(ze=new Date(+me)),Te(me,be),ge(me);while(ze=he)for(;ge(he),!me(he);)he.setTime(he-1)},function(he,be){if(he>=he)if(be<0)for(;++be<=0;)for(;Te(he,-1),!me(he););else for(;--be>=0;)for(;Te(he,1),!me(he););})},ce&&(Le.count=function(me,he){return r.setTime(+me),t.setTime(+he),ge(r),ge(t),Math.floor(ce(r,t))},Le.every=function(me){return me=Math.floor(me),!isFinite(me)||!(me>0)?null:me>1?Le.filter(ye?function(he){return ye(he)%me===0}:function(he){return Le.count(0,he)%me===0}):Le}),Le}var a=n(function(){},function(ge,Te){ge.setTime(+ge+Te)},function(ge,Te){return Te-ge});a.every=function(ge){return ge=Math.floor(ge),!isFinite(ge)||!(ge>0)?null:ge>1?n(function(Te){Te.setTime(Math.floor(Te/ge)*ge)},function(Te,ce){Te.setTime(+Te+ce*ge)},function(Te,ce){return(ce-Te)/ge}):a};var o=a.range,i=1e3,l=6e4,u=36e5,s=864e5,f=6048e5,v=n(function(ge){ge.setTime(ge-ge.getMilliseconds())},function(ge,Te){ge.setTime(+ge+Te*i)},function(ge,Te){return(Te-ge)/i},function(ge){return ge.getUTCSeconds()}),p=v.range,b=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i)},function(ge,Te){ge.setTime(+ge+Te*l)},function(ge,Te){return(Te-ge)/l},function(ge){return ge.getMinutes()}),y=b.range,w=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i-ge.getMinutes()*l)},function(ge,Te){ge.setTime(+ge+Te*u)},function(ge,Te){return(Te-ge)/u},function(ge){return ge.getHours()}),M=w.range,m=n(function(ge){ge.setHours(0,0,0,0)},function(ge,Te){ge.setDate(ge.getDate()+Te)},function(ge,Te){return(Te-ge-(Te.getTimezoneOffset()-ge.getTimezoneOffset())*l)/s},function(ge){return ge.getDate()-1}),k=m.range;function S(ge){return n(function(Te){Te.setDate(Te.getDate()-(Te.getDay()+7-ge)%7),Te.setHours(0,0,0,0)},function(Te,ce){Te.setDate(Te.getDate()+ce*7)},function(Te,ce){return(ce-Te-(ce.getTimezoneOffset()-Te.getTimezoneOffset())*l)/f})}var x=S(0),T=S(1),d=S(2),_=S(3),g=S(4),c=S(5),A=S(6),h=x.range,R=T.range,E=d.range,D=_.range,N=g.range,I=c.range,F=A.range,L=n(function(ge){ge.setDate(1),ge.setHours(0,0,0,0)},function(ge,Te){ge.setMonth(ge.getMonth()+Te)},function(ge,Te){return Te.getMonth()-ge.getMonth()+(Te.getFullYear()-ge.getFullYear())*12},function(ge){return ge.getMonth()}),P=L.range,O=n(function(ge){ge.setMonth(0,1),ge.setHours(0,0,0,0)},function(ge,Te){ge.setFullYear(ge.getFullYear()+Te)},function(ge,Te){return Te.getFullYear()-ge.getFullYear()},function(ge){return ge.getFullYear()});O.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(Te){Te.setFullYear(Math.floor(Te.getFullYear()/ge)*ge),Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,ce){Te.setFullYear(Te.getFullYear()+ce*ge)})};var U=O.range,X=n(function(ge){ge.setUTCSeconds(0,0)},function(ge,Te){ge.setTime(+ge+Te*l)},function(ge,Te){return(Te-ge)/l},function(ge){return ge.getUTCMinutes()}),j=X.range,$=n(function(ge){ge.setUTCMinutes(0,0,0)},function(ge,Te){ge.setTime(+ge+Te*u)},function(ge,Te){return(Te-ge)/u},function(ge){return ge.getUTCHours()}),Y=$.range,q=n(function(ge){ge.setUTCHours(0,0,0,0)},function(ge,Te){ge.setUTCDate(ge.getUTCDate()+Te)},function(ge,Te){return(Te-ge)/s},function(ge){return ge.getUTCDate()-1}),Z=q.range;function ne(ge){return n(function(Te){Te.setUTCDate(Te.getUTCDate()-(Te.getUTCDay()+7-ge)%7),Te.setUTCHours(0,0,0,0)},function(Te,ce){Te.setUTCDate(Te.getUTCDate()+ce*7)},function(Te,ce){return(ce-Te)/f})}var Q=ne(0),oe=ne(1),ee=ne(2),G=ne(3),re=ne(4),H=ne(5),te=ne(6),ue=Q.range,de=oe.range,Ee=ee.range,Me=G.range,ve=re.range,Ae=H.range,ke=te.range,De=n(function(ge){ge.setUTCDate(1),ge.setUTCHours(0,0,0,0)},function(ge,Te){ge.setUTCMonth(ge.getUTCMonth()+Te)},function(ge,Te){return Te.getUTCMonth()-ge.getUTCMonth()+(Te.getUTCFullYear()-ge.getUTCFullYear())*12},function(ge){return ge.getUTCMonth()}),Ce=De.range,Oe=n(function(ge){ge.setUTCMonth(0,1),ge.setUTCHours(0,0,0,0)},function(ge,Te){ge.setUTCFullYear(ge.getUTCFullYear()+Te)},function(ge,Te){return Te.getUTCFullYear()-ge.getUTCFullYear()},function(ge){return ge.getUTCFullYear()});Oe.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(Te){Te.setUTCFullYear(Math.floor(Te.getUTCFullYear()/ge)*ge),Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,ce){Te.setUTCFullYear(Te.getUTCFullYear()+ce*ge)})};var Ue=Oe.range;e.timeDay=m,e.timeDays=k,e.timeFriday=c,e.timeFridays=I,e.timeHour=w,e.timeHours=M,e.timeInterval=n,e.timeMillisecond=a,e.timeMilliseconds=o,e.timeMinute=b,e.timeMinutes=y,e.timeMonday=T,e.timeMondays=R,e.timeMonth=L,e.timeMonths=P,e.timeSaturday=A,e.timeSaturdays=F,e.timeSecond=v,e.timeSeconds=p,e.timeSunday=x,e.timeSundays=h,e.timeThursday=g,e.timeThursdays=N,e.timeTuesday=d,e.timeTuesdays=E,e.timeWednesday=_,e.timeWednesdays=D,e.timeWeek=x,e.timeWeeks=h,e.timeYear=O,e.timeYears=U,e.utcDay=q,e.utcDays=Z,e.utcFriday=H,e.utcFridays=Ae,e.utcHour=$,e.utcHours=Y,e.utcMillisecond=a,e.utcMilliseconds=o,e.utcMinute=X,e.utcMinutes=j,e.utcMonday=oe,e.utcMondays=de,e.utcMonth=De,e.utcMonths=Ce,e.utcSaturday=te,e.utcSaturdays=ke,e.utcSecond=v,e.utcSeconds=p,e.utcSunday=Q,e.utcSundays=ue,e.utcThursday=re,e.utcThursdays=ve,e.utcTuesday=ee,e.utcTuesdays=Ee,e.utcWednesday=G,e.utcWednesdays=Me,e.utcWeek=Q,e.utcWeeks=ue,e.utcYear=Oe,e.utcYears=Ue,Object.defineProperty(e,"__esModule",{value:!0})})});var ks=pe((xc,fb)=>{(function(e,r){typeof xc=="object"&&typeof fb!="undefined"?r(xc,ip()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(xc,function(e,r){"use strict";function t(we){if(0<=we.y&&we.y<100){var Pe=new Date(-1,we.m,we.d,we.H,we.M,we.S,we.L);return Pe.setFullYear(we.y),Pe}return new Date(we.y,we.m,we.d,we.H,we.M,we.S,we.L)}function n(we){if(0<=we.y&&we.y<100){var Pe=new Date(Date.UTC(-1,we.m,we.d,we.H,we.M,we.S,we.L));return Pe.setUTCFullYear(we.y),Pe}return new Date(Date.UTC(we.y,we.m,we.d,we.H,we.M,we.S,we.L))}function a(we,Pe,Qe){return{y:we,m:Pe,d:Qe,H:0,M:0,S:0,L:0}}function o(we){var Pe=we.dateTime,Qe=we.date,Ve=we.time,ar=we.periods,se=we.days,K=we.shortDays,ae=we.months,Re=we.shortMonths,Be=p(ar),je=b(ar),nr=p(se),hr=b(se),wr=p(K),Cr=b(K),Tr=p(ae),Ar=b(ae),ft=p(Re),Yr=b(Re),mr={a:ha,A:Qn,b:Fn,B:wa,c:null,d:L,e:L,f:j,H:P,I:O,j:U,L:X,m:$,M:Y,p:xi,q:Gi,Q:he,s:be,S:q,u:Z,U:ne,V:Q,w:oe,W:ee,x:null,X:null,y:G,Y:re,Z:H,"%":me},ct={a:Yi,A:Wi,b:nn,B:xo,c:null,d:te,e:te,f:ve,H:ue,I:de,j:Ee,L:Me,m:Ae,M:ke,p:bi,q:_i,Q:he,s:be,S:De,u:Ce,U:Oe,V:Ue,w:ge,W:Te,x:null,X:null,y:ce,Y:ye,Z:Le,"%":me},Sr={a:Ot,A:Lt,b:yn,B:Gt,c:Rt,d:g,e:g,f:D,H:A,I:A,j:c,L:E,m:_,M:h,p:Hr,q:d,Q:I,s:F,S:R,u:w,U:M,V:m,w:y,W:k,x:nt,X:Ft,y:x,Y:S,Z:T,"%":N};mr.x=Ur(Qe,mr),mr.X=Ur(Ve,mr),mr.c=Ur(Pe,mr),ct.x=Ur(Qe,ct),ct.X=Ur(Ve,ct),ct.c=Ur(Pe,ct);function Ur(kr,at){return function(vt){var gr=[],mn=-1,bt=0,xn=kr.length,Xr,Wa,hl;for(vt instanceof Date||(vt=new Date(+vt));++mn53)return null;"w"in gr||(gr.w=1),"Z"in gr?(bt=n(a(gr.y,0,1)),xn=bt.getUTCDay(),bt=xn>4||xn===0?r.utcMonday.ceil(bt):r.utcMonday(bt),bt=r.utcDay.offset(bt,(gr.V-1)*7),gr.y=bt.getUTCFullYear(),gr.m=bt.getUTCMonth(),gr.d=bt.getUTCDate()+(gr.w+6)%7):(bt=t(a(gr.y,0,1)),xn=bt.getDay(),bt=xn>4||xn===0?r.timeMonday.ceil(bt):r.timeMonday(bt),bt=r.timeDay.offset(bt,(gr.V-1)*7),gr.y=bt.getFullYear(),gr.m=bt.getMonth(),gr.d=bt.getDate()+(gr.w+6)%7)}else("W"in gr||"U"in gr)&&("w"in gr||(gr.w="u"in gr?gr.u%7:"W"in gr?1:0),xn="Z"in gr?n(a(gr.y,0,1)).getUTCDay():t(a(gr.y,0,1)).getDay(),gr.m=0,gr.d="W"in gr?(gr.w+6)%7+gr.W*7-(xn+5)%7:gr.w+gr.U*7-(xn+6)%7);return"Z"in gr?(gr.H+=gr.Z/100|0,gr.M+=gr.Z%100,n(gr)):t(gr)}}function zr(kr,at,vt,gr){for(var mn=0,bt=at.length,xn=vt.length,Xr,Wa;mn=xn)return-1;if(Xr=at.charCodeAt(mn++),Xr===37){if(Xr=at.charAt(mn++),Wa=Sr[Xr in i?at.charAt(mn++):Xr],!Wa||(gr=Wa(kr,vt,gr))<0)return-1}else if(Xr!=vt.charCodeAt(gr++))return-1}return gr}function Hr(kr,at,vt){var gr=Be.exec(at.slice(vt));return gr?(kr.p=je[gr[0].toLowerCase()],vt+gr[0].length):-1}function Ot(kr,at,vt){var gr=wr.exec(at.slice(vt));return gr?(kr.w=Cr[gr[0].toLowerCase()],vt+gr[0].length):-1}function Lt(kr,at,vt){var gr=nr.exec(at.slice(vt));return gr?(kr.w=hr[gr[0].toLowerCase()],vt+gr[0].length):-1}function yn(kr,at,vt){var gr=ft.exec(at.slice(vt));return gr?(kr.m=Yr[gr[0].toLowerCase()],vt+gr[0].length):-1}function Gt(kr,at,vt){var gr=Tr.exec(at.slice(vt));return gr?(kr.m=Ar[gr[0].toLowerCase()],vt+gr[0].length):-1}function Rt(kr,at,vt){return zr(kr,Pe,at,vt)}function nt(kr,at,vt){return zr(kr,Qe,at,vt)}function Ft(kr,at,vt){return zr(kr,Ve,at,vt)}function ha(kr){return K[kr.getDay()]}function Qn(kr){return se[kr.getDay()]}function Fn(kr){return Re[kr.getMonth()]}function wa(kr){return ae[kr.getMonth()]}function xi(kr){return ar[+(kr.getHours()>=12)]}function Gi(kr){return 1+~~(kr.getMonth()/3)}function Yi(kr){return K[kr.getUTCDay()]}function Wi(kr){return se[kr.getUTCDay()]}function nn(kr){return Re[kr.getUTCMonth()]}function xo(kr){return ae[kr.getUTCMonth()]}function bi(kr){return ar[+(kr.getUTCHours()>=12)]}function _i(kr){return 1+~~(kr.getUTCMonth()/3)}return{format:function(kr){var at=Ur(kr+="",mr);return at.toString=function(){return kr},at},parse:function(kr){var at=xt(kr+="",!1);return at.toString=function(){return kr},at},utcFormat:function(kr){var at=Ur(kr+="",ct);return at.toString=function(){return kr},at},utcParse:function(kr){var at=xt(kr+="",!0);return at.toString=function(){return kr},at}}}var i={"-":"",_:" ",0:"0"},l=/^\s*\d+/,u=/^%/,s=/[\\^$*+?|[\]().{}]/g;function f(we,Pe,Qe){var Ve=we<0?"-":"",ar=(Ve?-we:we)+"",se=ar.length;return Ve+(se68?1900:2e3),Qe+Ve[0].length):-1}function T(we,Pe,Qe){var Ve=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Pe.slice(Qe,Qe+6));return Ve?(we.Z=Ve[1]?0:-(Ve[2]+(Ve[3]||"00")),Qe+Ve[0].length):-1}function d(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+1));return Ve?(we.q=Ve[0]*3-3,Qe+Ve[0].length):-1}function _(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.m=Ve[0]-1,Qe+Ve[0].length):-1}function g(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.d=+Ve[0],Qe+Ve[0].length):-1}function c(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+3));return Ve?(we.m=0,we.d=+Ve[0],Qe+Ve[0].length):-1}function A(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.H=+Ve[0],Qe+Ve[0].length):-1}function h(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.M=+Ve[0],Qe+Ve[0].length):-1}function R(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.S=+Ve[0],Qe+Ve[0].length):-1}function E(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+3));return Ve?(we.L=+Ve[0],Qe+Ve[0].length):-1}function D(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+6));return Ve?(we.L=Math.floor(Ve[0]/1e3),Qe+Ve[0].length):-1}function N(we,Pe,Qe){var Ve=u.exec(Pe.slice(Qe,Qe+1));return Ve?Qe+Ve[0].length:-1}function I(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe));return Ve?(we.Q=+Ve[0],Qe+Ve[0].length):-1}function F(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe));return Ve?(we.s=+Ve[0],Qe+Ve[0].length):-1}function L(we,Pe){return f(we.getDate(),Pe,2)}function P(we,Pe){return f(we.getHours(),Pe,2)}function O(we,Pe){return f(we.getHours()%12||12,Pe,2)}function U(we,Pe){return f(1+r.timeDay.count(r.timeYear(we),we),Pe,3)}function X(we,Pe){return f(we.getMilliseconds(),Pe,3)}function j(we,Pe){return X(we,Pe)+"000"}function $(we,Pe){return f(we.getMonth()+1,Pe,2)}function Y(we,Pe){return f(we.getMinutes(),Pe,2)}function q(we,Pe){return f(we.getSeconds(),Pe,2)}function Z(we){var Pe=we.getDay();return Pe===0?7:Pe}function ne(we,Pe){return f(r.timeSunday.count(r.timeYear(we)-1,we),Pe,2)}function Q(we,Pe){var Qe=we.getDay();return we=Qe>=4||Qe===0?r.timeThursday(we):r.timeThursday.ceil(we),f(r.timeThursday.count(r.timeYear(we),we)+(r.timeYear(we).getDay()===4),Pe,2)}function oe(we){return we.getDay()}function ee(we,Pe){return f(r.timeMonday.count(r.timeYear(we)-1,we),Pe,2)}function G(we,Pe){return f(we.getFullYear()%100,Pe,2)}function re(we,Pe){return f(we.getFullYear()%1e4,Pe,4)}function H(we){var Pe=we.getTimezoneOffset();return(Pe>0?"-":(Pe*=-1,"+"))+f(Pe/60|0,"0",2)+f(Pe%60,"0",2)}function te(we,Pe){return f(we.getUTCDate(),Pe,2)}function ue(we,Pe){return f(we.getUTCHours(),Pe,2)}function de(we,Pe){return f(we.getUTCHours()%12||12,Pe,2)}function Ee(we,Pe){return f(1+r.utcDay.count(r.utcYear(we),we),Pe,3)}function Me(we,Pe){return f(we.getUTCMilliseconds(),Pe,3)}function ve(we,Pe){return Me(we,Pe)+"000"}function Ae(we,Pe){return f(we.getUTCMonth()+1,Pe,2)}function ke(we,Pe){return f(we.getUTCMinutes(),Pe,2)}function De(we,Pe){return f(we.getUTCSeconds(),Pe,2)}function Ce(we){var Pe=we.getUTCDay();return Pe===0?7:Pe}function Oe(we,Pe){return f(r.utcSunday.count(r.utcYear(we)-1,we),Pe,2)}function Ue(we,Pe){var Qe=we.getUTCDay();return we=Qe>=4||Qe===0?r.utcThursday(we):r.utcThursday.ceil(we),f(r.utcThursday.count(r.utcYear(we),we)+(r.utcYear(we).getUTCDay()===4),Pe,2)}function ge(we){return we.getUTCDay()}function Te(we,Pe){return f(r.utcMonday.count(r.utcYear(we)-1,we),Pe,2)}function ce(we,Pe){return f(we.getUTCFullYear()%100,Pe,2)}function ye(we,Pe){return f(we.getUTCFullYear()%1e4,Pe,4)}function Le(){return"+0000"}function me(){return"%"}function he(we){return+we}function be(we){return Math.floor(+we/1e3)}var Se;ze({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function ze(we){return Se=o(we),e.timeFormat=Se.format,e.timeParse=Se.parse,e.utcFormat=Se.utcFormat,e.utcParse=Se.utcParse,Se}var Fe="%Y-%m-%dT%H:%M:%S.%LZ";function Ze(we){return we.toISOString()}var Ye=Date.prototype.toISOString?Ze:e.utcFormat(Fe);function Ge(we){var Pe=new Date(we);return isNaN(Pe)?null:Pe}var We=+new Date("2000-01-01T00:00:00.000Z")?Ge:e.utcParse(Fe);e.isoFormat=Ye,e.isoParse=We,e.timeFormatDefaultLocale=ze,e.timeFormatLocale=o,Object.defineProperty(e,"__esModule",{value:!0})})});var op=pe((bc,cb)=>{(function(e,r){typeof bc=="object"&&typeof cb!="undefined"?r(bc):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(bc,function(e){"use strict";function r(_){return Math.abs(_=Math.round(_))>=1e21?_.toLocaleString("en").replace(/,/g,""):_.toString(10)}function t(_,g){if((c=(_=g?_.toExponential(g-1):_.toExponential()).indexOf("e"))<0)return null;var c,A=_.slice(0,c);return[A.length>1?A[0]+A.slice(2):A,+_.slice(c+1)]}function n(_){return _=t(Math.abs(_)),_?_[1]:NaN}function a(_,g){return function(c,A){for(var h=c.length,R=[],E=0,D=_[0],N=0;h>0&&D>0&&(N+D+1>A&&(D=Math.max(1,A-N)),R.push(c.substring(h-=D,h+D)),!((N+=D+1)>A));)D=_[E=(E+1)%_.length];return R.reverse().join(g)}}function o(_){return function(g){return g.replace(/[0-9]/g,function(c){return _[+c]})}}var i=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(_){if(!(g=i.exec(_)))throw new Error("invalid format: "+_);var g;return new u({fill:g[1],align:g[2],sign:g[3],symbol:g[4],zero:g[5],width:g[6],comma:g[7],precision:g[8]&&g[8].slice(1),trim:g[9],type:g[10]})}l.prototype=u.prototype;function u(_){this.fill=_.fill===void 0?" ":_.fill+"",this.align=_.align===void 0?">":_.align+"",this.sign=_.sign===void 0?"-":_.sign+"",this.symbol=_.symbol===void 0?"":_.symbol+"",this.zero=!!_.zero,this.width=_.width===void 0?void 0:+_.width,this.comma=!!_.comma,this.precision=_.precision===void 0?void 0:+_.precision,this.trim=!!_.trim,this.type=_.type===void 0?"":_.type+""}u.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function s(_){e:for(var g=_.length,c=1,A=-1,h;c0&&(A=0);break}return A>0?_.slice(0,A)+_.slice(h+1):_}var f;function v(_,g){var c=t(_,g);if(!c)return _+"";var A=c[0],h=c[1],R=h-(f=Math.max(-8,Math.min(8,Math.floor(h/3)))*3)+1,E=A.length;return R===E?A:R>E?A+new Array(R-E+1).join("0"):R>0?A.slice(0,R)+"."+A.slice(R):"0."+new Array(1-R).join("0")+t(_,Math.max(0,g+R-1))[0]}function p(_,g){var c=t(_,g);if(!c)return _+"";var A=c[0],h=c[1];return h<0?"0."+new Array(-h).join("0")+A:A.length>h+1?A.slice(0,h+1)+"."+A.slice(h+1):A+new Array(h-A.length+2).join("0")}var b={"%":function(_,g){return(_*100).toFixed(g)},b:function(_){return Math.round(_).toString(2)},c:function(_){return _+""},d:r,e:function(_,g){return _.toExponential(g)},f:function(_,g){return _.toFixed(g)},g:function(_,g){return _.toPrecision(g)},o:function(_){return Math.round(_).toString(8)},p:function(_,g){return p(_*100,g)},r:p,s:v,X:function(_){return Math.round(_).toString(16).toUpperCase()},x:function(_){return Math.round(_).toString(16)}};function y(_){return _}var w=Array.prototype.map,M=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function m(_){var g=_.grouping===void 0||_.thousands===void 0?y:a(w.call(_.grouping,Number),_.thousands+""),c=_.currency===void 0?"":_.currency[0]+"",A=_.currency===void 0?"":_.currency[1]+"",h=_.decimal===void 0?".":_.decimal+"",R=_.numerals===void 0?y:o(w.call(_.numerals,String)),E=_.percent===void 0?"%":_.percent+"",D=_.minus===void 0?"-":_.minus+"",N=_.nan===void 0?"NaN":_.nan+"";function I(L){L=l(L);var P=L.fill,O=L.align,U=L.sign,X=L.symbol,j=L.zero,$=L.width,Y=L.comma,q=L.precision,Z=L.trim,ne=L.type;ne==="n"?(Y=!0,ne="g"):b[ne]||(q===void 0&&(q=12),Z=!0,ne="g"),(j||P==="0"&&O==="=")&&(j=!0,P="0",O="=");var Q=X==="$"?c:X==="#"&&/[boxX]/.test(ne)?"0"+ne.toLowerCase():"",oe=X==="$"?A:/[%p]/.test(ne)?E:"",ee=b[ne],G=/[defgprs%]/.test(ne);q=q===void 0?6:/[gprs]/.test(ne)?Math.max(1,Math.min(21,q)):Math.max(0,Math.min(20,q));function re(H){var te=Q,ue=oe,de,Ee,Me;if(ne==="c")ue=ee(H)+ue,H="";else{H=+H;var ve=H<0||1/H<0;if(H=isNaN(H)?N:ee(Math.abs(H),q),Z&&(H=s(H)),ve&&+H==0&&U!=="+"&&(ve=!1),te=(ve?U==="("?U:D:U==="-"||U==="("?"":U)+te,ue=(ne==="s"?M[8+f/3]:"")+ue+(ve&&U==="("?")":""),G){for(de=-1,Ee=H.length;++deMe||Me>57){ue=(Me===46?h+H.slice(de+1):H.slice(de))+ue,H=H.slice(0,de);break}}}Y&&!j&&(H=g(H,1/0));var Ae=te.length+H.length+ue.length,ke=Ae<$?new Array($-Ae+1).join(P):"";switch(Y&&j&&(H=g(ke+H,ke.length?$-ue.length:1/0),ke=""),O){case"<":H=te+H+ue+ke;break;case"=":H=te+ke+H+ue;break;case"^":H=ke.slice(0,Ae=ke.length>>1)+te+H+ue+ke.slice(Ae);break;default:H=ke+te+H+ue;break}return R(H)}return re.toString=function(){return L+""},re}function F(L,P){var O=I((L=l(L),L.type="f",L)),U=Math.max(-8,Math.min(8,Math.floor(n(P)/3)))*3,X=Math.pow(10,-U),j=M[8+U/3];return function($){return O(X*$)+j}}return{format:I,formatPrefix:F}}var k;S({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function S(_){return k=m(_),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function x(_){return Math.max(0,-n(Math.abs(_)))}function T(_,g){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(g)/3)))*3-n(Math.abs(_)))}function d(_,g){return _=Math.abs(_),g=Math.abs(g)-_,Math.max(0,n(g)-n(_))+1}e.FormatSpecifier=u,e.formatDefaultLocale=S,e.formatLocale=m,e.formatSpecifier=l,e.precisionFixed=x,e.precisionPrefix=T,e.precisionRound=d,Object.defineProperty(e,"__esModule",{value:!0})})});var hb=pe((Oue,vb)=>{"use strict";vb.exports=function(e){for(var r=e.length,t,n=0;n13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var rt=pe((Bue,db)=>{"use strict";var RB=hb();db.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&RB(t))return!1}else if(r!=="number")return!1;return e-e<1}});var an=pe((Uue,pb)=>{"use strict";pb.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var lp=pe((_c,gb)=>{(function(e,r){typeof _c=="object"&&typeof gb!="undefined"?r(_c):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(_c,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],f+=r[(l[u]&3)<<4|l[u+1]>>4],f+=r[(l[u+1]&15)<<2|l[u+2]>>6],f+=r[l[u+2]&63];return s%3===2?f=f.substring(0,f.length-1)+"=":s%3===1&&(f=f.substring(0,f.length-2)+"=="),f},o=function(i){var l=i.length*.75,u=i.length,s,f=0,v,p,b,y;i[i.length-1]==="="&&(l--,i[i.length-2]==="="&&l--);var w=new ArrayBuffer(l),M=new Uint8Array(w);for(s=0;s>4,M[f++]=(p&15)<<4|b>>2,M[f++]=(b&3)<<6|y&63;return w};e.decode=o,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var wo=pe((Hue,yb)=>{"use strict";yb.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var ea=pe(Ja=>{"use strict";var DB=lp().decode,PB=wo(),sp=Array.isArray,FB=ArrayBuffer,IB=DataView;function mb(e){return FB.isView(e)&&!(e instanceof IB)}Ja.isTypedArray=mb;function wc(e){return sp(e)||mb(e)}Ja.isArrayOrTypedArray=wc;function NB(e){return!wc(e[0])}Ja.isArray1D=NB;Ja.ensureArray=function(e,r){return sp(e)||(e=[]),e.length=r,e};var hn={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};hn.uint8c=hn.u1c;hn.uint8=hn.u1;hn.int8=hn.i1;hn.uint16=hn.u2;hn.int16=hn.i2;hn.uint32=hn.u4;hn.int32=hn.i4;hn.float32=hn.f4;hn.float64=hn.f8;function up(e){return e.constructor===ArrayBuffer}Ja.isArrayBuffer=up;Ja.decodeTypedArraySpec=function(e){var r=[],t=zB(e),n=t.dtype,a=hn[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var o=a.BYTES_PER_ELEMENT,i=t.bdata;up(i)||(i=DB(i));var l=t.shape===void 0?[i.byteLength/o]:(""+t.shape).split(",");l.reverse();var u=l.length,s,f,v=+l[0],p=o*v,b=0;if(u===1)r=new a(i);else if(u===2)for(s=+l[1],f=0;f{"use strict";var bb=rt(),cp=ea().isArrayOrTypedArray;Tb.exports=function(r,t){if(bb(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var n=t.split("."),a,o,i,l;for(l=0;l{"use strict";var Ss=Mc(),HB=/^\w*$/,VB=0,Ab=1,Tc=2,kb=3,bl=4;Sb.exports=function(r,t,n,a){n=n||"name",a=a||"value";var o,i,l,u={};t&&t.length?(l=Ss(r,t),i=l.get()):i=r,t=t||"";var s={};if(i)for(o=0;o2)return u[b]=u[b]|Tc,v.set(p,null);if(f){for(o=b;o{"use strict";var GB=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,YB=/^[^\.\[\]]+$/;Eb.exports=function(e,r){for(;r;){var t=e.match(GB);if(t)e=t[1];else if(e.match(YB))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var Ac=pe((Xue,Rb)=>{"use strict";var WB=rt();Rb.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var n=Math.log(Math.min(t[0],t[1]))/Math.LN10;return WB(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var Fb=pe((Zue,Pb)=>{"use strict";var Db=ea().isArrayOrTypedArray,nf=wo();Pb.exports=function e(r,t){for(var n in t){var a=t[n],o=r[n];if(o!==a)if(n.charAt(0)==="_"||typeof a=="function"){if(n in r)continue;r[n]=a}else if(Db(a)&&Db(o)&&nf(a[0])){if(n==="customdata"||n==="ids")continue;for(var i=Math.min(a.length,o.length),l=0;l{"use strict";function XB(e,r){var t=e%r;return t<0?t+r:t}function ZB(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}Ib.exports={mod:XB,modHalf:ZB}});var ka=pe((Kue,kc)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,o=e.min,i=e.max,l=e.random;function u(G,re){if(G=G||"",re=re||{},G instanceof u)return G;if(!(this instanceof u))return new u(G,re);var H=s(G);this._originalInput=G,this._r=H.r,this._g=H.g,this._b=H.b,this._a=H.a,this._roundA=a(100*this._a)/100,this._format=re.format||H.format,this._gradientType=re.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=H.ok,this._tc_id=n++}u.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var G=this.toRgb();return(G.r*299+G.g*587+G.b*114)/1e3},getLuminance:function(){var G=this.toRgb(),re,H,te,ue,de,Ee;return re=G.r/255,H=G.g/255,te=G.b/255,re<=.03928?ue=re/12.92:ue=e.pow((re+.055)/1.055,2.4),H<=.03928?de=H/12.92:de=e.pow((H+.055)/1.055,2.4),te<=.03928?Ee=te/12.92:Ee=e.pow((te+.055)/1.055,2.4),.2126*ue+.7152*de+.0722*Ee},setAlpha:function(G){return this._a=L(G),this._roundA=a(100*this._a)/100,this},toHsv:function(){var G=b(this._r,this._g,this._b);return{h:G.h*360,s:G.s,v:G.v,a:this._a}},toHsvString:function(){var G=b(this._r,this._g,this._b),re=a(G.h*360),H=a(G.s*100),te=a(G.v*100);return this._a==1?"hsv("+re+", "+H+"%, "+te+"%)":"hsva("+re+", "+H+"%, "+te+"%, "+this._roundA+")"},toHsl:function(){var G=v(this._r,this._g,this._b);return{h:G.h*360,s:G.s,l:G.l,a:this._a}},toHslString:function(){var G=v(this._r,this._g,this._b),re=a(G.h*360),H=a(G.s*100),te=a(G.l*100);return this._a==1?"hsl("+re+", "+H+"%, "+te+"%)":"hsla("+re+", "+H+"%, "+te+"%, "+this._roundA+")"},toHex:function(G){return w(this._r,this._g,this._b,G)},toHexString:function(G){return"#"+this.toHex(G)},toHex8:function(G){return M(this._r,this._g,this._b,this._a,G)},toHex8String:function(G){return"#"+this.toHex8(G)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(P(this._r,255)*100)+"%",g:a(P(this._g,255)*100)+"%",b:a(P(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(P(this._r,255)*100)+"%, "+a(P(this._g,255)*100)+"%, "+a(P(this._b,255)*100)+"%)":"rgba("+a(P(this._r,255)*100)+"%, "+a(P(this._g,255)*100)+"%, "+a(P(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:I[w(this._r,this._g,this._b,!0)]||!1},toFilter:function(G){var re="#"+m(this._r,this._g,this._b,this._a),H=re,te=this._gradientType?"GradientType = 1, ":"";if(G){var ue=u(G);H="#"+m(ue._r,ue._g,ue._b,ue._a)}return"progid:DXImageTransform.Microsoft.gradient("+te+"startColorstr="+re+",endColorstr="+H+")"},toString:function(G){var re=!!G;G=G||this._format;var H=!1,te=this._a<1&&this._a>=0,ue=!re&&te&&(G==="hex"||G==="hex6"||G==="hex3"||G==="hex4"||G==="hex8"||G==="name");return ue?G==="name"&&this._a===0?this.toName():this.toRgbString():(G==="rgb"&&(H=this.toRgbString()),G==="prgb"&&(H=this.toPercentageRgbString()),(G==="hex"||G==="hex6")&&(H=this.toHexString()),G==="hex3"&&(H=this.toHexString(!0)),G==="hex4"&&(H=this.toHex8String(!0)),G==="hex8"&&(H=this.toHex8String()),G==="name"&&(H=this.toName()),G==="hsl"&&(H=this.toHslString()),G==="hsv"&&(H=this.toHsvString()),H||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(G,re){var H=G.apply(null,[this].concat([].slice.call(re)));return this._r=H._r,this._g=H._g,this._b=H._b,this.setAlpha(H._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(d,arguments)},darken:function(){return this._applyModification(_,arguments)},desaturate:function(){return this._applyModification(k,arguments)},saturate:function(){return this._applyModification(S,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(g,arguments)},_applyCombination:function(G,re){return G.apply(null,[this].concat([].slice.call(re)))},analogous:function(){return this._applyCombination(E,arguments)},complement:function(){return this._applyCombination(c,arguments)},monochromatic:function(){return this._applyCombination(D,arguments)},splitcomplement:function(){return this._applyCombination(R,arguments)},triad:function(){return this._applyCombination(A,arguments)},tetrad:function(){return this._applyCombination(h,arguments)}},u.fromRatio=function(G,re){if(typeof G=="object"){var H={};for(var te in G)G.hasOwnProperty(te)&&(te==="a"?H[te]=G[te]:H[te]=Y(G[te]));G=H}return u(G,re)};function s(G){var re={r:0,g:0,b:0},H=1,te=null,ue=null,de=null,Ee=!1,Me=!1;return typeof G=="string"&&(G=oe(G)),typeof G=="object"&&(Q(G.r)&&Q(G.g)&&Q(G.b)?(re=f(G.r,G.g,G.b),Ee=!0,Me=String(G.r).substr(-1)==="%"?"prgb":"rgb"):Q(G.h)&&Q(G.s)&&Q(G.v)?(te=Y(G.s),ue=Y(G.v),re=y(G.h,te,ue),Ee=!0,Me="hsv"):Q(G.h)&&Q(G.s)&&Q(G.l)&&(te=Y(G.s),de=Y(G.l),re=p(G.h,te,de),Ee=!0,Me="hsl"),G.hasOwnProperty("a")&&(H=G.a)),H=L(H),{ok:Ee,format:G.format||Me,r:o(255,i(re.r,0)),g:o(255,i(re.g,0)),b:o(255,i(re.b,0)),a:H}}function f(G,re,H){return{r:P(G,255)*255,g:P(re,255)*255,b:P(H,255)*255}}function v(G,re,H){G=P(G,255),re=P(re,255),H=P(H,255);var te=i(G,re,H),ue=o(G,re,H),de,Ee,Me=(te+ue)/2;if(te==ue)de=Ee=0;else{var ve=te-ue;switch(Ee=Me>.5?ve/(2-te-ue):ve/(te+ue),te){case G:de=(re-H)/ve+(re1&&(De-=1),De<1/6?Ae+(ke-Ae)*6*De:De<1/2?ke:De<2/3?Ae+(ke-Ae)*(2/3-De)*6:Ae}if(re===0)te=ue=de=H;else{var Me=H<.5?H*(1+re):H+re-H*re,ve=2*H-Me;te=Ee(ve,Me,G+1/3),ue=Ee(ve,Me,G),de=Ee(ve,Me,G-1/3)}return{r:te*255,g:ue*255,b:de*255}}function b(G,re,H){G=P(G,255),re=P(re,255),H=P(H,255);var te=i(G,re,H),ue=o(G,re,H),de,Ee,Me=te,ve=te-ue;if(Ee=te===0?0:ve/te,te==ue)de=0;else{switch(te){case G:de=(re-H)/ve+(re>1)+720)%360;--re;)te.h=(te.h+ue)%360,de.push(u(te));return de}function D(G,re){re=re||6;for(var H=u(G).toHsv(),te=H.h,ue=H.s,de=H.v,Ee=[],Me=1/re;re--;)Ee.push(u({h:te,s:ue,v:de})),de=(de+Me)%1;return Ee}u.mix=function(G,re,H){H=H===0?0:H||50;var te=u(G).toRgb(),ue=u(re).toRgb(),de=H/100,Ee={r:(ue.r-te.r)*de+te.r,g:(ue.g-te.g)*de+te.g,b:(ue.b-te.b)*de+te.b,a:(ue.a-te.a)*de+te.a};return u(Ee)},u.readability=function(G,re){var H=u(G),te=u(re);return(e.max(H.getLuminance(),te.getLuminance())+.05)/(e.min(H.getLuminance(),te.getLuminance())+.05)},u.isReadable=function(G,re,H){var te=u.readability(G,re),ue,de;switch(de=!1,ue=ee(H),ue.level+ue.size){case"AAsmall":case"AAAlarge":de=te>=4.5;break;case"AAlarge":de=te>=3;break;case"AAAsmall":de=te>=7;break}return de},u.mostReadable=function(G,re,H){var te=null,ue=0,de,Ee,Me,ve;H=H||{},Ee=H.includeFallbackColors,Me=H.level,ve=H.size;for(var Ae=0;Aeue&&(ue=de,te=u(re[Ae]));return u.isReadable(G,te,{level:Me,size:ve})||!Ee?te:(H.includeFallbackColors=!1,u.mostReadable(G,["#fff","#000"],H))};var N=u.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},I=u.hexNames=F(N);function F(G){var re={};for(var H in G)G.hasOwnProperty(H)&&(re[G[H]]=H);return re}function L(G){return G=parseFloat(G),(isNaN(G)||G<0||G>1)&&(G=1),G}function P(G,re){X(G)&&(G="100%");var H=j(G);return G=o(re,i(0,parseFloat(G))),H&&(G=parseInt(G*re,10)/100),e.abs(G-re)<1e-6?1:G%re/parseFloat(re)}function O(G){return o(1,i(0,G))}function U(G){return parseInt(G,16)}function X(G){return typeof G=="string"&&G.indexOf(".")!=-1&&parseFloat(G)===1}function j(G){return typeof G=="string"&&G.indexOf("%")!=-1}function $(G){return G.length==1?"0"+G:""+G}function Y(G){return G<=1&&(G=G*100+"%"),G}function q(G){return e.round(parseFloat(G)*255).toString(16)}function Z(G){return U(G)/255}var ne=function(){var G="[-\\+]?\\d+%?",re="[-\\+]?\\d*\\.\\d+%?",H="(?:"+re+")|(?:"+G+")",te="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?",ue="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?";return{CSS_UNIT:new RegExp(H),rgb:new RegExp("rgb"+te),rgba:new RegExp("rgba"+ue),hsl:new RegExp("hsl"+te),hsla:new RegExp("hsla"+ue),hsv:new RegExp("hsv"+te),hsva:new RegExp("hsva"+ue),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Q(G){return!!ne.CSS_UNIT.exec(G)}function oe(G){G=G.replace(r,"").replace(t,"").toLowerCase();var re=!1;if(N[G])G=N[G],re=!0;else if(G=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var H;return(H=ne.rgb.exec(G))?{r:H[1],g:H[2],b:H[3]}:(H=ne.rgba.exec(G))?{r:H[1],g:H[2],b:H[3],a:H[4]}:(H=ne.hsl.exec(G))?{h:H[1],s:H[2],l:H[3]}:(H=ne.hsla.exec(G))?{h:H[1],s:H[2],l:H[3],a:H[4]}:(H=ne.hsv.exec(G))?{h:H[1],s:H[2],v:H[3]}:(H=ne.hsva.exec(G))?{h:H[1],s:H[2],v:H[3],a:H[4]}:(H=ne.hex8.exec(G))?{r:U(H[1]),g:U(H[2]),b:U(H[3]),a:Z(H[4]),format:re?"name":"hex8"}:(H=ne.hex6.exec(G))?{r:U(H[1]),g:U(H[2]),b:U(H[3]),format:re?"name":"hex"}:(H=ne.hex4.exec(G))?{r:U(H[1]+""+H[1]),g:U(H[2]+""+H[2]),b:U(H[3]+""+H[3]),a:Z(H[4]+""+H[4]),format:re?"name":"hex8"}:(H=ne.hex3.exec(G))?{r:U(H[1]+""+H[1]),g:U(H[2]+""+H[2]),b:U(H[3]+""+H[3]),format:re?"name":"hex"}:!1}function ee(G){var re,H;return G=G||{level:"AA",size:"small"},re=(G.level||"AA").toUpperCase(),H=(G.size||"small").toLowerCase(),re!=="AA"&&re!=="AAA"&&(re="AA"),H!=="small"&&H!=="large"&&(H="small"),{level:re,size:H}}typeof kc!="undefined"&&kc.exports?kc.exports=u:window.tinycolor=u})(Math)});var Mt=pe(lf=>{"use strict";var Nb=wo(),af=Array.isArray;function JB(e,r){var t,n;for(t=0;t{"use strict";zb.exports=function(e){var r=e.variantValues,t=e.editType,n=e.colorEditType;n===void 0&&(n=t);var a={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(a.valType="enumerated",a.values=a.extras,a.extras=void 0,a.min=void 0,a.max=void 0);var o={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:n},weight:a,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(o.size.dflt="auto"),e.autoColor&&(o.color.dflt="auto"),e.arrayOk&&(o.family.arrayOk=!0,o.weight.arrayOk=!0,o.style.arrayOk=!0,e.noFontVariant||(o.variant.arrayOk=!0),e.noFontTextcase||(o.textcase.arrayOk=!0),e.noFontLineposition||(o.lineposition.arrayOk=!0),e.noFontShadow||(o.shadow.arrayOk=!0),o.size.arrayOk=!0,o.color.arrayOk=!0),o}});var sf=pe((jue,qb)=>{"use strict";qb.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var _l=pe((efe,Ub)=>{"use strict";var Ob=sf(),Bb=kn(),vp=Bb({editType:"none"});vp.family.dflt=Ob.HOVERFONT;vp.size.dflt=Ob.HOVERFONTSIZE;Ub.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:vp,grouptitlefont:Bb({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Ec=pe((rfe,Hb)=>{"use strict";var KB=kn(),Sc=_l().hoverlabel,Cc=Mt().extendFlat;Hb.exports={hoverlabel:{bgcolor:Cc({},Sc.bgcolor,{arrayOk:!0}),bordercolor:Cc({},Sc.bordercolor,{arrayOk:!0}),font:KB({arrayOk:!0,editType:"none"}),align:Cc({},Sc.align,{arrayOk:!0}),namelength:Cc({},Sc.namelength,{arrayOk:!0}),editType:"none"}}});var Sn=pe((tfe,Vb)=>{"use strict";var QB=kn(),$B=Ec();Vb.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:QB({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:$B.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var wl=pe((nfe,Wb)=>{"use strict";var jB=ka(),Lc={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Gb=Lc.RdBu;function eU(e,r){if(r||(r=Gb),!e)return r;function t(){try{e=Lc[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Yb(e)?e:r}function Yb(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";Ml.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Ml.defaultLine="#444";Ml.lightLine="#eee";Ml.background="#fff";Ml.borderLine="#BEC8D9";Ml.lightFraction=100*10/11});var Zr=pe((ife,Xb)=>{"use strict";var ra=ka(),tU=rt(),nU=ea().isTypedArray,on=Xb.exports={},Rc=Ti();on.defaults=Rc.defaults;var aU=on.defaultLine=Rc.defaultLine;on.lightLine=Rc.lightLine;var dp=on.background=Rc.background;on.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};on.rgb=function(e){return on.tinyRGB(ra(e))};on.opacity=function(e){return e?ra(e).getAlpha():0};on.addOpacity=function(e,r){var t=ra(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};on.combine=function(e,r){var t=ra(e).toRgb();if(t.a===1)return ra(e).toRgbString();var n=ra(r||dp).toRgb(),a=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},o={r:a.r*(1-t.a)+t.r*t.a,g:a.g*(1-t.a)+t.g*t.a,b:a.b*(1-t.a)+t.b*t.a};return ra(o).toRgbString()};on.interpolate=function(e,r,t){var n=ra(e).toRgb(),a=ra(r).toRgb(),o={r:t*n.r+(1-t)*a.r,g:t*n.g+(1-t)*a.g,b:t*n.b+(1-t)*a.b};return ra(o).toRgbString()};on.contrast=function(e,r,t){var n=ra(e);n.getAlpha()!==1&&(n=ra(on.combine(e,dp)));var a=n.isDark()?r?n.lighten(r):dp:t?n.darken(t):aU;return a.toString()};on.stroke=function(e,r){var t=ra(r);e.style({stroke:on.tinyRGB(t),"stroke-opacity":t.getAlpha()})};on.fill=function(e,r){var t=ra(r);e.style({fill:on.tinyRGB(t),"fill-opacity":t.getAlpha()})};on.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,n,a,o;for(t=0;t=0)))return e;if(o===3)n[o]>1&&(n[o]=1);else if(n[o]>=1)return e}var i=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return a?"rgba("+i+", "+n[3]+")":"rgb("+i+")"}});var Dc=pe((ofe,Zb)=>{"use strict";Zb.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Es=pe(Jb=>{"use strict";Jb.counter=function(e,r,t,n){var a=(r||"")+(t?"":"$"),o=n===!1?"":"^";return e==="xy"?new RegExp(o+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+a):new RegExp(o+e+"([2-9]|[1-9][0-9]+)?"+a)}});var jb=pe(ta=>{"use strict";var pp=rt(),Kb=ka(),Qb=Mt().extendFlat,iU=Sn(),oU=wl(),lU=Zr(),sU=Dc().DESELECTDIM,Ls=Mc(),$b=Es().counter,uU=Cs().modHalf,Ai=ea().isArrayOrTypedArray,Mo=ea().isTypedArraySpec,To=ea().decodeTypedArraySpec;ta.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Ai(e)?e:Mo(e)?To(e):t)}},enumerated:{coerceFunction:function(e,r,t,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,n=0;nn.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}Mo(e)&&(e=To(e)),e%1||!pp(e)||n.min!==void 0&&en.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,n){if(typeof e!="string"){var a=typeof e=="number";n.strict===!0||!a?r.set(t):r.set(String(e))}else n.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Mo(e)&&(e=To(e)),Kb(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return Kb(a).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(n)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(oU.get(e,t))}},angle:{coerceFunction:function(e,r,t){Mo(e)&&(e=To(e)),e==="auto"?r.set("auto"):pp(e)?r.set(uU(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||$b(t);if(typeof e=="string"&&a.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!$b(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var a=e.split("+"),o=0;o{"use strict";var e4={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},r4={};function t4(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),t4(n,r[t]))}}t4(e4,r4);n4.exports={configAttributes:e4,dfltConfig:r4}});var yp=pe((ffe,a4)=>{"use strict";var gp=it(),fU=rt(),uf=[];a4.exports=function(e,r){if(uf.indexOf(e)!==-1)return;uf.push(e);var t=1e3;fU(r)?t=r:r==="long"&&(t=3e3);var n=gp.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(uf);function o(i){i.duration(700).style("opacity",0).each("end",function(l){var u=uf.indexOf(l);u!==-1&&uf.splice(u,1),gp.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(i){var l=gp.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(o)});for(var u=l.append("p"),s=i.split(//g),f=0;f{"use strict";var Rs=Tl().dfltConfig,mp=yp(),xp=i4.exports={};xp.log=function(){var e;if(Rs.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};xp.warn=function(){var e;if(Rs.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};xp.error=function(){var e;if(Rs.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Fc=pe((vfe,o4)=>{"use strict";o4.exports=function(){}});var bp=pe((hfe,l4)=>{"use strict";l4.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{s4.exports=cU;function cU(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var c4=pe((pfe,f4)=>{f4.exports=vU;function vU(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var h4=pe((gfe,v4)=>{v4.exports=hU;function hU(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var _p=pe((yfe,d4)=>{d4.exports=dU;function dU(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var g4=pe((mfe,p4)=>{p4.exports=pU;function pU(e,r){if(e===r){var t=r[1],n=r[2],a=r[3],o=r[6],i=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=n,e[9]=o,e[11]=r[14],e[12]=a,e[13]=i,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var m4=pe((xfe,y4)=>{y4.exports=gU;function gU(e,r){var t=r[0],n=r[1],a=r[2],o=r[3],i=r[4],l=r[5],u=r[6],s=r[7],f=r[8],v=r[9],p=r[10],b=r[11],y=r[12],w=r[13],M=r[14],m=r[15],k=t*l-n*i,S=t*u-a*i,x=t*s-o*i,T=n*u-a*l,d=n*s-o*l,_=a*s-o*u,g=f*w-v*y,c=f*M-p*y,A=f*m-b*y,h=v*M-p*w,R=v*m-b*w,E=p*m-b*M,D=k*E-S*R+x*h+T*A-d*c+_*g;return D?(D=1/D,e[0]=(l*E-u*R+s*h)*D,e[1]=(a*R-n*E-o*h)*D,e[2]=(w*_-M*d+m*T)*D,e[3]=(p*d-v*_-b*T)*D,e[4]=(u*A-i*E-s*c)*D,e[5]=(t*E-a*A+o*c)*D,e[6]=(M*x-y*_-m*S)*D,e[7]=(f*_-p*x+b*S)*D,e[8]=(i*R-l*A+s*g)*D,e[9]=(n*A-t*R-o*g)*D,e[10]=(y*d-w*x+m*k)*D,e[11]=(v*x-f*d-b*k)*D,e[12]=(l*c-i*h-u*g)*D,e[13]=(t*h-n*c+a*g)*D,e[14]=(w*S-y*T-M*k)*D,e[15]=(f*T-v*S+p*k)*D,e):null}});var b4=pe((bfe,x4)=>{x4.exports=yU;function yU(e,r){var t=r[0],n=r[1],a=r[2],o=r[3],i=r[4],l=r[5],u=r[6],s=r[7],f=r[8],v=r[9],p=r[10],b=r[11],y=r[12],w=r[13],M=r[14],m=r[15];return e[0]=l*(p*m-b*M)-v*(u*m-s*M)+w*(u*b-s*p),e[1]=-(n*(p*m-b*M)-v*(a*m-o*M)+w*(a*b-o*p)),e[2]=n*(u*m-s*M)-l*(a*m-o*M)+w*(a*s-o*u),e[3]=-(n*(u*b-s*p)-l*(a*b-o*p)+v*(a*s-o*u)),e[4]=-(i*(p*m-b*M)-f*(u*m-s*M)+y*(u*b-s*p)),e[5]=t*(p*m-b*M)-f*(a*m-o*M)+y*(a*b-o*p),e[6]=-(t*(u*m-s*M)-i*(a*m-o*M)+y*(a*s-o*u)),e[7]=t*(u*b-s*p)-i*(a*b-o*p)+f*(a*s-o*u),e[8]=i*(v*m-b*w)-f*(l*m-s*w)+y*(l*b-s*v),e[9]=-(t*(v*m-b*w)-f*(n*m-o*w)+y*(n*b-o*v)),e[10]=t*(l*m-s*w)-i*(n*m-o*w)+y*(n*s-o*l),e[11]=-(t*(l*b-s*v)-i*(n*b-o*v)+f*(n*s-o*l)),e[12]=-(i*(v*M-p*w)-f*(l*M-u*w)+y*(l*p-u*v)),e[13]=t*(v*M-p*w)-f*(n*M-a*w)+y*(n*p-a*v),e[14]=-(t*(l*M-u*w)-i*(n*M-a*w)+y*(n*u-a*l)),e[15]=t*(l*p-u*v)-i*(n*p-a*v)+f*(n*u-a*l),e}});var w4=pe((_fe,_4)=>{_4.exports=mU;function mU(e){var r=e[0],t=e[1],n=e[2],a=e[3],o=e[4],i=e[5],l=e[6],u=e[7],s=e[8],f=e[9],v=e[10],p=e[11],b=e[12],y=e[13],w=e[14],M=e[15],m=r*i-t*o,k=r*l-n*o,S=r*u-a*o,x=t*l-n*i,T=t*u-a*i,d=n*u-a*l,_=s*y-f*b,g=s*w-v*b,c=s*M-p*b,A=f*w-v*y,h=f*M-p*y,R=v*M-p*w;return m*R-k*h+S*A+x*c-T*g+d*_}});var T4=pe((wfe,M4)=>{M4.exports=xU;function xU(e,r,t){var n=r[0],a=r[1],o=r[2],i=r[3],l=r[4],u=r[5],s=r[6],f=r[7],v=r[8],p=r[9],b=r[10],y=r[11],w=r[12],M=r[13],m=r[14],k=r[15],S=t[0],x=t[1],T=t[2],d=t[3];return e[0]=S*n+x*l+T*v+d*w,e[1]=S*a+x*u+T*p+d*M,e[2]=S*o+x*s+T*b+d*m,e[3]=S*i+x*f+T*y+d*k,S=t[4],x=t[5],T=t[6],d=t[7],e[4]=S*n+x*l+T*v+d*w,e[5]=S*a+x*u+T*p+d*M,e[6]=S*o+x*s+T*b+d*m,e[7]=S*i+x*f+T*y+d*k,S=t[8],x=t[9],T=t[10],d=t[11],e[8]=S*n+x*l+T*v+d*w,e[9]=S*a+x*u+T*p+d*M,e[10]=S*o+x*s+T*b+d*m,e[11]=S*i+x*f+T*y+d*k,S=t[12],x=t[13],T=t[14],d=t[15],e[12]=S*n+x*l+T*v+d*w,e[13]=S*a+x*u+T*p+d*M,e[14]=S*o+x*s+T*b+d*m,e[15]=S*i+x*f+T*y+d*k,e}});var k4=pe((Mfe,A4)=>{A4.exports=bU;function bU(e,r,t){var n=t[0],a=t[1],o=t[2],i,l,u,s,f,v,p,b,y,w,M,m;return r===e?(e[12]=r[0]*n+r[4]*a+r[8]*o+r[12],e[13]=r[1]*n+r[5]*a+r[9]*o+r[13],e[14]=r[2]*n+r[6]*a+r[10]*o+r[14],e[15]=r[3]*n+r[7]*a+r[11]*o+r[15]):(i=r[0],l=r[1],u=r[2],s=r[3],f=r[4],v=r[5],p=r[6],b=r[7],y=r[8],w=r[9],M=r[10],m=r[11],e[0]=i,e[1]=l,e[2]=u,e[3]=s,e[4]=f,e[5]=v,e[6]=p,e[7]=b,e[8]=y,e[9]=w,e[10]=M,e[11]=m,e[12]=i*n+f*a+y*o+r[12],e[13]=l*n+v*a+w*o+r[13],e[14]=u*n+p*a+M*o+r[14],e[15]=s*n+b*a+m*o+r[15]),e}});var C4=pe((Tfe,S4)=>{S4.exports=_U;function _U(e,r,t){var n=t[0],a=t[1],o=t[2];return e[0]=r[0]*n,e[1]=r[1]*n,e[2]=r[2]*n,e[3]=r[3]*n,e[4]=r[4]*a,e[5]=r[5]*a,e[6]=r[6]*a,e[7]=r[7]*a,e[8]=r[8]*o,e[9]=r[9]*o,e[10]=r[10]*o,e[11]=r[11]*o,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var L4=pe((Afe,E4)=>{E4.exports=wU;function wU(e,r,t,n){var a=n[0],o=n[1],i=n[2],l=Math.sqrt(a*a+o*o+i*i),u,s,f,v,p,b,y,w,M,m,k,S,x,T,d,_,g,c,A,h,R,E,D,N;return Math.abs(l)<1e-6?null:(l=1/l,a*=l,o*=l,i*=l,u=Math.sin(t),s=Math.cos(t),f=1-s,v=r[0],p=r[1],b=r[2],y=r[3],w=r[4],M=r[5],m=r[6],k=r[7],S=r[8],x=r[9],T=r[10],d=r[11],_=a*a*f+s,g=o*a*f+i*u,c=i*a*f-o*u,A=a*o*f-i*u,h=o*o*f+s,R=i*o*f+a*u,E=a*i*f+o*u,D=o*i*f-a*u,N=i*i*f+s,e[0]=v*_+w*g+S*c,e[1]=p*_+M*g+x*c,e[2]=b*_+m*g+T*c,e[3]=y*_+k*g+d*c,e[4]=v*A+w*h+S*R,e[5]=p*A+M*h+x*R,e[6]=b*A+m*h+T*R,e[7]=y*A+k*h+d*R,e[8]=v*E+w*D+S*N,e[9]=p*E+M*D+x*N,e[10]=b*E+m*D+T*N,e[11]=y*E+k*D+d*N,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var D4=pe((kfe,R4)=>{R4.exports=MU;function MU(e,r,t){var n=Math.sin(t),a=Math.cos(t),o=r[4],i=r[5],l=r[6],u=r[7],s=r[8],f=r[9],v=r[10],p=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=o*a+s*n,e[5]=i*a+f*n,e[6]=l*a+v*n,e[7]=u*a+p*n,e[8]=s*a-o*n,e[9]=f*a-i*n,e[10]=v*a-l*n,e[11]=p*a-u*n,e}});var F4=pe((Sfe,P4)=>{P4.exports=TU;function TU(e,r,t){var n=Math.sin(t),a=Math.cos(t),o=r[0],i=r[1],l=r[2],u=r[3],s=r[8],f=r[9],v=r[10],p=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=o*a-s*n,e[1]=i*a-f*n,e[2]=l*a-v*n,e[3]=u*a-p*n,e[8]=o*n+s*a,e[9]=i*n+f*a,e[10]=l*n+v*a,e[11]=u*n+p*a,e}});var N4=pe((Cfe,I4)=>{I4.exports=AU;function AU(e,r,t){var n=Math.sin(t),a=Math.cos(t),o=r[0],i=r[1],l=r[2],u=r[3],s=r[4],f=r[5],v=r[6],p=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=o*a+s*n,e[1]=i*a+f*n,e[2]=l*a+v*n,e[3]=u*a+p*n,e[4]=s*a-o*n,e[5]=f*a-i*n,e[6]=v*a-l*n,e[7]=p*a-u*n,e}});var q4=pe((Efe,z4)=>{z4.exports=kU;function kU(e,r,t){var n,a,o,i=t[0],l=t[1],u=t[2],s=Math.sqrt(i*i+l*l+u*u);return Math.abs(s)<1e-6?null:(s=1/s,i*=s,l*=s,u*=s,n=Math.sin(r),a=Math.cos(r),o=1-a,e[0]=i*i*o+a,e[1]=l*i*o+u*n,e[2]=u*i*o-l*n,e[3]=0,e[4]=i*l*o-u*n,e[5]=l*l*o+a,e[6]=u*l*o+i*n,e[7]=0,e[8]=i*u*o+l*n,e[9]=l*u*o-i*n,e[10]=u*u*o+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var B4=pe((Lfe,O4)=>{O4.exports=SU;function SU(e,r,t){var n=r[0],a=r[1],o=r[2],i=r[3],l=n+n,u=a+a,s=o+o,f=n*l,v=n*u,p=n*s,b=a*u,y=a*s,w=o*s,M=i*l,m=i*u,k=i*s;return e[0]=1-(b+w),e[1]=v+k,e[2]=p-m,e[3]=0,e[4]=v-k,e[5]=1-(f+w),e[6]=y+M,e[7]=0,e[8]=p+m,e[9]=y-M,e[10]=1-(f+b),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var H4=pe((Rfe,U4)=>{U4.exports=CU;function CU(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var G4=pe((Dfe,V4)=>{V4.exports=EU;function EU(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var W4=pe((Pfe,Y4)=>{Y4.exports=LU;function LU(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Z4=pe((Ffe,X4)=>{X4.exports=RU;function RU(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var K4=pe((Ife,J4)=>{J4.exports=DU;function DU(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var wp=pe((Nfe,Q4)=>{Q4.exports=PU;function PU(e,r){var t=r[0],n=r[1],a=r[2],o=r[3],i=t+t,l=n+n,u=a+a,s=t*i,f=n*i,v=n*l,p=a*i,b=a*l,y=a*u,w=o*i,M=o*l,m=o*u;return e[0]=1-v-y,e[1]=f+m,e[2]=p-M,e[3]=0,e[4]=f-m,e[5]=1-s-y,e[6]=b+w,e[7]=0,e[8]=p+M,e[9]=b-w,e[10]=1-s-v,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var j4=pe((zfe,$4)=>{$4.exports=FU;function FU(e,r,t,n,a,o,i){var l=1/(t-r),u=1/(a-n),s=1/(o-i);return e[0]=o*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=o*2*u,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(a+n)*u,e[10]=(i+o)*s,e[11]=-1,e[12]=0,e[13]=0,e[14]=i*o*2*s,e[15]=0,e}});var r_=pe((qfe,e_)=>{e_.exports=IU;function IU(e,r,t,n,a){var o=1/Math.tan(r/2),i=1/(n-a);return e[0]=o/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=o,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(a+n)*i,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*n*i,e[15]=0,e}});var n_=pe((Ofe,t_)=>{t_.exports=NU;function NU(e,r,t,n){var a=Math.tan(r.upDegrees*Math.PI/180),o=Math.tan(r.downDegrees*Math.PI/180),i=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),u=2/(i+l),s=2/(a+o);return e[0]=u,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=-((i-l)*u*.5),e[9]=(a-o)*s*.5,e[10]=n/(t-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*t/(t-n),e[15]=0,e}});var i_=pe((Bfe,a_)=>{a_.exports=zU;function zU(e,r,t,n,a,o,i){var l=1/(r-t),u=1/(n-a),s=1/(o-i);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*s,e[11]=0,e[12]=(r+t)*l,e[13]=(a+n)*u,e[14]=(i+o)*s,e[15]=1,e}});var l_=pe((Ufe,o_)=>{var qU=_p();o_.exports=OU;function OU(e,r,t,n){var a,o,i,l,u,s,f,v,p,b,y=r[0],w=r[1],M=r[2],m=n[0],k=n[1],S=n[2],x=t[0],T=t[1],d=t[2];return Math.abs(y-x)<1e-6&&Math.abs(w-T)<1e-6&&Math.abs(M-d)<1e-6?qU(e):(f=y-x,v=w-T,p=M-d,b=1/Math.sqrt(f*f+v*v+p*p),f*=b,v*=b,p*=b,a=k*p-S*v,o=S*f-m*p,i=m*v-k*f,b=Math.sqrt(a*a+o*o+i*i),b?(b=1/b,a*=b,o*=b,i*=b):(a=0,o=0,i=0),l=v*i-p*o,u=p*a-f*i,s=f*o-v*a,b=Math.sqrt(l*l+u*u+s*s),b?(b=1/b,l*=b,u*=b,s*=b):(l=0,u=0,s=0),e[0]=a,e[1]=l,e[2]=f,e[3]=0,e[4]=o,e[5]=u,e[6]=v,e[7]=0,e[8]=i,e[9]=s,e[10]=p,e[11]=0,e[12]=-(a*y+o*w+i*M),e[13]=-(l*y+u*w+s*M),e[14]=-(f*y+v*w+p*M),e[15]=1,e)}});var u_=pe((Hfe,s_)=>{s_.exports=BU;function BU(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Mp=pe((Vfe,f_)=>{f_.exports={create:u4(),clone:c4(),copy:h4(),identity:_p(),transpose:g4(),invert:m4(),adjoint:b4(),determinant:w4(),multiply:T4(),translate:k4(),scale:C4(),rotate:L4(),rotateX:D4(),rotateY:F4(),rotateZ:N4(),fromRotation:q4(),fromRotationTranslation:B4(),fromScaling:H4(),fromTranslation:G4(),fromXRotation:W4(),fromYRotation:Z4(),fromZRotation:K4(),fromQuat:wp(),frustum:j4(),perspective:r_(),perspectiveFromFieldOfView:n_(),ortho:i_(),lookAt:l_(),str:u_()}});var Ic=pe(Ut=>{"use strict";var UU=Mp();Ut.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var HU=it(),c_=Al(),VU=Ic(),GU=Mp();function YU(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function WU(e){var r=HU.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function v_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function XU(e,r){h_("global",e,r)}function h_(e,r,t){var n="plotly.js-style-"+e,a=document.getElementById(n);if(!(a&&a.matches(".no-inline-styles"))){a||(a=document.createElement("style"),a.setAttribute("id",n),a.appendChild(document.createTextNode("")),document.head.appendChild(a));var o=a.sheet;o?o.insertRule?o.insertRule(r+"{"+t+"}",0):o.addRule?o.addRule(r,t,0):c_.warn("addStyleRule failed"):c_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function ZU(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&v_(t)}function JU(e,r,t,n,a,o){var i=n.split(":"),l=a.split(":"),u="data-btn-style-event-added";o||(o=document),o.querySelectorAll(e).forEach(function(s){s.getAttribute(u)||(s.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[i[0]]=i[1])}),s.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[i[0]]=i[1]:f.style[l[0]]=l[1])}),s.setAttribute(u,!0))})}function KU(e){var r=p_(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(n){var a=d_(n);if(a){var o=VU.convertCssMatrix(a);t=GU.multiply(t,t,o)}}),t}function d_(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function p_(e){for(var r=[];QU(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function QU(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function $U(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}g_.exports={getGraphDiv:YU,isPlotDiv:WU,removeElement:v_,addStyleRule:XU,addRelatedStyleRule:h_,deleteRelatedStyleRule:ZU,setStyleOnHover:JU,getFullTransformMatrix:KU,getElementTransformMatrix:d_,getElementAndAncestors:p_,equalDomRects:$U}});var cf=pe((Wfe,y_)=>{"use strict";y_.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var zn=pe((Xfe,T_)=>{"use strict";var x_=Mt().extendFlat,jU=wo(),b_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},__={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},eH=b_.flags.slice().concat(["fullReplot"]),rH=__.flags.slice().concat("layoutReplot");T_.exports={traces:b_,layout:__,traceFlags:function(){return m_(eH)},layoutFlags:function(){return m_(rH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";Tp.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Tp.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Ap=pe((Jfe,A_)=>{"use strict";A_.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Sa=pe(Nc=>{"use strict";var k_=Ap(),Kfe=k_.FORMAT_LINK,Qfe=k_.DATE_FORMAT_LINK;function kp(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var n=[],a=0;a{"use strict";function ko(e,r){return r?r.d2l(e):e}function S_(e,r){return r?r.l2d(e):e}function tH(e){return e.x0}function nH(e){return e.x1}function aH(e){return e.y0}function iH(e){return e.y1}function C_(e){return e.x0shift||0}function E_(e){return e.x1shift||0}function L_(e){return e.y0shift||0}function R_(e){return e.y1shift||0}function zc(e,r){return ko(e.x1,r)+E_(e)-ko(e.x0,r)-C_(e)}function qc(e,r,t){return ko(e.y1,t)+R_(e)-ko(e.y0,t)-L_(e)}function oH(e,r){return Math.abs(zc(e,r))}function lH(e,r,t){return Math.abs(qc(e,r,t))}function sH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(zc(e,r),2)+Math.pow(qc(e,r,t),2))}function uH(e,r){return S_((ko(e.x1,r)+E_(e)+ko(e.x0,r)+C_(e))/2,r)}function fH(e,r,t){return S_((ko(e.y1,t)+R_(e)+ko(e.y0,t)+L_(e))/2,t)}function cH(e,r,t){return e.type!=="line"?void 0:qc(e,r,t)/zc(e,r)}D_.exports={x0:tH,x1:nH,y0:aH,y1:iH,slope:cH,dx:zc,dy:qc,width:oH,height:lH,length:sH,xcenter:uH,ycenter:fH}});var I_=pe((e0e,F_)=>{"use strict";var vH=zn().overrideAll,kl=Sn(),P_=kn(),hH=Ao().dash,So=Mt().extendFlat,dH=Sa().shapeTexttemplateAttrs,pH=Oc();F_.exports=vH({newshape:{visible:So({},kl.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:So({},kl.legend,{}),legendgroup:So({},kl.legendgroup,{}),legendgrouptitle:{text:So({},kl.legendgrouptitle.text,{}),font:P_({})},legendrank:So({},kl.legendrank,{}),legendwidth:So({},kl.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:So({},hH,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:So({},kl.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:dH({newshape:!0},{keys:Object.keys(pH)}),font:P_({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var z_=pe((r0e,N_)=>{"use strict";var gH=Ao().dash,yH=Mt().extendFlat;N_.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:yH({},gH,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var Bc=pe((t0e,q_)=>{"use strict";q_.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var Ds=pe((n0e,H_)=>{"use strict";var Sp=kn(),mH=cf(),Uc=Ti(),O_=I_(),B_=z_(),xH=Bc(),U_=Mt().extendFlat,Hc=Sp({editType:"calc"});Hc.family.dflt='"Open Sans", verdana, arial, sans-serif';Hc.size.dflt=12;Hc.color.dflt=Uc.defaultLine;H_.exports={font:Hc,title:{text:{valType:"string",editType:"layoutstyle"},font:Sp({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Sp({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:U_(xH({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:Uc.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Uc.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:Uc.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:O_.newshape,activeshape:O_.activeshape,newselection:B_.newselection,activeselection:B_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:U_({},mH.transition,{editType:"none"})}});var V_=ib(()=>{});var bH={};var G_=ib(()=>{V_()});var Er=pe(Jr=>{"use strict";var Ps=Al(),Y_=Fc(),W_=bp(),_H=wo(),wH=ff().addStyleRule,X_=Mt(),MH=Sn(),TH=Ds(),AH=X_.extendFlat,Cp=X_.extendDeepAll;Jr.modules={};Jr.allCategories={};Jr.allTypes=[];Jr.subplotsRegistry={};Jr.componentsRegistry={};Jr.layoutArrayContainers=[];Jr.layoutArrayRegexes=[];Jr.traceLayoutAttributes={};Jr.localeRegistry={};Jr.apiMethodRegistry={};Jr.collectableSubplotTypes=null;Jr.register=function(r){if(Jr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var RH=ks().timeFormat,a6=rt(),Ep=Al(),Eo=Cs().mod,Ns=an(),Ca=Ns.BADNUM,na=Ns.ONEDAY,vf=Ns.ONEHOUR,Co=Ns.ONEMIN,Is=Ns.ONESEC,hf=Ns.EPOCHJD,Zi=Er(),$_=ks().utcFormat,DH=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,PH=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,j_=new Date().getFullYear()-70;function Ji(e){return e&&Zi.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Ht.dateTick0=function(e,r){var t=FH(e,!!r);if(r<2)return t;var n=Ht.dateTime2ms(t,e);return n+=na*(r-1),Ht.ms2DateTime(n,0,e)};function FH(e,r){return Ji(e)?r?Zi.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Zi.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Ht.dfltRange=function(e){return Ji(e)?Zi.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Ht.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Gc,Yc;Ht.dateTime2ms=function(e,r){if(Ht.isJSDate(e)){var t=e.getTimezoneOffset()*Co,n=(e.getUTCMinutes()-e.getMinutes())*Co+(e.getUTCSeconds()-e.getSeconds())*Is+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var a=3*Co;t=t-a/2+Eo(n-t+a/2,a)}return e=Number(e)-t,e>=Gc&&e<=Yc?e:Ca}if(typeof e!="string"&&typeof e!="number")return Ca;e=String(e);var o=Ji(r),i=e.charAt(0);o&&(i==="G"||i==="g")&&(e=e.substr(1),r="");var l=o&&r.substr(0,7)==="chinese",u=e.match(l?PH:DH);if(!u)return Ca;var s=u[1],f=u[3]||"1",v=Number(u[5]||1),p=Number(u[7]||0),b=Number(u[9]||0),y=Number(u[11]||0);if(o){if(s.length===2)return Ca;s=Number(s);var w;try{var M=Zi.getComponentMethod("calendars","getCal")(r);if(l){var m=f.charAt(f.length-1)==="i";f=parseInt(f,10),w=M.newDate(s,M.toMonthIndex(s,f,m),v)}else w=M.newDate(s,Number(f),v)}catch(S){return Ca}return w?(w.toJD()-hf)*na+p*vf+b*Co+y*Is:Ca}s.length===2?s=(Number(s)+2e3-j_)%100+j_:s=Number(s),f-=1;var k=new Date(Date.UTC(2e3,f,v,p,b));return k.setUTCFullYear(s),k.getUTCMonth()!==f||k.getUTCDate()!==v?Ca:k.getTime()+y*Is};Gc=Ht.MIN_MS=Ht.dateTime2ms("-9999");Yc=Ht.MAX_MS=Ht.dateTime2ms("9999-12-31 23:59:59.9999");Ht.isDateTime=function(e,r){return Ht.dateTime2ms(e,r)!==Ca};function Fs(e,r){return String(e+Math.pow(10,r)).substr(1)}var Vc=90*na,e6=3*vf,r6=5*Co;Ht.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Gc&&e<=Yc))return Ca;r||(r=0);var n=Math.floor(Eo(e+.05,1)*10),a=Math.round(e-n/10),o,i,l,u,s,f;if(Ji(t)){var v=Math.floor(a/na)+hf,p=Math.floor(Eo(e,na));try{o=Zi.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(b){o=$_("G%Y-%m-%d")(new Date(a))}if(o.charAt(0)==="-")for(;o.length<11;)o="-0"+o.substr(1);else for(;o.length<10;)o="0"+o;i=r=Gc+na&&e<=Yc-na))return Ca;var r=Math.floor(Eo(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=RH("%Y-%m-%d")(t),a=t.getHours(),o=t.getMinutes(),i=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return i6(n,a,o,i,l)};function i6(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+Fs(r,2)+":"+Fs(t,2),(n||a)&&(e+=":"+Fs(n,2),a))){for(var o=4;a%10===0;)o-=1,a/=10;e+="."+Fs(a,o)}return e}Ht.cleanDate=function(e,r,t){if(e===Ca)return r;if(Ht.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ji(t))return Ep.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Ht.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Ht.isDateTime(e,t))return Ep.error("unrecognized date",e),r;return e};var IH=/%\d?f/g,NH=/%h/g,zH={1:"1",2:"1",3:"2",4:"2"};function t6(e,r,t,n){e=e.replace(IH,function(o){var i=Math.min(+o.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(i).substr(2).replace(/0+$/,"")||"0";return l});var a=new Date(Math.floor(r+.05));if(e=e.replace(NH,function(){return zH[t("%q")(a)]}),Ji(n))try{e=Zi.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(o){return"Invalid"}return t(e)(a)}var qH=[59,59.9,59.99,59.999,59.9999];function OH(e,r){var t=Eo(e+.05,na),n=Fs(Math.floor(t/vf),2)+":"+Fs(Eo(Math.floor(t/Co),60),2);if(r!=="M"){a6(r)||(r=0);var a=Math.min(Eo(e/Is,60),qH[r]),o=(100+a).toFixed(r).substr(1);r>0&&(o=o.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+o}return n}Ht.formatDate=function(e,r,t,n,a,o){if(a=Ji(a)&&a,!r)if(t==="y")r=o.year;else if(t==="m")r=o.month;else if(t==="d")r=o.dayMonth+` diff --git a/dist/plotly-mapbox.js b/dist/plotly-mapbox.js index 543cb756ec5..858b27eada7 100644 --- a/dist/plotly-mapbox.js +++ b/dist/plotly-mapbox.js @@ -1,5 +1,5 @@ /** -* plotly.js (mapbox) v3.0.2 +* plotly.js (mapbox) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-mapbox.min.js b/dist/plotly-mapbox.min.js index 59e5ff3c374..bbb808b2f31 100644 --- a/dist/plotly-mapbox.min.js +++ b/dist/plotly-mapbox.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (mapbox - minified) v3.0.2 +* plotly.js (mapbox - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var d7=Object.defineProperty;var QX=Object.getOwnPropertyDescriptor;var $X=Object.getOwnPropertyNames;var ej=Object.prototype.hasOwnProperty;var p7=(e,t)=>()=>(e&&(t=e(e=0)),t);var de=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var tj=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $X(t))!ej.call(e,a)&&a!==r&&d7(e,a,{get:()=>t[a],enumerable:!(i=QX(t,a))||i.enumerable});return e};var rj=e=>tj(d7({},"__esModule",{value:!0}),e);var U1=de(m7=>{"use strict";m7.version="3.0.2"});var g7=de((y7,V1)=>{(function(t,r,i){r[t]=r[t]||i(),typeof V1!="undefined"&&V1.exports&&(V1.exports=r[t])})("Promise",typeof window!="undefined"?window:y7,function(){"use strict";var t,r,i,a=Object.prototype.toString,s=typeof setImmediate!="undefined"?function(q){return setImmediate(q)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(q,B,z,O){return Object.defineProperty(q,B,{value:z,writable:!0,configurable:O!==!1})}}catch(I){t=function(B,z,O){return B[z]=O,B}}i=function(){var q,B,z;function O(H,V){this.fn=H,this.self=V,this.next=void 0}return{add:function(V,W){z=new O(V,W),B?B.next=z:q=z,B=z,z=void 0},drain:function(){var V=q;for(q=B=r=void 0;V;)V.fn.call(V.self),V=V.next}}}();function l(I,q){i.add(I,q),r||(r=s(i.drain))}function f(I){var q,B=typeof I;return I!=null&&(B=="object"||B=="function")&&(q=I.then),typeof q=="function"?q:!1}function h(){for(var I=0;I0&&l(h,B))}catch(z){b.call(new S(B),z)}}}function b(I){var q=this;q.triggered||(q.triggered=!0,q.def&&(q=q.def),q.msg=I,q.state=2,q.chain.length>0&&l(h,q))}function T(I,q,B,z){for(var O=0;O{(function(){var e={version:"3.8.2"},t=[].slice,r=function(y){return t.call(y)},i=self.document;function a(y){return y&&(y.ownerDocument||y.document||y).documentElement}function s(y){return y&&(y.ownerDocument&&y.ownerDocument.defaultView||y.document&&y||y.defaultView)}if(i)try{r(i.documentElement.childNodes)[0].nodeType}catch(y){r=function(M){for(var D=M.length,N=new Array(D);D--;)N[D]=M[D];return N}}if(Date.now||(Date.now=function(){return+new Date}),i)try{i.createElement("DIV").style.setProperty("opacity",0,"")}catch(y){var l=this.Element.prototype,f=l.setAttribute,h=l.setAttributeNS,v=this.CSSStyleDeclaration.prototype,m=v.setProperty;l.setAttribute=function(M,D){f.call(this,M,D+"")},l.setAttributeNS=function(M,D,N){h.call(this,M,D,N+"")},v.setProperty=function(M,D,N){m.call(this,M,D+"",N)}}e.ascending=b;function b(y,M){return yM?1:y>=M?0:NaN}e.descending=function(y,M){return My?1:M>=y?0:NaN},e.min=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}return U},e.max=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}return U},e.extent=function(y,M){var D=-1,N=y.length,U,Z,$;if(arguments.length===1){for(;++D=Z){U=$=Z;break}for(;++DZ&&(U=Z),$=Z){U=$=Z;break}for(;++DZ&&(U=Z),$1)return $/(ae-1)},e.deviation=function(){var y=e.variance.apply(this,arguments);return y&&Math.sqrt(y)};function C(y){return{left:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)<0?N=Z+1:U=Z}return N},right:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)>0?U=Z:N=Z+1}return N}}}var P=C(b);e.bisectLeft=P.left,e.bisect=e.bisectRight=P.right,e.bisector=function(y){return C(y.length===1?function(M,D){return b(y(M),D)}:y)},e.shuffle=function(y,M,D){(N=arguments.length)<3&&(D=y.length,N<2&&(M=0));for(var N=D-M,U,Z;N;)Z=Math.random()*N--|0,U=y[N+M],y[N+M]=y[Z+M],y[Z+M]=U;return y},e.permute=function(y,M){for(var D=M.length,N=new Array(D);D--;)N[D]=y[M[D]];return N},e.pairs=function(y){for(var M=0,D=y.length-1,N,U=y[0],Z=new Array(D<0?0:D);M=0;)for($=y[M],D=$.length;--D>=0;)Z[--U]=$[D];return Z};var I=Math.abs;e.range=function(y,M,D){if(arguments.length<3&&(D=1,arguments.length<2&&(M=y,y=0)),(M-y)/D===1/0)throw new Error("infinite range");var N=[],U=q(I(D)),Z=-1,$;if(y*=U,M*=U,D*=U,D<0)for(;($=y+D*++Z)>M;)N.push($/U);else for(;($=y+D*++Z)=M.length)return U?U.call(y,ae):N?ae.sort(N):ae;for(var _e=-1,De=ae.length,Pe=M[me++],Je,ot,ze,Ue=new z,je;++_e=M.length)return X;var me=[],_e=D[ae++];return X.forEach(function(De,Pe){me.push({key:De,values:$(Pe,ae)})}),_e?me.sort(function(De,Pe){return _e(De.key,Pe.key)}):me}return y.map=function(X,ae){return Z(ae,X,0)},y.entries=function(X){return $(Z(e.map,X,0),0)},y.key=function(X){return M.push(X),y},y.sortKeys=function(X){return D[M.length-1]=X,y},y.sortValues=function(X){return N=X,y},y.rollup=function(X){return U=X,y},y},e.set=function(y){var M=new ve;if(y)for(var D=0,N=y.length;D=0&&(N=y.slice(D+1),y=y.slice(0,D)),y)return arguments.length<2?this[y].on(N):this[y].on(N,M);if(arguments.length===2){if(M==null)for(y in this)this.hasOwnProperty(y)&&this[y].on(N,null);return this}};function Le(y){var M=[],D=new z;function N(){for(var U=M,Z=-1,$=U.length,X;++Z<$;)(X=U[Z].on)&&X.apply(this,arguments);return y}return N.on=function(U,Z){var $=D.get(U),X;return arguments.length<2?$&&$.on:($&&($.on=null,M=M.slice(0,X=M.indexOf($)).concat(M.slice(X+1)),D.remove(U)),Z&&M.push(D.set(U,{on:Z})),y)},N}e.event=null;function Ke(){e.event.preventDefault()}function ht(){for(var y=e.event,M;M=y.sourceEvent;)y=M;return y}function it(y){for(var M=new Me,D=0,N=arguments.length;++D=0&&(D=y.slice(0,M))!=="xmlns"&&(y=y.slice(M+1)),$e.hasOwnProperty(D)?{space:$e[D],local:y}:y}},pt.attr=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node();return y=e.ns.qualify(y),y.local?D.getAttributeNS(y.space,y.local):D.getAttribute(y)}for(M in y)this.each(vt(M,y[M]));return this}return this.each(vt(y,M))};function vt(y,M){y=e.ns.qualify(y);function D(){this.removeAttribute(y)}function N(){this.removeAttributeNS(y.space,y.local)}function U(){this.setAttribute(y,M)}function Z(){this.setAttributeNS(y.space,y.local,M)}function $(){var ae=M.apply(this,arguments);ae==null?this.removeAttribute(y):this.setAttribute(y,ae)}function X(){var ae=M.apply(this,arguments);ae==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,ae)}return M==null?y.local?N:D:typeof M=="function"?y.local?X:$:y.local?Z:U}function et(y){return y.trim().replace(/\s+/g," ")}pt.classed=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node(),N=(y=Mt(y)).length,U=-1;if(M=D.classList){for(;++U=0;)(Z=D[N])&&(U&&U!==Z.nextSibling&&U.parentNode.insertBefore(Z,U),U=Z);return this},pt.sort=function(y){y=ft.apply(this,arguments);for(var M=-1,D=this.length;++M=M&&(M=U+1);!(ae=$[M])&&++M0&&(y=y.slice(0,U));var $=Vt.get(y);$&&(y=$,Z=Ht);function X(){var _e=this[N];_e&&(this.removeEventListener(y,_e,_e.$),delete this[N])}function ae(){var _e=Z(M,r(arguments));X.call(this),this.addEventListener(y,this[N]=_e,_e.$=D),_e._=M}function me(){var _e=new RegExp("^__on([^.]+)"+e.requote(y)+"$"),De;for(var Pe in this)if(De=Pe.match(_e)){var Je=this[Pe];this.removeEventListener(De[1],Je,Je.$),delete this[Pe]}}return U?M?ae:X:M?Ae:me}var Vt=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});i&&Vt.forEach(function(y){"on"+y in i&&Vt.remove(y)});function Kt(y,M){return function(D){var N=e.event;e.event=D,M[0]=this.__data__;try{y.apply(this,M)}finally{e.event=N}}}function Ht(y,M){var D=Kt(y,M);return function(N){var U=this,Z=N.relatedTarget;(!Z||Z!==U&&!(Z.compareDocumentPosition(U)&8))&&D.call(U,N)}}var Ot,er=0;function Mr(y){var M=".dragsuppress-"+ ++er,D="click"+M,N=e.select(s(y)).on("touchmove"+M,Ke).on("dragstart"+M,Ke).on("selectstart"+M,Ke);if(Ot==null&&(Ot="onselectstart"in y?!1:Te(y.style,"userSelect")),Ot){var U=a(y).style,Z=U[Ot];U[Ot]="none"}return function($){if(N.on(M,null),Ot&&(U[Ot]=Z),$){var X=function(){N.on(D,null)};N.on(D,function(){Ke(),X()},!0),setTimeout(X,0)}}}e.mouse=function(y){return Pt(y,ht())};var xr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Pt(y,M){M.changedTouches&&(M=M.changedTouches[0]);var D=y.ownerSVGElement||y;if(D.createSVGPoint){var N=D.createSVGPoint();if(xr<0){var U=s(y);if(U.scrollX||U.scrollY){D=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Z=D[0][0].getScreenCTM();xr=!(Z.f||Z.e),D.remove()}}return xr?(N.x=M.pageX,N.y=M.pageY):(N.x=M.clientX,N.y=M.clientY),N=N.matrixTransform(y.getScreenCTM().inverse()),[N.x,N.y]}var $=y.getBoundingClientRect();return[M.clientX-$.left-y.clientLeft,M.clientY-$.top-y.clientTop]}e.touch=function(y,M,D){if(arguments.length<3&&(D=M,M=ht().changedTouches),M){for(var N=0,U=M.length,Z;N0?1:y<0?-1:0}function Ea(y,M,D){return(M[0]-y[0])*(D[1]-y[1])-(M[1]-y[1])*(D[0]-y[0])}function Ii(y){return y>1?0:y<-1?dt:Math.acos(y)}function Ki(y){return y>1?Tr:y<-1?-Tr:Math.asin(y)}function yn(y){return((y=Math.exp(y))-1/y)/2}function Xi(y){return((y=Math.exp(y))+1/y)/2}function Jn(y){return((y=Math.exp(2*y))-1)/(y+1)}function En(y){return(y=Math.sin(y/2))*y}var Vi=Math.SQRT2,pa=2,Gr=4;e.interpolateZoom=function(y,M){var D=y[0],N=y[1],U=y[2],Z=M[0],$=M[1],X=M[2],ae=Z-D,me=$-N,_e=ae*ae+me*me,De,Pe;if(_e0&&(jt=jt.transition().duration($)),jt.call(nt.event)}function Dr(){Ue&&Ue.domain(ze.range().map(function(jt){return(jt-y.x)/y.k}).map(ze.invert)),ut&&ut.domain(je.range().map(function(jt){return(jt-y.y)/y.k}).map(je.invert))}function Ir(jt){X++||jt({type:"zoomstart"})}function ea(jt){Dr(),jt({type:"zoom",scale:y.k,translate:[y.x,y.y]})}function Ur(jt){--X||(jt({type:"zoomend"}),D=null)}function Kr(){var jt=this,Jr=ot.of(jt,arguments),oa=0,sa=e.select(s(jt)).on(me,$i).on(_e,xi),Ei=We(e.mouse(jt)),Oi=Mr(jt);ah.call(jt),Ir(Jr);function $i(){oa=1,fr(e.mouse(jt),Ei),ea(Jr)}function xi(){sa.on(me,null).on(_e,null),Oi(oa),Ur(Jr)}}function Ba(){var jt=this,Jr=ot.of(jt,arguments),oa={},sa=0,Ei,Oi=".zoom-"+e.event.changedTouches[0].identifier,$i="touchmove"+Oi,xi="touchend"+Oi,xn=[],br=e.select(jt),Vr=Mr(jt);Ti(),Ir(Jr),br.on(ae,null).on(Pe,Ti);function Fi(){var cn=e.touches(jt);return Ei=y.k,cn.forEach(function(pi){pi.identifier in oa&&(oa[pi.identifier]=We(pi))}),cn}function Ti(){var cn=e.event.target;e.select(cn).on($i,lo).on(xi,zn),xn.push(cn);for(var pi=e.event.changedTouches,jo=0,uo=pi.length;jo1){var Aa=ci[0],ui=ci[1],Nl=Aa[0]-ui[0],Hv=Aa[1]-ui[1];sa=Nl*Nl+Hv*Hv}}function lo(){var cn=e.touches(jt),pi,jo,uo,ci;ah.call(jt);for(var gf=0,Aa=cn.length;gf1?1:M,D=D<0?0:D>1?1:D,U=D<=.5?D*(1+M):D+M-D*M,N=2*D-U;function Z(X){return X>360?X-=360:X<0&&(X+=360),X<60?N+(U-N)*X/60:X<180?U:X<240?N+(U-N)*(240-X)/60:N}function $(X){return Math.round(Z(X)*255)}return new ua($(y+120),$(y),$(y-120))}e.hcl=ce;function ce(y,M,D){return this instanceof ce?(this.h=+y,this.c=+M,void(this.l=+D)):arguments.length<2?y instanceof ce?new ce(y.h,y.c,y.l):y instanceof rt?wr(y.l,y.a,y.b):wr((y=nr((y=e.rgb(y)).r,y.g,y.b)).l,y.a,y.b):new ce(y,M,D)}var Ee=ce.prototype=new ya;Ee.brighter=function(y){return new ce(this.h,this.c,Math.min(100,this.l+Ve*(arguments.length?y:1)))},Ee.darker=function(y){return new ce(this.h,this.c,Math.max(0,this.l-Ve*(arguments.length?y:1)))},Ee.rgb=function(){return Ne(this.h,this.c,this.l).rgb()};function Ne(y,M,D){return isNaN(y)&&(y=0),isNaN(M)&&(M=0),new rt(D,Math.cos(y*=Hr)*M,Math.sin(y)*M)}e.lab=rt;function rt(y,M,D){return this instanceof rt?(this.l=+y,this.a=+M,void(this.b=+D)):arguments.length<2?y instanceof rt?new rt(y.l,y.a,y.b):y instanceof ce?Ne(y.h,y.c,y.l):nr((y=ua(y)).r,y.g,y.b):new rt(y,M,D)}var Ve=18,yt=.95047,Dt=1,Ft=1.08883,tr=rt.prototype=new ya;tr.brighter=function(y){return new rt(Math.min(100,this.l+Ve*(arguments.length?y:1)),this.a,this.b)},tr.darker=function(y){return new rt(Math.max(0,this.l-Ve*(arguments.length?y:1)),this.a,this.b)},tr.rgb=function(){return Yt(this.l,this.a,this.b)};function Yt(y,M,D){var N=(y+16)/116,U=N+M/500,Z=N-D/200;return U=Yr(U)*yt,N=Yr(N)*Dt,Z=Yr(Z)*Ft,new ua(ca(3.2404542*U-1.5371385*N-.4985314*Z),ca(-.969266*U+1.8760108*N+.041556*Z),ca(.0556434*U-.2040259*N+1.0572252*Z))}function wr(y,M,D){return y>0?new ce(Math.atan2(D,M)*_a,Math.sqrt(M*M+D*D),y):new ce(NaN,NaN,y)}function Yr(y){return y>.206893034?y*y*y:(y-4/29)/7.787037}function Br(y){return y>.008856?Math.pow(y,1/3):7.787037*y+4/29}function ca(y){return Math.round(255*(y<=.00304?12.92*y:1.055*Math.pow(y,1/2.4)-.055))}e.rgb=ua;function ua(y,M,D){return this instanceof ua?(this.r=~~y,this.g=~~M,void(this.b=~~D)):arguments.length<2?y instanceof ua?new ua(y.r,y.g,y.b):$r(""+y,ua,se):new ua(y,M,D)}function Na(y){return new ua(y>>16,y>>8&255,y&255)}function ii(y){return Na(y)+""}var Wr=ua.prototype=new ya;Wr.brighter=function(y){y=Math.pow(.7,arguments.length?y:1);var M=this.r,D=this.g,N=this.b,U=30;return!M&&!D&&!N?new ua(U,U,U):(M&&M>4,N=N>>4|N,U=ae&240,U=U>>4|U,Z=ae&15,Z=Z<<4|Z):y.length===7&&(N=(ae&16711680)>>16,U=(ae&65280)>>8,Z=ae&255)),M(N,U,Z))}function ga(y,M,D){var N=Math.min(y/=255,M/=255,D/=255),U=Math.max(y,M,D),Z=U-N,$,X,ae=(U+N)/2;return Z?(X=ae<.5?Z/(U+N):Z/(2-U-N),y==U?$=(M-D)/Z+(M0&&ae<1?0:$),new le($,X,ae)}function nr(y,M,D){y=wi(y),M=wi(M),D=wi(D);var N=Br((.4124564*y+.3575761*M+.1804375*D)/yt),U=Br((.2126729*y+.7151522*M+.072175*D)/Dt),Z=Br((.0193339*y+.119192*M+.9503041*D)/Ft);return rt(116*U-16,500*(N-U),200*(U-Z))}function wi(y){return(y/=255)<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function La(y){var M=parseFloat(y);return y.charAt(y.length-1)==="%"?Math.round(M*2.55):M}var si=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});si.forEach(function(y,M){si.set(y,Na(M))});function fa(y){return typeof y=="function"?y:function(){return y}}e.functor=fa,e.xhr=Ln(Ce);function Ln(y){return function(M,D,N){return arguments.length===2&&typeof D=="function"&&(N=D,D=null),Co(M,D,y,N)}}function Co(y,M,D,N){var U={},Z=e.dispatch("beforesend","progress","load","error"),$={},X=new XMLHttpRequest,ae=null;self.XDomainRequest&&!("withCredentials"in X)&&/^(http(s)?:)?\/\//.test(y)&&(X=new XDomainRequest),"onload"in X?X.onload=X.onerror=me:X.onreadystatechange=function(){X.readyState>3&&me()};function me(){var _e=X.status,De;if(!_e&&Ga(X)||_e>=200&&_e<300||_e===304){try{De=D.call(U,X)}catch(Pe){Z.error.call(U,Pe);return}Z.load.call(U,De)}else Z.error.call(U,X)}return X.onprogress=function(_e){var De=e.event;e.event=_e;try{Z.progress.call(U,X)}finally{e.event=De}},U.header=function(_e,De){return _e=(_e+"").toLowerCase(),arguments.length<2?$[_e]:(De==null?delete $[_e]:$[_e]=De+"",U)},U.mimeType=function(_e){return arguments.length?(M=_e==null?null:_e+"",U):M},U.responseType=function(_e){return arguments.length?(ae=_e,U):ae},U.response=function(_e){return D=_e,U},["get","post"].forEach(function(_e){U[_e]=function(){return U.send.apply(U,[_e].concat(r(arguments)))}}),U.send=function(_e,De,Pe){if(arguments.length===2&&typeof De=="function"&&(Pe=De,De=null),X.open(_e,y,!0),M!=null&&!("accept"in $)&&($.accept=M+",*/*"),X.setRequestHeader)for(var Je in $)X.setRequestHeader(Je,$[Je]);return M!=null&&X.overrideMimeType&&X.overrideMimeType(M),ae!=null&&(X.responseType=ae),Pe!=null&&U.on("error",Pe).on("load",function(ot){Pe(null,ot)}),Z.beforesend.call(U,X),X.send(De==null?null:De),U},U.abort=function(){return X.abort(),U},e.rebind(U,Z,"on"),N==null?U:U.get(xs(N))}function xs(y){return y.length===1?function(M,D){y(M==null?D:null)}:y}function Ga(y){var M=y.responseType;return M&&M!=="text"?y.response:y.responseText}e.dsv=function(y,M){var D=new RegExp('["'+y+` +"use strict";var Plotly=(()=>{var d7=Object.defineProperty;var QX=Object.getOwnPropertyDescriptor;var $X=Object.getOwnPropertyNames;var ej=Object.prototype.hasOwnProperty;var p7=(e,t)=>()=>(e&&(t=e(e=0)),t);var de=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var tj=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $X(t))!ej.call(e,a)&&a!==r&&d7(e,a,{get:()=>t[a],enumerable:!(i=QX(t,a))||i.enumerable});return e};var rj=e=>tj(d7({},"__esModule",{value:!0}),e);var U1=de(m7=>{"use strict";m7.version="3.0.3"});var g7=de((y7,V1)=>{(function(t,r,i){r[t]=r[t]||i(),typeof V1!="undefined"&&V1.exports&&(V1.exports=r[t])})("Promise",typeof window!="undefined"?window:y7,function(){"use strict";var t,r,i,a=Object.prototype.toString,s=typeof setImmediate!="undefined"?function(q){return setImmediate(q)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(q,B,z,O){return Object.defineProperty(q,B,{value:z,writable:!0,configurable:O!==!1})}}catch(I){t=function(B,z,O){return B[z]=O,B}}i=function(){var q,B,z;function O(H,V){this.fn=H,this.self=V,this.next=void 0}return{add:function(V,W){z=new O(V,W),B?B.next=z:q=z,B=z,z=void 0},drain:function(){var V=q;for(q=B=r=void 0;V;)V.fn.call(V.self),V=V.next}}}();function l(I,q){i.add(I,q),r||(r=s(i.drain))}function f(I){var q,B=typeof I;return I!=null&&(B=="object"||B=="function")&&(q=I.then),typeof q=="function"?q:!1}function h(){for(var I=0;I0&&l(h,B))}catch(z){b.call(new S(B),z)}}}function b(I){var q=this;q.triggered||(q.triggered=!0,q.def&&(q=q.def),q.msg=I,q.state=2,q.chain.length>0&&l(h,q))}function T(I,q,B,z){for(var O=0;O{(function(){var e={version:"3.8.2"},t=[].slice,r=function(y){return t.call(y)},i=self.document;function a(y){return y&&(y.ownerDocument||y.document||y).documentElement}function s(y){return y&&(y.ownerDocument&&y.ownerDocument.defaultView||y.document&&y||y.defaultView)}if(i)try{r(i.documentElement.childNodes)[0].nodeType}catch(y){r=function(M){for(var D=M.length,N=new Array(D);D--;)N[D]=M[D];return N}}if(Date.now||(Date.now=function(){return+new Date}),i)try{i.createElement("DIV").style.setProperty("opacity",0,"")}catch(y){var l=this.Element.prototype,f=l.setAttribute,h=l.setAttributeNS,v=this.CSSStyleDeclaration.prototype,m=v.setProperty;l.setAttribute=function(M,D){f.call(this,M,D+"")},l.setAttributeNS=function(M,D,N){h.call(this,M,D,N+"")},v.setProperty=function(M,D,N){m.call(this,M,D+"",N)}}e.ascending=b;function b(y,M){return yM?1:y>=M?0:NaN}e.descending=function(y,M){return My?1:M>=y?0:NaN},e.min=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}return U},e.max=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}return U},e.extent=function(y,M){var D=-1,N=y.length,U,Z,$;if(arguments.length===1){for(;++D=Z){U=$=Z;break}for(;++DZ&&(U=Z),$=Z){U=$=Z;break}for(;++DZ&&(U=Z),$1)return $/(ae-1)},e.deviation=function(){var y=e.variance.apply(this,arguments);return y&&Math.sqrt(y)};function C(y){return{left:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)<0?N=Z+1:U=Z}return N},right:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)>0?U=Z:N=Z+1}return N}}}var P=C(b);e.bisectLeft=P.left,e.bisect=e.bisectRight=P.right,e.bisector=function(y){return C(y.length===1?function(M,D){return b(y(M),D)}:y)},e.shuffle=function(y,M,D){(N=arguments.length)<3&&(D=y.length,N<2&&(M=0));for(var N=D-M,U,Z;N;)Z=Math.random()*N--|0,U=y[N+M],y[N+M]=y[Z+M],y[Z+M]=U;return y},e.permute=function(y,M){for(var D=M.length,N=new Array(D);D--;)N[D]=y[M[D]];return N},e.pairs=function(y){for(var M=0,D=y.length-1,N,U=y[0],Z=new Array(D<0?0:D);M=0;)for($=y[M],D=$.length;--D>=0;)Z[--U]=$[D];return Z};var I=Math.abs;e.range=function(y,M,D){if(arguments.length<3&&(D=1,arguments.length<2&&(M=y,y=0)),(M-y)/D===1/0)throw new Error("infinite range");var N=[],U=q(I(D)),Z=-1,$;if(y*=U,M*=U,D*=U,D<0)for(;($=y+D*++Z)>M;)N.push($/U);else for(;($=y+D*++Z)=M.length)return U?U.call(y,ae):N?ae.sort(N):ae;for(var _e=-1,De=ae.length,Pe=M[me++],Je,ot,ze,Ue=new z,je;++_e=M.length)return X;var me=[],_e=D[ae++];return X.forEach(function(De,Pe){me.push({key:De,values:$(Pe,ae)})}),_e?me.sort(function(De,Pe){return _e(De.key,Pe.key)}):me}return y.map=function(X,ae){return Z(ae,X,0)},y.entries=function(X){return $(Z(e.map,X,0),0)},y.key=function(X){return M.push(X),y},y.sortKeys=function(X){return D[M.length-1]=X,y},y.sortValues=function(X){return N=X,y},y.rollup=function(X){return U=X,y},y},e.set=function(y){var M=new ve;if(y)for(var D=0,N=y.length;D=0&&(N=y.slice(D+1),y=y.slice(0,D)),y)return arguments.length<2?this[y].on(N):this[y].on(N,M);if(arguments.length===2){if(M==null)for(y in this)this.hasOwnProperty(y)&&this[y].on(N,null);return this}};function Le(y){var M=[],D=new z;function N(){for(var U=M,Z=-1,$=U.length,X;++Z<$;)(X=U[Z].on)&&X.apply(this,arguments);return y}return N.on=function(U,Z){var $=D.get(U),X;return arguments.length<2?$&&$.on:($&&($.on=null,M=M.slice(0,X=M.indexOf($)).concat(M.slice(X+1)),D.remove(U)),Z&&M.push(D.set(U,{on:Z})),y)},N}e.event=null;function Ke(){e.event.preventDefault()}function ht(){for(var y=e.event,M;M=y.sourceEvent;)y=M;return y}function it(y){for(var M=new Me,D=0,N=arguments.length;++D=0&&(D=y.slice(0,M))!=="xmlns"&&(y=y.slice(M+1)),$e.hasOwnProperty(D)?{space:$e[D],local:y}:y}},pt.attr=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node();return y=e.ns.qualify(y),y.local?D.getAttributeNS(y.space,y.local):D.getAttribute(y)}for(M in y)this.each(vt(M,y[M]));return this}return this.each(vt(y,M))};function vt(y,M){y=e.ns.qualify(y);function D(){this.removeAttribute(y)}function N(){this.removeAttributeNS(y.space,y.local)}function U(){this.setAttribute(y,M)}function Z(){this.setAttributeNS(y.space,y.local,M)}function $(){var ae=M.apply(this,arguments);ae==null?this.removeAttribute(y):this.setAttribute(y,ae)}function X(){var ae=M.apply(this,arguments);ae==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,ae)}return M==null?y.local?N:D:typeof M=="function"?y.local?X:$:y.local?Z:U}function et(y){return y.trim().replace(/\s+/g," ")}pt.classed=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node(),N=(y=Mt(y)).length,U=-1;if(M=D.classList){for(;++U=0;)(Z=D[N])&&(U&&U!==Z.nextSibling&&U.parentNode.insertBefore(Z,U),U=Z);return this},pt.sort=function(y){y=ft.apply(this,arguments);for(var M=-1,D=this.length;++M=M&&(M=U+1);!(ae=$[M])&&++M0&&(y=y.slice(0,U));var $=Vt.get(y);$&&(y=$,Z=Ht);function X(){var _e=this[N];_e&&(this.removeEventListener(y,_e,_e.$),delete this[N])}function ae(){var _e=Z(M,r(arguments));X.call(this),this.addEventListener(y,this[N]=_e,_e.$=D),_e._=M}function me(){var _e=new RegExp("^__on([^.]+)"+e.requote(y)+"$"),De;for(var Pe in this)if(De=Pe.match(_e)){var Je=this[Pe];this.removeEventListener(De[1],Je,Je.$),delete this[Pe]}}return U?M?ae:X:M?Ae:me}var Vt=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});i&&Vt.forEach(function(y){"on"+y in i&&Vt.remove(y)});function Kt(y,M){return function(D){var N=e.event;e.event=D,M[0]=this.__data__;try{y.apply(this,M)}finally{e.event=N}}}function Ht(y,M){var D=Kt(y,M);return function(N){var U=this,Z=N.relatedTarget;(!Z||Z!==U&&!(Z.compareDocumentPosition(U)&8))&&D.call(U,N)}}var Ot,er=0;function Mr(y){var M=".dragsuppress-"+ ++er,D="click"+M,N=e.select(s(y)).on("touchmove"+M,Ke).on("dragstart"+M,Ke).on("selectstart"+M,Ke);if(Ot==null&&(Ot="onselectstart"in y?!1:Te(y.style,"userSelect")),Ot){var U=a(y).style,Z=U[Ot];U[Ot]="none"}return function($){if(N.on(M,null),Ot&&(U[Ot]=Z),$){var X=function(){N.on(D,null)};N.on(D,function(){Ke(),X()},!0),setTimeout(X,0)}}}e.mouse=function(y){return Pt(y,ht())};var xr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Pt(y,M){M.changedTouches&&(M=M.changedTouches[0]);var D=y.ownerSVGElement||y;if(D.createSVGPoint){var N=D.createSVGPoint();if(xr<0){var U=s(y);if(U.scrollX||U.scrollY){D=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Z=D[0][0].getScreenCTM();xr=!(Z.f||Z.e),D.remove()}}return xr?(N.x=M.pageX,N.y=M.pageY):(N.x=M.clientX,N.y=M.clientY),N=N.matrixTransform(y.getScreenCTM().inverse()),[N.x,N.y]}var $=y.getBoundingClientRect();return[M.clientX-$.left-y.clientLeft,M.clientY-$.top-y.clientTop]}e.touch=function(y,M,D){if(arguments.length<3&&(D=M,M=ht().changedTouches),M){for(var N=0,U=M.length,Z;N0?1:y<0?-1:0}function Ea(y,M,D){return(M[0]-y[0])*(D[1]-y[1])-(M[1]-y[1])*(D[0]-y[0])}function Ii(y){return y>1?0:y<-1?dt:Math.acos(y)}function Ki(y){return y>1?Tr:y<-1?-Tr:Math.asin(y)}function yn(y){return((y=Math.exp(y))-1/y)/2}function Xi(y){return((y=Math.exp(y))+1/y)/2}function Jn(y){return((y=Math.exp(2*y))-1)/(y+1)}function En(y){return(y=Math.sin(y/2))*y}var Vi=Math.SQRT2,pa=2,Gr=4;e.interpolateZoom=function(y,M){var D=y[0],N=y[1],U=y[2],Z=M[0],$=M[1],X=M[2],ae=Z-D,me=$-N,_e=ae*ae+me*me,De,Pe;if(_e0&&(jt=jt.transition().duration($)),jt.call(nt.event)}function Dr(){Ue&&Ue.domain(ze.range().map(function(jt){return(jt-y.x)/y.k}).map(ze.invert)),ut&&ut.domain(je.range().map(function(jt){return(jt-y.y)/y.k}).map(je.invert))}function Ir(jt){X++||jt({type:"zoomstart"})}function ea(jt){Dr(),jt({type:"zoom",scale:y.k,translate:[y.x,y.y]})}function Ur(jt){--X||(jt({type:"zoomend"}),D=null)}function Kr(){var jt=this,Jr=ot.of(jt,arguments),oa=0,sa=e.select(s(jt)).on(me,$i).on(_e,xi),Ei=We(e.mouse(jt)),Oi=Mr(jt);ah.call(jt),Ir(Jr);function $i(){oa=1,fr(e.mouse(jt),Ei),ea(Jr)}function xi(){sa.on(me,null).on(_e,null),Oi(oa),Ur(Jr)}}function Ba(){var jt=this,Jr=ot.of(jt,arguments),oa={},sa=0,Ei,Oi=".zoom-"+e.event.changedTouches[0].identifier,$i="touchmove"+Oi,xi="touchend"+Oi,xn=[],br=e.select(jt),Vr=Mr(jt);Ti(),Ir(Jr),br.on(ae,null).on(Pe,Ti);function Fi(){var cn=e.touches(jt);return Ei=y.k,cn.forEach(function(pi){pi.identifier in oa&&(oa[pi.identifier]=We(pi))}),cn}function Ti(){var cn=e.event.target;e.select(cn).on($i,lo).on(xi,zn),xn.push(cn);for(var pi=e.event.changedTouches,jo=0,uo=pi.length;jo1){var Aa=ci[0],ui=ci[1],Nl=Aa[0]-ui[0],Hv=Aa[1]-ui[1];sa=Nl*Nl+Hv*Hv}}function lo(){var cn=e.touches(jt),pi,jo,uo,ci;ah.call(jt);for(var gf=0,Aa=cn.length;gf1?1:M,D=D<0?0:D>1?1:D,U=D<=.5?D*(1+M):D+M-D*M,N=2*D-U;function Z(X){return X>360?X-=360:X<0&&(X+=360),X<60?N+(U-N)*X/60:X<180?U:X<240?N+(U-N)*(240-X)/60:N}function $(X){return Math.round(Z(X)*255)}return new ua($(y+120),$(y),$(y-120))}e.hcl=ce;function ce(y,M,D){return this instanceof ce?(this.h=+y,this.c=+M,void(this.l=+D)):arguments.length<2?y instanceof ce?new ce(y.h,y.c,y.l):y instanceof rt?wr(y.l,y.a,y.b):wr((y=nr((y=e.rgb(y)).r,y.g,y.b)).l,y.a,y.b):new ce(y,M,D)}var Ee=ce.prototype=new ya;Ee.brighter=function(y){return new ce(this.h,this.c,Math.min(100,this.l+Ve*(arguments.length?y:1)))},Ee.darker=function(y){return new ce(this.h,this.c,Math.max(0,this.l-Ve*(arguments.length?y:1)))},Ee.rgb=function(){return Ne(this.h,this.c,this.l).rgb()};function Ne(y,M,D){return isNaN(y)&&(y=0),isNaN(M)&&(M=0),new rt(D,Math.cos(y*=Hr)*M,Math.sin(y)*M)}e.lab=rt;function rt(y,M,D){return this instanceof rt?(this.l=+y,this.a=+M,void(this.b=+D)):arguments.length<2?y instanceof rt?new rt(y.l,y.a,y.b):y instanceof ce?Ne(y.h,y.c,y.l):nr((y=ua(y)).r,y.g,y.b):new rt(y,M,D)}var Ve=18,yt=.95047,Dt=1,Ft=1.08883,tr=rt.prototype=new ya;tr.brighter=function(y){return new rt(Math.min(100,this.l+Ve*(arguments.length?y:1)),this.a,this.b)},tr.darker=function(y){return new rt(Math.max(0,this.l-Ve*(arguments.length?y:1)),this.a,this.b)},tr.rgb=function(){return Yt(this.l,this.a,this.b)};function Yt(y,M,D){var N=(y+16)/116,U=N+M/500,Z=N-D/200;return U=Yr(U)*yt,N=Yr(N)*Dt,Z=Yr(Z)*Ft,new ua(ca(3.2404542*U-1.5371385*N-.4985314*Z),ca(-.969266*U+1.8760108*N+.041556*Z),ca(.0556434*U-.2040259*N+1.0572252*Z))}function wr(y,M,D){return y>0?new ce(Math.atan2(D,M)*_a,Math.sqrt(M*M+D*D),y):new ce(NaN,NaN,y)}function Yr(y){return y>.206893034?y*y*y:(y-4/29)/7.787037}function Br(y){return y>.008856?Math.pow(y,1/3):7.787037*y+4/29}function ca(y){return Math.round(255*(y<=.00304?12.92*y:1.055*Math.pow(y,1/2.4)-.055))}e.rgb=ua;function ua(y,M,D){return this instanceof ua?(this.r=~~y,this.g=~~M,void(this.b=~~D)):arguments.length<2?y instanceof ua?new ua(y.r,y.g,y.b):$r(""+y,ua,se):new ua(y,M,D)}function Na(y){return new ua(y>>16,y>>8&255,y&255)}function ii(y){return Na(y)+""}var Wr=ua.prototype=new ya;Wr.brighter=function(y){y=Math.pow(.7,arguments.length?y:1);var M=this.r,D=this.g,N=this.b,U=30;return!M&&!D&&!N?new ua(U,U,U):(M&&M>4,N=N>>4|N,U=ae&240,U=U>>4|U,Z=ae&15,Z=Z<<4|Z):y.length===7&&(N=(ae&16711680)>>16,U=(ae&65280)>>8,Z=ae&255)),M(N,U,Z))}function ga(y,M,D){var N=Math.min(y/=255,M/=255,D/=255),U=Math.max(y,M,D),Z=U-N,$,X,ae=(U+N)/2;return Z?(X=ae<.5?Z/(U+N):Z/(2-U-N),y==U?$=(M-D)/Z+(M0&&ae<1?0:$),new le($,X,ae)}function nr(y,M,D){y=wi(y),M=wi(M),D=wi(D);var N=Br((.4124564*y+.3575761*M+.1804375*D)/yt),U=Br((.2126729*y+.7151522*M+.072175*D)/Dt),Z=Br((.0193339*y+.119192*M+.9503041*D)/Ft);return rt(116*U-16,500*(N-U),200*(U-Z))}function wi(y){return(y/=255)<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function La(y){var M=parseFloat(y);return y.charAt(y.length-1)==="%"?Math.round(M*2.55):M}var si=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});si.forEach(function(y,M){si.set(y,Na(M))});function fa(y){return typeof y=="function"?y:function(){return y}}e.functor=fa,e.xhr=Ln(Ce);function Ln(y){return function(M,D,N){return arguments.length===2&&typeof D=="function"&&(N=D,D=null),Co(M,D,y,N)}}function Co(y,M,D,N){var U={},Z=e.dispatch("beforesend","progress","load","error"),$={},X=new XMLHttpRequest,ae=null;self.XDomainRequest&&!("withCredentials"in X)&&/^(http(s)?:)?\/\//.test(y)&&(X=new XDomainRequest),"onload"in X?X.onload=X.onerror=me:X.onreadystatechange=function(){X.readyState>3&&me()};function me(){var _e=X.status,De;if(!_e&&Ga(X)||_e>=200&&_e<300||_e===304){try{De=D.call(U,X)}catch(Pe){Z.error.call(U,Pe);return}Z.load.call(U,De)}else Z.error.call(U,X)}return X.onprogress=function(_e){var De=e.event;e.event=_e;try{Z.progress.call(U,X)}finally{e.event=De}},U.header=function(_e,De){return _e=(_e+"").toLowerCase(),arguments.length<2?$[_e]:(De==null?delete $[_e]:$[_e]=De+"",U)},U.mimeType=function(_e){return arguments.length?(M=_e==null?null:_e+"",U):M},U.responseType=function(_e){return arguments.length?(ae=_e,U):ae},U.response=function(_e){return D=_e,U},["get","post"].forEach(function(_e){U[_e]=function(){return U.send.apply(U,[_e].concat(r(arguments)))}}),U.send=function(_e,De,Pe){if(arguments.length===2&&typeof De=="function"&&(Pe=De,De=null),X.open(_e,y,!0),M!=null&&!("accept"in $)&&($.accept=M+",*/*"),X.setRequestHeader)for(var Je in $)X.setRequestHeader(Je,$[Je]);return M!=null&&X.overrideMimeType&&X.overrideMimeType(M),ae!=null&&(X.responseType=ae),Pe!=null&&U.on("error",Pe).on("load",function(ot){Pe(null,ot)}),Z.beforesend.call(U,X),X.send(De==null?null:De),U},U.abort=function(){return X.abort(),U},e.rebind(U,Z,"on"),N==null?U:U.get(xs(N))}function xs(y){return y.length===1?function(M,D){y(M==null?D:null)}:y}function Ga(y){var M=y.responseType;return M&&M!=="text"?y.response:y.responseText}e.dsv=function(y,M){var D=new RegExp('["'+y+` ]`),N=y.charCodeAt(0);function U(me,_e,De){arguments.length<3&&(De=_e,_e=null);var Pe=Co(me,M,_e==null?Z:$(_e),De);return Pe.row=function(Je){return arguments.length?Pe.response((_e=Je)==null?Z:$(Je)):_e},Pe}function Z(me){return U.parse(me.responseText)}function $(me){return function(_e){return U.parse(_e.responseText,me)}}U.parse=function(me,_e){var De;return U.parseRows(me,function(Pe,Je){if(De)return De(Pe,Je-1);var ot=function(ze){for(var Ue={},je=Pe.length,ut=0;ut=ot)return Pe;if(ut)return ut=!1,De;var Gt=ze;if(me.charCodeAt(Gt)===34){for(var or=Gt;or++24?(isFinite(M)&&(clearTimeout(dl),dl=setTimeout(Nc,M)),Bi=0):(Bi=1,Qd(Nc))}e.timer.flush=function(){hv(),vv()};function hv(){for(var y=Date.now(),M=Kn;M;)y>=M.t&&M.c(y-M.t)&&(M.c=null),M=M.n;return y}function vv(){for(var y,M=Kn,D=1/0;M;)M.c?(M.t=0;--X)ze.push(U[me[De[X]][2]]);for(X=+Je;X1&&Ea(y[D[N-2]],y[D[N-1]],y[U])<=0;)--N;D[N++]=U}return D.slice(0,N)}function Ku(y,M){return y[0]-M[0]||y[1]-M[1]}e.geom.polygon=function(y){return He(y,Zf),y};var Zf=e.geom.polygon.prototype=[];Zf.area=function(){for(var y=-1,M=this.length,D,N=this[M-1],U=0;++yGe)X=X.L;else if($=M-an(X,D),$>Ge){if(!X.R){N=X;break}X=X.R}else{Z>-Ge?(N=X.P,U=X):$>-Ge?(N=X,U=X.N):N=U=X;break}var ae=oo(y);if(du.insert(N,ae),!(!N&&!U)){if(N===U){wa(N),U=oo(N.site),du.insert(ae,U),ae.edge=U.edge=Xs(N.site,ae.site),Cr(N),Cr(U);return}if(!U){ae.edge=Xs(N.site,ae.site);return}wa(N),wa(U);var me=N.site,_e=me.x,De=me.y,Pe=y.x-_e,Je=y.y-De,ot=U.site,ze=ot.x-_e,Ue=ot.y-De,je=2*(Pe*Ue-Je*ze),ut=Pe*Pe+Je*Je,nt=ze*ze+Ue*Ue,We={x:(Ue*ut-Je*nt)/je+_e,y:(Pe*nt-ze*ut)/je+De};us(U.edge,me,ot,We),ae.edge=Xs(me,y,null,We),U.edge=Xs(y,ot,null,We),Cr(N),Cr(U)}}function pu(y,M){var D=y.site,N=D.x,U=D.y,Z=U-M;if(!Z)return N;var $=y.P;if(!$)return-1/0;D=$.site;var X=D.x,ae=D.y,me=ae-M;if(!me)return X;var _e=X-N,De=1/Z-1/me,Pe=_e/me;return De?(-Pe+Math.sqrt(Pe*Pe-2*De*(_e*_e/(-2*me)-ae+me/2+U-Z/2)))/De+N:(N+X)/2}function an(y,M){var D=y.N;if(D)return pu(D,M);var N=y.site;return N.y===M?N.x:1/0}function yl(y){this.site=y,this.edges=[]}yl.prototype.prepare=function(){for(var y=this.edges,M=y.length,D;M--;)D=y[M].edge,(!D.b||!D.a)&&y.splice(M,1);return y.sort($u),y.length};function bs(y){for(var M=y[0][0],D=y[1][0],N=y[0][1],U=y[1][1],Z,$,X,ae,me=Go,_e=me.length,De,Pe,Je,ot,ze,Ue;_e--;)if(De=me[_e],!(!De||!De.prepare()))for(Je=De.edges,ot=Je.length,Pe=0;PeGe||I(ae-$)>Ge)&&(Je.splice(Pe,0,new _l(mu(De.site,Ue,I(X-M)Ge?{x:M,y:I(Z-M)Ge?{x:I($-U)Ge?{x:D,y:I(Z-D)Ge?{x:I($-N)=-bt)){var Pe=ae*ae+me*me,Je=_e*_e+Ue*Ue,ot=(Ue*Pe-me*Je)/De,ze=(ae*Je-_e*Pe)/De,Ue=ze+X,je=pv.pop()||new ef;je.arc=y,je.site=U,je.x=ot+$,je.y=Ue+Math.sqrt(ot*ot+ze*ze),je.cy=Ue,y.circle=je;for(var ut=null,nt=Qu._;nt;)if(je.y0)){if(ze/=Je,Je<0){if(ze0){if(ze>Pe)return;ze>De&&(De=ze)}if(ze=D-X,!(!Je&&ze<0)){if(ze/=Je,Je<0){if(ze>Pe)return;ze>De&&(De=ze)}else if(Je>0){if(ze0)){if(ze/=ot,ot<0){if(ze0){if(ze>Pe)return;ze>De&&(De=ze)}if(ze=N-ae,!(!ot&&ze<0)){if(ze/=ot,ot<0){if(ze>Pe)return;ze>De&&(De=ze)}else if(ot>0){if(ze0&&(U.a={x:X+De*Je,y:ae+De*ot}),Pe<1&&(U.b={x:X+Pe*Je,y:ae+Pe*ot}),U}}}}}}function ws(y){for(var M=ml,D=Ta(y[0][0],y[0][1],y[1][0],y[1][1]),N=M.length,U;N--;)U=M[N],(!gl(U,y)||!D(U)||I(U.a.x-U.b.x)=Z)return;if(_e>Pe){if(!N)N={x:ot,y:$};else if(N.y>=X)return;D={x:ot,y:X}}else{if(!N)N={x:ot,y:X};else if(N.y<$)return;D={x:ot,y:$}}}else if(Ue=(_e-Pe)/(Je-De),je=ze-Ue*ot,Ue<-1||Ue>1)if(_e>Pe){if(!N)N={x:($-je)/Ue,y:$};else if(N.y>=X)return;D={x:(X-je)/Ue,y:X}}else{if(!N)N={x:(X-je)/Ue,y:X};else if(N.y<$)return;D={x:($-je)/Ue,y:$}}else if(De=Z)return;D={x:Z,y:Ue*Z+je}}else{if(!N)N={x:Z,y:Ue*Z+je};else if(N.x=_e&&je.x<=Pe&&je.y>=De&&je.y<=Je?[[_e,Je],[Pe,Je],[Pe,De],[_e,De]]:[];ut.point=ae[ze]}),me}function X(ae){return ae.map(function(me,_e){return{x:Math.round(N(me,_e)/Ge)*Ge,y:Math.round(U(me,_e)/Ge)*Ge,i:_e}})}return $.links=function(ae){return yu(X(ae)).edges.filter(function(me){return me.l&&me.r}).map(function(me){return{source:ae[me.l.i],target:ae[me.r.i]}})},$.triangles=function(ae){var me=[];return yu(X(ae)).cells.forEach(function(_e,De){for(var Pe=_e.site,Je=_e.edges.sort($u),ot=-1,ze=Je.length,Ue,je,ut=Je[ze-1].edge,nt=ut.l===Pe?ut.r:ut.l;++otnt&&(nt=_e.x),_e.y>We&&(We=_e.y),Je.push(_e.x),ot.push(_e.y);else for(ze=0;zent&&(nt=Gt),or>We&&(We=or),Je.push(Gt),ot.push(or)}var fr=nt-je,lr=We-ut;fr>lr?We=ut+fr:nt=je+lr;function Dr(Ur,Kr,Ba,ri,$a,jt,Jr,oa){if(!(isNaN(Ba)||isNaN(ri)))if(Ur.leaf){var sa=Ur.x,Ei=Ur.y;if(sa!=null)if(I(sa-Ba)+I(Ei-ri)<.01)Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa);else{var Oi=Ur.point;Ur.x=Ur.y=Ur.point=null,Ir(Ur,Oi,sa,Ei,$a,jt,Jr,oa),Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa)}else Ur.x=Ba,Ur.y=ri,Ur.point=Kr}else Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa)}function Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa){var sa=($a+Jr)*.5,Ei=(jt+oa)*.5,Oi=Ba>=sa,$i=ri>=Ei,xi=$i<<1|Oi;Ur.leaf=!1,Ur=Ur.nodes[xi]||(Ur.nodes[xi]=gn()),Oi?$a=sa:Jr=sa,$i?jt=Ei:oa=Ei,Dr(Ur,Kr,Ba,ri,$a,jt,Jr,oa)}var ea=gn();if(ea.add=function(Ur){Dr(ea,Ur,+De(Ur,++ze),+Pe(Ur,ze),je,ut,nt,We)},ea.visit=function(Ur){Pn(Ur,ea,je,ut,nt,We)},ea.find=function(Ur){return rp(ea,Ur[0],Ur[1],je,ut,nt,We)},ze=-1,M==null){for(;++zeZ||Pe>$||Je=Gt,lr=D>=or,Dr=lr<<1|fr,Ir=Dr+4;DrD&&(Z=M.slice(D,Z),X[$]?X[$]+=Z:X[++$]=Z),(N=N[0])===(U=U[0])?X[$]?X[$]+=U:X[++$]=U:(X[++$]=null,ae.push({i:$,x:Eo(N,U)})),D=Xf.lastIndex;return D=0&&!(N=e.interpolators[D](y,M)););return N}e.interpolators=[function(y,M){var D=typeof M;return(D==="string"?si.has(M.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(M)?tf:Zo:M instanceof ya?tf:Array.isArray(M)?Yo:D==="object"&&isNaN(M)?nn:Eo)(y,M)}],e.interpolateArray=Yo;function Yo(y,M){var D=[],N=[],U=y.length,Z=M.length,$=Math.min(y.length,M.length),X;for(X=0;X<$;++X)D.push(on(y[X],M[X]));for(;X=0?y.slice(0,M):y,N=M>=0?y.slice(M+1):"in";return D=Sm.get(D)||js,N=Wo.get(N)||Ce,km(N(D.apply(null,t.call(arguments,1))))};function km(y){return function(M){return M<=0?0:M>=1?1:y(M)}}function Js(y){return function(M){return 1-y(1-M)}}function Dn(y){return function(M){return .5*(M<.5?y(2*M):2-y(2-2*M))}}function Cm(y){return y*y}function xl(y){return y*y*y}function bl(y){if(y<=0)return 0;if(y>=1)return 1;var M=y*y,D=M*y;return 4*(y<.5?D:3*(y-M)+D-.75)}function gv(y){return function(M){return Math.pow(M,y)}}function Em(y){return 1-Math.cos(y*Tr)}function Lm(y){return Math.pow(2,10*(y-1))}function Oc(y){return 1-Math.sqrt(1-y*y)}function Pm(y,M){var D;return arguments.length<2&&(M=.45),arguments.length?D=M/gr*Math.asin(1/y):(y=1,D=M/4),function(N){return 1+y*Math.pow(2,-10*N)*Math.sin((N-D)*gr/M)}}function Dm(y){return y||(y=1.70158),function(M){return M*M*((y+1)*M-y)}}function zm(y){return y<1/2.75?7.5625*y*y:y<2/2.75?7.5625*(y-=1.5/2.75)*y+.75:y<2.5/2.75?7.5625*(y-=2.25/2.75)*y+.9375:7.5625*(y-=2.625/2.75)*y+.984375}e.interpolateHcl=_v;function _v(y,M){y=e.hcl(y),M=e.hcl(M);var D=y.h,N=y.c,U=y.l,Z=M.h-D,$=M.c-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.c:N),isNaN(Z)?(Z=0,D=isNaN(D)?M.h:D):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return Ne(D+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateHsl=Im;function Im(y,M){y=e.hsl(y),M=e.hsl(M);var D=y.h,N=y.s,U=y.l,Z=M.h-D,$=M.s-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.s:N),isNaN(Z)?(Z=0,D=isNaN(D)?M.h:D):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return se(D+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateLab=Rm;function Rm(y,M){y=e.lab(y),M=e.lab(M);var D=y.l,N=y.a,U=y.b,Z=M.l-D,$=M.a-N,X=M.b-U;return function(ae){return Yt(D+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateRound=xv;function xv(y,M){return M-=y,function(D){return Math.round(y+M*D)}}e.transform=function(y){var M=i.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(D){if(D!=null){M.setAttribute("transform",D);var N=M.transform.baseVal.consolidate()}return new ap(N?N.matrix:wv)})(y)};function ap(y){var M=[y.a,y.b],D=[y.c,y.d],N=bv(M),U=ip(M,D),Z=bv(Fm(D,M,-U))||0;M[0]*D[1]180?M+=360:M-y>180&&(y+=360),N.push({i:D.push(gu(D)+"rotate(",null,")")-2,x:Eo(y,M)})):M&&D.push(gu(D)+"rotate("+M+")")}function op(y,M,D,N){y!==M?N.push({i:D.push(gu(D)+"skewX(",null,")")-2,x:Eo(y,M)}):M&&D.push(gu(D)+"skewX("+M+")")}function sp(y,M,D,N){if(y[0]!==M[0]||y[1]!==M[1]){var U=D.push(gu(D)+"scale(",null,",",null,")");N.push({i:U-4,x:Eo(y[0],M[0])},{i:U-2,x:Eo(y[1],M[1])})}else(M[0]!==1||M[1]!==1)&&D.push(gu(D)+"scale("+M+")")}function lp(y,M){var D=[],N=[];return y=e.transform(y),M=e.transform(M),np(y.translate,M.translate,D,N),qm(y.rotate,M.rotate,D,N),op(y.skew,M.skew,D,N),sp(y.scale,M.scale,D,N),y=M=null,function(U){for(var Z=-1,$=N.length,X;++Z<$;)D[(X=N[Z]).i]=X.x(U);return D.join("")}}function Nm(y,M){return M=(M-=y=+y)||1/M,function(D){return(D-y)/M}}function cs(y,M){return M=(M-=y=+y)||1/M,function(D){return Math.max(0,Math.min(1,(D-y)/M))}}e.layout={},e.layout.bundle=function(){return function(y){for(var M=[],D=-1,N=y.length;++D0?Z=We:(D.c=null,D.t=NaN,D=null,M.end({type:"end",alpha:Z=0})):We>0&&(M.start({type:"start",alpha:Z=We}),D=qc(y.tick)),y):Z},y.start=function(){var We,Gt=Je.length,or=ot.length,fr=N[0],lr=N[1],Dr,Ir;for(We=0;We=0;)Z.push(_e=me[ae]),_e.parent=X,_e.depth=X.depth+1;D&&(X.value=0),X.children=me}else D&&(X.value=+D.call(N,X,X.depth)||0),delete X.children;return hs(U,function(De){var Pe,Je;y&&(Pe=De.children)&&Pe.sort(y),D&&(Je=De.parent)&&(Je.value+=De.value)}),$}return N.sort=function(U){return arguments.length?(y=U,N):y},N.children=function(U){return arguments.length?(M=U,N):M},N.value=function(U){return arguments.length?(D=U,N):D},N.revalue=function(U){return D&&(rf(U,function(Z){Z.children&&(Z.value=0)}),hs(U,function(Z){var $;Z.children||(Z.value=+D.call(N,Z,Z.depth)||0),($=Z.parent)&&($.value+=Z.value)})),U},N};function Ml(y,M){return e.rebind(y,M,"sort","children","value"),y.nodes=y,y.links=cp,y}function rf(y,M){for(var D=[y];(y=D.pop())!=null;)if(M(y),(U=y.children)&&(N=U.length))for(var N,U;--N>=0;)D.push(U[N])}function hs(y,M){for(var D=[y],N=[];(y=D.pop())!=null;)if(N.push(y),($=y.children)&&(Z=$.length))for(var U=-1,Z,$;++UU&&(U=X),N.push(X)}for($=0;$N&&(D=M,N=U);return D}function Ri(y){return y.reduce(Hm,0)}function Hm(y,M){return y+M[1]}e.layout.histogram=function(){var y=!0,M=Number,D=dp,N=Zc;function U(Z,Pe){for(var X=[],ae=Z.map(M,this),me=D.call(this,ae,Pe),_e=N.call(this,me,ae,Pe),De,Pe=-1,Je=ae.length,ot=_e.length-1,ze=y?1:1/Je,Ue;++Pe0)for(Pe=-1;++Pe=me[0]&&Ue<=me[1]&&(De=X[e.bisect(_e,Ue,1,ot)-1],De.y+=ze,De.push(Z[Pe]));return X}return U.value=function(Z){return arguments.length?(M=Z,U):M},U.range=function(Z){return arguments.length?(D=fa(Z),U):D},U.bins=function(Z){return arguments.length?(N=typeof Z=="number"?function($){return kv($,Z)}:fa(Z),U):N},U.frequency=function(Z){return arguments.length?(y=!!Z,U):y},U};function Zc(y,M){return kv(y,Math.ceil(Math.log(M.length)/Math.LN2+1))}function kv(y,M){for(var D=-1,N=+y[0],U=(y[1]-N)/M,Z=[];++D<=M;)Z[D]=U*D+N;return Z}function dp(y){return[e.min(y),e.max(y)]}e.layout.pack=function(){var y=e.layout.hierarchy().sort(nf),M=0,D=[1,1],N;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me=D[0],_e=D[1],De=N==null?Math.sqrt:typeof N=="function"?N:function(){return N};if(ae.x=ae.y=0,hs(ae,function(Je){Je.r=+De(Je.value)}),hs(ae,Jf),M){var Pe=M*(N?1:Math.max(2*ae.r/me,2*ae.r/_e))/2;hs(ae,function(Je){Je.r+=Pe}),hs(ae,Jf),hs(ae,function(Je){Je.r-=Pe})}return kl(ae,me/2,_e/2,N?1:1/Math.max(2*ae.r/me,2*ae.r/_e)),X}return U.size=function(Z){return arguments.length?(D=Z,U):D},U.radius=function(Z){return arguments.length?(N=Z==null||typeof Z=="function"?Z:+Z,U):N},U.padding=function(Z){return arguments.length?(M=+Z,U):M},Ml(U,y)};function nf(y,M){return y.value-M.value}function _u(y,M){var D=y._pack_next;y._pack_next=M,M._pack_prev=y,M._pack_next=D,D._pack_prev=M}function Cv(y,M){y._pack_next=M,M._pack_prev=y}function _n(y,M){var D=M.x-y.x,N=M.y-y.y,U=y.r+M.r;return .999*U*U>D*D+N*N}function Jf(y){if(!(M=y.children)||!(Pe=M.length))return;var M,D=1/0,N=-1/0,U=1/0,Z=-1/0,$,X,ae,me,_e,De,Pe;function Je(We){D=Math.min(We.x-We.r,D),N=Math.max(We.x+We.r,N),U=Math.min(We.y-We.r,U),Z=Math.max(We.y+We.r,Z)}if(M.forEach(Ks),$=M[0],$.x=-$.r,$.y=0,Je($),Pe>1&&(X=M[1],X.x=X.r,X.y=0,Je(X),Pe>2))for(ae=M[2],Cl($,X,ae),Je(ae),_u($,ae),$._pack_prev=ae,_u(ae,X),X=$._pack_next,me=3;meUe.x&&(Ue=Gt),Gt.depth>je.depth&&(je=Gt)});var ut=M(ze,Ue)/2-ze.x,nt=D[0]/(Ue.x+M(Ue,ze)/2+ut),We=D[1]/(je.depth||1);rf(Je,function(Gt){Gt.x=(Gt.x+ut)*nt,Gt.y=Gt.depth*We})}return Pe}function Z(_e){for(var De={A:null,children:[_e]},Pe=[De],Je;(Je=Pe.pop())!=null;)for(var ot=Je.children,ze,Ue=0,je=ot.length;Ue0&&(El(Gm(ze,_e,Pe),_e,Gt),je+=Gt,ut+=Gt),nt+=ze.m,je+=Je.m,We+=Ue.m,ut+=ot.m;ze&&!Ss(ot)&&(ot.t=ze,ot.m+=nt-ut),Je&&!Ms(Ue)&&(Ue.t=Je,Ue.m+=je-We,Pe=_e)}return Pe}function me(_e){_e.x*=D[0],_e.y=_e.depth*D[1]}return U.separation=function(_e){return arguments.length?(M=_e,U):M},U.size=function(_e){return arguments.length?(N=(D=_e)==null?me:null,U):N?null:D},U.nodeSize=function(_e){return arguments.length?(N=(D=_e)==null?null:me,U):N?D:null},Ml(U,y)};function Qs(y,M){return y.parent==M.parent?1:2}function Ms(y){var M=y.children;return M.length?M[0]:y.t}function Ss(y){var M=y.children,D;return(D=M.length)?M[D-1]:y.t}function El(y,M,D){var N=D/(M.i-y.i);M.c-=N,M.s+=D,y.c+=N,M.z+=D,M.m+=D}function pp(y){for(var M=0,D=0,N=y.children,U=N.length,Z;--U>=0;)Z=N[U],Z.z+=M,Z.m+=M,M+=Z.s+(D+=Z.c)}function Gm(y,M,D){return y.a.parent===M.parent?y.a:D}e.layout.cluster=function(){var y=e.layout.hierarchy().sort(null).value(null),M=Qs,D=[1,1],N=!1;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me,_e=0;hs(ae,function(ze){var Ue=ze.children;Ue&&Ue.length?(ze.x=Ym(Ue),ze.y=Zm(Ue)):(ze.x=me?_e+=M(ze,me):0,ze.y=0,me=ze)});var De=mp(ae),Pe=yp(ae),Je=De.x-M(De,Pe)/2,ot=Pe.x+M(Pe,De)/2;return hs(ae,N?function(ze){ze.x=(ze.x-ae.x)*D[0],ze.y=(ae.y-ze.y)*D[1]}:function(ze){ze.x=(ze.x-Je)/(ot-Je)*D[0],ze.y=(1-(ae.y?ze.y/ae.y:1))*D[1]}),X}return U.separation=function(Z){return arguments.length?(M=Z,U):M},U.size=function(Z){return arguments.length?(N=(D=Z)==null,U):N?null:D},U.nodeSize=function(Z){return arguments.length?(N=(D=Z)!=null,U):N?D:null},Ml(U,y)};function Zm(y){return 1+e.max(y,function(M){return M.y})}function Ym(y){return y.reduce(function(M,D){return M+D.x},0)/y.length}function mp(y){var M=y.children;return M&&M.length?mp(M[0]):y}function yp(y){var M=y.children,D;return M&&(D=M.length)?yp(M[D-1]):y}e.layout.treemap=function(){var y=e.layout.hierarchy(),M=Math.round,D=[1,1],N=null,U=Ev,Z=!1,$,X="squarify",ae=.5*(1+Math.sqrt(5));function me(ze,Ue){for(var je=-1,ut=ze.length,nt,We;++je0;)ut.push(We=nt[lr-1]),ut.area+=We.area,X!=="squarify"||(or=Pe(ut,fr))<=Gt?(nt.pop(),Gt=or):(ut.area-=ut.pop().area,Je(ut,fr,je,!1),fr=Math.min(je.dx,je.dy),ut.length=ut.area=0,Gt=1/0);ut.length&&(Je(ut,fr,je,!0),ut.length=ut.area=0),Ue.forEach(_e)}}function De(ze){var Ue=ze.children;if(Ue&&Ue.length){var je=U(ze),ut=Ue.slice(),nt,We=[];for(me(ut,je.dx*je.dy/ze.value),We.area=0;nt=ut.pop();)We.push(nt),We.area+=nt.area,nt.z!=null&&(Je(We,nt.z?je.dx:je.dy,je,!ut.length),We.length=We.area=0);Ue.forEach(De)}}function Pe(ze,Ue){for(var je=ze.area,ut,nt=0,We=1/0,Gt=-1,or=ze.length;++Gtnt&&(nt=ut));return je*=je,Ue*=Ue,je?Math.max(Ue*nt*ae/je,je/(Ue*We*ae)):1/0}function Je(ze,Ue,je,ut){var nt=-1,We=ze.length,Gt=je.x,or=je.y,fr=Ue?M(ze.area/Ue):0,lr;if(Ue==je.dx){for((ut||fr>je.dy)&&(fr=je.dy);++ntje.dx)&&(fr=je.dx);++nt1);return y+M*N*Math.sqrt(-2*Math.log(Z)/Z)}},logNormal:function(){var y=e.random.normal.apply(e,arguments);return function(){return Math.exp(y())}},bates:function(y){var M=e.random.irwinHall(y);return function(){return M()/y}},irwinHall:function(y){return function(){for(var M=0,D=0;D2?Wm:gp,me=N?cs:Nm;return U=ae(y,M,me,D),Z=ae(M,y,me,on),X}function X(ae){return U(ae)}return X.invert=function(ae){return Z(ae)},X.domain=function(ae){return arguments.length?(y=ae.map(Number),$()):y},X.range=function(ae){return arguments.length?(M=ae,$()):M},X.rangeRound=function(ae){return X.range(ae).interpolate(xv)},X.clamp=function(ae){return arguments.length?(N=ae,$()):N},X.interpolate=function(ae){return arguments.length?(D=ae,$()):D},X.ticks=function(ae){return zv(y,ae)},X.tickFormat=function(ae,me){return d3_scale_linearTickFormat(y,ae,me)},X.nice=function(ae){return wp(y,ae),$()},X.copy=function(){return xp(y,M,D,N)},$()}function bp(y,M){return e.rebind(y,M,"range","rangeRound","interpolate","clamp")}function wp(y,M){return Pv(y,_p(Dv(y,M)[2])),Pv(y,_p(Dv(y,M)[2])),y}function Dv(y,M){M==null&&(M=10);var D=Kf(y),N=D[1]-D[0],U=Math.pow(10,Math.floor(Math.log(N/M)/Math.LN10)),Z=M/N*U;return Z<=.15?U*=10:Z<=.35?U*=5:Z<=.75&&(U*=2),D[0]=Math.ceil(D[0]/U)*U,D[1]=Math.floor(D[1]/U)*U+U*.5,D[2]=U,D}function zv(y,M){return e.range.apply(e,Dv(y,M))}var xu={s:1,g:1,p:1,r:1,e:1};function Ll(y){return-Math.floor(Math.log(y)/Math.LN10+.01)}function Qf(y,M){var D=Ll(M[2]);return y in xu?Math.abs(D-Ll(Math.max(I(M[0]),I(M[1]))))+ +(y!=="e"):D-(y==="%")*2}e.scale.log=function(){return Iv(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Iv(y,M,D,N){function U(X){return(D?Math.log(X<0?0:X):-Math.log(X>0?0:-X))/Math.log(M)}function Z(X){return D?Math.pow(M,X):-Math.pow(M,-X)}function $(X){return y(U(X))}return $.invert=function(X){return Z(y.invert(X))},$.domain=function(X){return arguments.length?(D=X[0]>=0,y.domain((N=X.map(Number)).map(U)),$):N},$.base=function(X){return arguments.length?(M=+X,y.domain(N.map(U)),$):M},$.nice=function(){var X=Pv(N.map(U),D?Math:Wc);return y.domain(X),N=X.map(Z),$},$.ticks=function(){var X=Kf(N),ae=[],me=X[0],_e=X[1],De=Math.floor(U(me)),Pe=Math.ceil(U(_e)),Je=M%1?2:M;if(isFinite(Pe-De)){if(D){for(;De0;ot--)ae.push(Z(De)*ot);for(De=0;ae[De]_e;Pe--);ae=ae.slice(De,Pe)}return ae},$.copy=function(){return Iv(y.copy(),M,D,N)},bp($,y)}var Wc={floor:function(y){return-Math.ceil(-y)},ceil:function(y){return-Math.floor(-y)}};e.scale.pow=function(){return Xc(e.scale.linear(),1,[0,1])};function Xc(y,M,D){var N=jc(M),U=jc(1/M);function Z($){return y(N($))}return Z.invert=function($){return U(y.invert($))},Z.domain=function($){return arguments.length?(y.domain((D=$.map(Number)).map(N)),Z):D},Z.ticks=function($){return zv(D,$)},Z.tickFormat=function($,X){return d3_scale_linearTickFormat(D,$,X)},Z.nice=function($){return Z.domain(wp(D,$))},Z.exponent=function($){return arguments.length?(N=jc(M=$),U=jc(1/M),y.domain(D.map(N)),Z):M},Z.copy=function(){return Xc(y.copy(),M,D)},bp(Z,y)}function jc(y){return function(M){return M<0?-Math.pow(-M,y):Math.pow(M,y)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Pl([],{t:"range",a:[[]]})};function Pl(y,M){var D,N,U;function Z(X){return N[((D.get(X)||(M.t==="range"?D.set(X,y.push(X)):NaN))-1)%N.length]}function $(X,ae){return e.range(y.length).map(function(me){return X+ae*me})}return Z.domain=function(X){if(!arguments.length)return y;y=[],D=new z;for(var ae=-1,me=X.length,_e;++ae0?D[Z-1]:y[0],ZPe?0:1;if(_e=Er)return ae(_e,ot)+(me?ae(me,1-ot):"")+"Z";var ze,Ue,je,ut,nt=0,We=0,Gt,or,fr,lr,Dr,Ir,ea,Ur,Kr=[];if((ut=(+$.apply(this,arguments)||0)/2)&&(je=N===Dl?Math.sqrt(me*me+_e*_e):+N.apply(this,arguments),ot||(We*=-1),_e&&(We=Ki(je/_e*Math.sin(ut))),me&&(nt=Ki(je/me*Math.sin(ut)))),_e){Gt=_e*Math.cos(De+We),or=_e*Math.sin(De+We),fr=_e*Math.cos(Pe-We),lr=_e*Math.sin(Pe-We);var Ba=Math.abs(Pe-De-2*We)<=dt?0:1;if(We&&zl(Gt,or,fr,lr)===ot^Ba){var ri=(De+Pe)/2;Gt=_e*Math.cos(ri),or=_e*Math.sin(ri),fr=lr=null}}else Gt=or=0;if(me){Dr=me*Math.cos(Pe-nt),Ir=me*Math.sin(Pe-nt),ea=me*Math.cos(De+nt),Ur=me*Math.sin(De+nt);var $a=Math.abs(De-Pe+2*nt)<=dt?0:1;if(nt&&zl(Dr,Ir,ea,Ur)===1-ot^$a){var jt=(De+Pe)/2;Dr=me*Math.cos(jt),Ir=me*Math.sin(jt),ea=Ur=null}}else Dr=Ir=0;if(Je>Ge&&(ze=Math.min(Math.abs(_e-me)/2,+D.apply(this,arguments)))>.001){Ue=me<_e^ot?0:1;var Jr=ze,oa=ze;if(Je0?0:1}function wu(y,M,D,N,U){var Z=y[0]-M[0],$=y[1]-M[1],X=(U?N:-N)/Math.sqrt(Z*Z+$*$),ae=X*$,me=-X*Z,_e=y[0]+ae,De=y[1]+me,Pe=M[0]+ae,Je=M[1]+me,ot=(_e+Pe)/2,ze=(De+Je)/2,Ue=Pe-_e,je=Je-De,ut=Ue*Ue+je*je,nt=D-N,We=_e*Je-Pe*De,Gt=(je<0?-1:1)*Math.sqrt(Math.max(0,nt*nt*ut-We*We)),or=(We*je-Ue*Gt)/ut,fr=(-We*Ue-je*Gt)/ut,lr=(We*je+Ue*Gt)/ut,Dr=(-We*Ue+je*Gt)/ut,Ir=or-ot,ea=fr-ze,Ur=lr-ot,Kr=Dr-ze;return Ir*Ir+ea*ea>Ur*Ur+Kr*Kr&&(or=lr,fr=Dr),[[or-ae,fr-me],[or*D/nt,fr*D/nt]]}function ec(){return!0}function ks(y){var M=vu,D=pl,N=ec,U=Xo,Z=U.key,$=.7;function X(ae){var me=[],_e=[],De=-1,Pe=ae.length,Je,ot=fa(M),ze=fa(D);function Ue(){me.push("M",U(y(_e),$))}for(;++De1?y.join("L"):y+"Z"}function lf(y){return y.join("L")+"Z"}function jm(y){for(var M=0,D=y.length,N=y[0],U=[N[0],",",N[1]];++M1&&U.push("H",N[0]),U.join("")}function uf(y){for(var M=0,D=y.length,N=y[0],U=[N[0],",",N[1]];++M1){X=M[1],Z=y[ae],ae++,N+="C"+(U[0]+$[0])+","+(U[1]+$[1])+","+(Z[0]-X[0])+","+(Z[1]-X[1])+","+Z[0]+","+Z[1];for(var me=2;me9&&(Z=D*3/Math.sqrt(Z),$[X]=Z*N,$[X+1]=Z*U));for(X=-1;++X<=ae;)Z=(y[Math.min(ae,X+1)][0]-y[Math.max(0,X-1)][0])/(6*(1+$[X]*$[X])),M.push([Z||0,$[X]*Z||0]);return M}function Lp(y){return y.length<3?Xo(y):y[0]+ff(y,$m(y))}e.svg.line.radial=function(){var y=ks(Bv);return y.radius=y.x,delete y.x,y.angle=y.y,delete y.y,y};function Bv(y){for(var M,D=-1,N=y.length,U,Z;++Ddt)+",1 "+De}function me(_e,De,Pe,Je){return"Q 0,0 "+Je}return Z.radius=function(_e){return arguments.length?(D=fa(_e),Z):D},Z.source=function(_e){return arguments.length?(y=fa(_e),Z):y},Z.target=function(_e){return arguments.length?(M=fa(_e),Z):M},Z.startAngle=function(_e){return arguments.length?(N=fa(_e),Z):N},Z.endAngle=function(_e){return arguments.length?(U=fa(_e),Z):U},Z};function Pp(y){return y.radius}e.svg.diagonal=function(){var y=eh,M=Ov,D=Uv;function N(U,Z){var $=y.call(this,U,Z),X=M.call(this,U,Z),ae=($.y+X.y)/2,me=[$,{x:$.x,y:ae},{x:X.x,y:ae},X];return me=me.map(D),"M"+me[0]+"C"+me[1]+" "+me[2]+" "+me[3]}return N.source=function(U){return arguments.length?(y=fa(U),N):y},N.target=function(U){return arguments.length?(M=fa(U),N):M},N.projection=function(U){return arguments.length?(D=U,N):D},N};function Uv(y){return[y.x,y.y]}e.svg.diagonal.radial=function(){var y=e.svg.diagonal(),M=Uv,D=y.projection;return y.projection=function(N){return arguments.length?D(Dp(M=N)):M},y};function Dp(y){return function(){var M=y.apply(this,arguments),D=M[0],N=M[1]-Tr;return[D*Math.cos(N),D*Math.sin(N)]}}e.svg.symbol=function(){var y=df,M=zp;function D(N,U){return(rh.get(y.call(this,N,U))||th)(M.call(this,N,U))}return D.type=function(N){return arguments.length?(y=fa(N),D):y},D.size=function(N){return arguments.length?(M=fa(N),D):M},D};function zp(){return 64}function df(){return"circle"}function th(y){var M=Math.sqrt(y/dt);return"M0,"+M+"A"+M+","+M+" 0 1,1 0,"+-M+"A"+M+","+M+" 0 1,1 0,"+M+"Z"}var rh=e.map({circle:th,cross:function(y){var M=Math.sqrt(y/5)/2;return"M"+-3*M+","+-M+"H"+-M+"V"+-3*M+"H"+M+"V"+-M+"H"+3*M+"V"+M+"H"+M+"V"+3*M+"H"+-M+"V"+M+"H"+-3*M+"Z"},diamond:function(y){var M=Math.sqrt(y/(2*Vv)),D=M*Vv;return"M0,"+-M+"L"+D+",0 0,"+M+" "+-D+",0Z"},square:function(y){var M=Math.sqrt(y)/2;return"M"+-M+","+-M+"L"+M+","+-M+" "+M+","+M+" "+-M+","+M+"Z"},"triangle-down":function(y){var M=Math.sqrt(y/Au),D=M*Au/2;return"M0,"+D+"L"+M+","+-D+" "+-M+","+-D+"Z"},"triangle-up":function(y){var M=Math.sqrt(y/Au),D=M*Au/2;return"M0,"+-D+"L"+M+","+D+" "+-M+","+D+"Z"}});e.svg.symbolTypes=rh.keys();var Au=Math.sqrt(3),Vv=Math.tan(30*Hr);pt.transition=function(y){for(var M=so||++Ci,D=fi(y),N=[],U,Z,$=Es||{time:Date.now(),ease:bl,delay:0,duration:250},X=-1,ae=this.length;++X0;)De[--ut].call(y,je);if(Ue>=1)return $.event&&$.event.end.call(y,y.__data__,M),--Z.count?delete Z[N]:delete y[D],1}$||(X=U.time,ae=qc(Pe,0,X),$=Z[N]={tween:new z,time:X,timer:ae,delay:U.delay,duration:U.duration,ease:U.ease,index:M},U=null,++Z.count)}e.svg.axis=function(){var y=e.scale.linear(),M=Rl,D=6,N=6,U=3,Z=[10],$=null,X;function ae(me){me.each(function(){var _e=e.select(this),De=this.__chart__||y,Pe=this.__chart__=y.copy(),Je=$==null?Pe.ticks?Pe.ticks.apply(Pe,Z):Pe.domain():$,ot=X==null?Pe.tickFormat?Pe.tickFormat.apply(Pe,Z):Ce:X,ze=_e.selectAll(".tick").data(Je,Pe),Ue=ze.enter().insert("g",".domain").attr("class","tick").style("opacity",Ge),je=e.transition(ze.exit()).style("opacity",Ge).remove(),ut=e.transition(ze.order()).style("opacity",1),nt=Math.max(D,0)+U,We,Gt=Yc(Pe),or=_e.selectAll(".domain").data([0]),fr=(or.enter().append("path").attr("class","domain"),e.transition(or));Ue.append("line"),Ue.append("text");var lr=Ue.select("line"),Dr=ut.select("line"),Ir=ze.select("text").text(ot),ea=Ue.select("text"),Ur=ut.select("text"),Kr=M==="top"||M==="left"?-1:1,Ba,ri,$a,jt;if(M==="bottom"||M==="top"?(We=mf,Ba="x",$a="y",ri="x2",jt="y2",Ir.attr("dy",Kr<0?"0em":".71em").style("text-anchor","middle"),fr.attr("d","M"+Gt[0]+","+Kr*N+"V0H"+Gt[1]+"V"+Kr*N)):(We=Fl,Ba="y",$a="x",ri="y2",jt="x2",Ir.attr("dy",".32em").style("text-anchor",Kr<0?"end":"start"),fr.attr("d","M"+Kr*N+","+Gt[0]+"H0V"+Gt[1]+"H"+Kr*N)),lr.attr(jt,Kr*D),ea.attr($a,Kr*nt),Dr.attr(ri,0).attr(jt,Kr*D),Ur.attr(Ba,0).attr($a,Kr*nt),Pe.rangeBand){var Jr=Pe,oa=Jr.rangeBand()/2;De=Pe=function(sa){return Jr(sa)+oa}}else De.rangeBand?De=Pe:je.call(We,Pe,De);Ue.call(We,De,Pe),ut.call(We,Pe,Pe)})}return ae.scale=function(me){return arguments.length?(y=me,ae):y},ae.orient=function(me){return arguments.length?(M=me in rc?me+"":Rl,ae):M},ae.ticks=function(){return arguments.length?(Z=r(arguments),ae):Z},ae.tickValues=function(me){return arguments.length?($=me,ae):$},ae.tickFormat=function(me){return arguments.length?(X=me,ae):X},ae.tickSize=function(me){var _e=arguments.length;return _e?(D=+me,N=+arguments[_e-1],ae):D},ae.innerTickSize=function(me){return arguments.length?(D=+me,ae):D},ae.outerTickSize=function(me){return arguments.length?(N=+me,ae):N},ae.tickPadding=function(me){return arguments.length?(U=+me,ae):U},ae.tickSubdivide=function(){return arguments.length&&ae},ae};var Rl="bottom",rc={top:1,right:1,bottom:1,left:1};function mf(y,M,D){y.attr("transform",function(N){var U=M(N);return"translate("+(isFinite(U)?U:D(N))+",0)"})}function Fl(y,M,D){y.attr("transform",function(N){var U=M(N);return"translate(0,"+(isFinite(U)?U:D(N))+")"})}e.svg.brush=function(){var y=it(_e,"brushstart","brush","brushend"),M=null,D=null,N=[0,0],U=[0,0],Z,$,X=!0,ae=!0,me=nh[0];function _e(ze){ze.each(function(){var Ue=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",ot).on("touchstart.brush",ot),je=Ue.selectAll(".background").data([0]);je.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ue.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var ut=Ue.selectAll(".resize").data(me,Ce);ut.exit().remove(),ut.enter().append("g").attr("class",function(or){return"resize "+or}).style("cursor",function(or){return Ls[or]}).append("rect").attr("x",function(or){return/[ew]$/.test(or)?-3:null}).attr("y",function(or){return/^[ns]/.test(or)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),ut.style("display",_e.empty()?"none":null);var nt=e.transition(Ue),We=e.transition(je),Gt;M&&(Gt=Yc(M),We.attr("x",Gt[0]).attr("width",Gt[1]-Gt[0]),Pe(nt)),D&&(Gt=Yc(D),We.attr("y",Gt[0]).attr("height",Gt[1]-Gt[0]),Je(nt)),De(nt)})}_e.event=function(ze){ze.each(function(){var Ue=y.of(this,arguments),je={x:N,y:U,i:Z,j:$},ut=this.__chart__||je;this.__chart__=je,so?e.select(this).transition().each("start.brush",function(){Z=ut.i,$=ut.j,N=ut.x,U=ut.y,Ue({type:"brushstart"})}).tween("brush:brush",function(){var nt=Yo(N,je.x),We=Yo(U,je.y);return Z=$=null,function(Gt){N=je.x=nt(Gt),U=je.y=We(Gt),Ue({type:"brush",mode:"resize"})}}).each("end.brush",function(){Z=je.i,$=je.j,Ue({type:"brush",mode:"resize"}),Ue({type:"brushend"})}):(Ue({type:"brushstart"}),Ue({type:"brush",mode:"resize"}),Ue({type:"brushend"}))})};function De(ze){ze.selectAll(".resize").attr("transform",function(Ue){return"translate("+N[+/e$/.test(Ue)]+","+U[+/^s/.test(Ue)]+")"})}function Pe(ze){ze.select(".extent").attr("x",N[0]),ze.selectAll(".extent,.n>rect,.s>rect").attr("width",N[1]-N[0])}function Je(ze){ze.select(".extent").attr("y",U[0]),ze.selectAll(".extent,.e>rect,.w>rect").attr("height",U[1]-U[0])}function ot(){var ze=this,Ue=e.select(e.event.target),je=y.of(ze,arguments),ut=e.select(ze),nt=Ue.datum(),We=!/^(n|s)$/.test(nt)&&M,Gt=!/^(e|w)$/.test(nt)&&D,or=Ue.classed("extent"),fr=Mr(ze),lr,Dr=e.mouse(ze),Ir,ea=e.select(s(ze)).on("keydown.brush",Ba).on("keyup.brush",ri);if(e.event.changedTouches?ea.on("touchmove.brush",$a).on("touchend.brush",Jr):ea.on("mousemove.brush",$a).on("mouseup.brush",Jr),ut.interrupt().selectAll("*").interrupt(),or)Dr[0]=N[0]-Dr[0],Dr[1]=U[0]-Dr[1];else if(nt){var Ur=+/w$/.test(nt),Kr=+/^n/.test(nt);Ir=[N[1-Ur]-Dr[0],U[1-Kr]-Dr[1]],Dr[0]=N[Ur],Dr[1]=U[Kr]}else e.event.altKey&&(lr=Dr.slice());ut.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ue.style("cursor")),je({type:"brushstart"}),$a();function Ba(){e.event.keyCode==32&&(or||(lr=null,Dr[0]-=N[1],Dr[1]-=U[1],or=2),Ke())}function ri(){e.event.keyCode==32&&or==2&&(Dr[0]+=N[1],Dr[1]+=U[1],or=0,Ke())}function $a(){var oa=e.mouse(ze),sa=!1;Ir&&(oa[0]+=Ir[0],oa[1]+=Ir[1]),or||(e.event.altKey?(lr||(lr=[(N[0]+N[1])/2,(U[0]+U[1])/2]),Dr[0]=N[+(oa[0]{(function(e,t){typeof G1=="object"&&typeof _7!="undefined"?t(G1):(e=e||self,t(e.d3=e.d3||{}))})(G1,function(e){"use strict";var t=new Date,r=new Date;function i(Be,ft,mt,Ar){function dr(Tt){return Be(Tt=arguments.length===0?new Date:new Date(+Tt)),Tt}return dr.floor=function(Tt){return Be(Tt=new Date(+Tt)),Tt},dr.ceil=function(Tt){return Be(Tt=new Date(Tt-1)),ft(Tt,1),Be(Tt),Tt},dr.round=function(Tt){var wt=dr(Tt),Vt=dr.ceil(Tt);return Tt-wt0))return Kt;do Kt.push(Ht=new Date(+Tt)),ft(Tt,Vt),Be(Tt);while(Ht=wt)for(;Be(wt),!Tt(wt);)wt.setTime(wt-1)},function(wt,Vt){if(wt>=wt)if(Vt<0)for(;++Vt<=0;)for(;ft(wt,-1),!Tt(wt););else for(;--Vt>=0;)for(;ft(wt,1),!Tt(wt););})},mt&&(dr.count=function(Tt,wt){return t.setTime(+Tt),r.setTime(+wt),Be(t),Be(r),Math.floor(mt(t,r))},dr.every=function(Tt){return Tt=Math.floor(Tt),!isFinite(Tt)||!(Tt>0)?null:Tt>1?dr.filter(Ar?function(wt){return Ar(wt)%Tt===0}:function(wt){return dr.count(0,wt)%Tt===0}):dr}),dr}var a=i(function(){},function(Be,ft){Be.setTime(+Be+ft)},function(Be,ft){return ft-Be});a.every=function(Be){return Be=Math.floor(Be),!isFinite(Be)||!(Be>0)?null:Be>1?i(function(ft){ft.setTime(Math.floor(ft/Be)*Be)},function(ft,mt){ft.setTime(+ft+mt*Be)},function(ft,mt){return(mt-ft)/Be}):a};var s=a.range,l=1e3,f=6e4,h=36e5,v=864e5,m=6048e5,b=i(function(Be){Be.setTime(Be-Be.getMilliseconds())},function(Be,ft){Be.setTime(+Be+ft*l)},function(Be,ft){return(ft-Be)/l},function(Be){return Be.getUTCSeconds()}),T=b.range,S=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l)},function(Be,ft){Be.setTime(+Be+ft*f)},function(Be,ft){return(ft-Be)/f},function(Be){return Be.getMinutes()}),C=S.range,P=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l-Be.getMinutes()*f)},function(Be,ft){Be.setTime(+Be+ft*h)},function(Be,ft){return(ft-Be)/h},function(Be){return Be.getHours()}),E=P.range,I=i(function(Be){Be.setHours(0,0,0,0)},function(Be,ft){Be.setDate(Be.getDate()+ft)},function(Be,ft){return(ft-Be-(ft.getTimezoneOffset()-Be.getTimezoneOffset())*f)/v},function(Be){return Be.getDate()-1}),q=I.range;function B(Be){return i(function(ft){ft.setDate(ft.getDate()-(ft.getDay()+7-Be)%7),ft.setHours(0,0,0,0)},function(ft,mt){ft.setDate(ft.getDate()+mt*7)},function(ft,mt){return(mt-ft-(mt.getTimezoneOffset()-ft.getTimezoneOffset())*f)/m})}var z=B(0),O=B(1),H=B(2),V=B(3),W=B(4),J=B(5),re=B(6),oe=z.range,ne=O.range,fe=H.range,ve=V.range,Ce=W.range,Se=J.range,Te=re.range,pe=i(function(Be){Be.setDate(1),Be.setHours(0,0,0,0)},function(Be,ft){Be.setMonth(Be.getMonth()+ft)},function(Be,ft){return ft.getMonth()-Be.getMonth()+(ft.getFullYear()-Be.getFullYear())*12},function(Be){return Be.getMonth()}),Ae=pe.range,Me=i(function(Be){Be.setMonth(0,1),Be.setHours(0,0,0,0)},function(Be,ft){Be.setFullYear(Be.getFullYear()+ft)},function(Be,ft){return ft.getFullYear()-Be.getFullYear()},function(Be){return Be.getFullYear()});Me.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(ft){ft.setFullYear(Math.floor(ft.getFullYear()/Be)*Be),ft.setMonth(0,1),ft.setHours(0,0,0,0)},function(ft,mt){ft.setFullYear(ft.getFullYear()+mt*Be)})};var Le=Me.range,Ke=i(function(Be){Be.setUTCSeconds(0,0)},function(Be,ft){Be.setTime(+Be+ft*f)},function(Be,ft){return(ft-Be)/f},function(Be){return Be.getUTCMinutes()}),ht=Ke.range,it=i(function(Be){Be.setUTCMinutes(0,0,0)},function(Be,ft){Be.setTime(+Be+ft*h)},function(Be,ft){return(ft-Be)/h},function(Be){return Be.getUTCHours()}),lt=it.range,He=i(function(Be){Be.setUTCHours(0,0,0,0)},function(Be,ft){Be.setUTCDate(Be.getUTCDate()+ft)},function(Be,ft){return(ft-Be)/v},function(Be){return Be.getUTCDate()-1}),_t=He.range;function at(Be){return i(function(ft){ft.setUTCDate(ft.getUTCDate()-(ft.getUTCDay()+7-Be)%7),ft.setUTCHours(0,0,0,0)},function(ft,mt){ft.setUTCDate(ft.getUTCDate()+mt*7)},function(ft,mt){return(mt-ft)/m})}var At=at(0),kt=at(1),pt=at(2),ge=at(3),Re=at(4),xe=at(5),$e=at(6),vt=At.range,et=kt.range,Nt=pt.range,Mt=ge.range,Ct=Re.range,Rt=xe.range,Ut=$e.range,xt=i(function(Be){Be.setUTCDate(1),Be.setUTCHours(0,0,0,0)},function(Be,ft){Be.setUTCMonth(Be.getUTCMonth()+ft)},function(Be,ft){return ft.getUTCMonth()-Be.getUTCMonth()+(ft.getUTCFullYear()-Be.getUTCFullYear())*12},function(Be){return Be.getUTCMonth()}),Et=xt.range,ir=i(function(Be){Be.setUTCMonth(0,1),Be.setUTCHours(0,0,0,0)},function(Be,ft){Be.setUTCFullYear(Be.getUTCFullYear()+ft)},function(Be,ft){return ft.getUTCFullYear()-Be.getUTCFullYear()},function(Be){return Be.getUTCFullYear()});ir.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(ft){ft.setUTCFullYear(Math.floor(ft.getUTCFullYear()/Be)*Be),ft.setUTCMonth(0,1),ft.setUTCHours(0,0,0,0)},function(ft,mt){ft.setUTCFullYear(ft.getUTCFullYear()+mt*Be)})};var Wt=ir.range;e.timeDay=I,e.timeDays=q,e.timeFriday=J,e.timeFridays=Se,e.timeHour=P,e.timeHours=E,e.timeInterval=i,e.timeMillisecond=a,e.timeMilliseconds=s,e.timeMinute=S,e.timeMinutes=C,e.timeMonday=O,e.timeMondays=ne,e.timeMonth=pe,e.timeMonths=Ae,e.timeSaturday=re,e.timeSaturdays=Te,e.timeSecond=b,e.timeSeconds=T,e.timeSunday=z,e.timeSundays=oe,e.timeThursday=W,e.timeThursdays=Ce,e.timeTuesday=H,e.timeTuesdays=fe,e.timeWednesday=V,e.timeWednesdays=ve,e.timeWeek=z,e.timeWeeks=oe,e.timeYear=Me,e.timeYears=Le,e.utcDay=He,e.utcDays=_t,e.utcFriday=xe,e.utcFridays=Rt,e.utcHour=it,e.utcHours=lt,e.utcMillisecond=a,e.utcMilliseconds=s,e.utcMinute=Ke,e.utcMinutes=ht,e.utcMonday=kt,e.utcMondays=et,e.utcMonth=xt,e.utcMonths=Et,e.utcSaturday=$e,e.utcSaturdays=Ut,e.utcSecond=b,e.utcSeconds=T,e.utcSunday=At,e.utcSundays=vt,e.utcThursday=Re,e.utcThursdays=Ct,e.utcTuesday=pt,e.utcTuesdays=Nt,e.utcWednesday=ge,e.utcWednesdays=Mt,e.utcWeek=At,e.utcWeeks=vt,e.utcYear=ir,e.utcYears=Wt,Object.defineProperty(e,"__esModule",{value:!0})})});var s0=de((Z1,x7)=>{(function(e,t){typeof Z1=="object"&&typeof x7!="undefined"?t(Z1,q3()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(Z1,function(e,t){"use strict";function r(Fe){if(0<=Fe.y&&Fe.y<100){var Ge=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ge.setFullYear(Fe.y),Ge}return new Date(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L)}function i(Fe){if(0<=Fe.y&&Fe.y<100){var Ge=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ge.setUTCFullYear(Fe.y),Ge}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function a(Fe,Ge,bt){return{y:Fe,m:Ge,d:bt,H:0,M:0,S:0,L:0}}function s(Fe){var Ge=Fe.dateTime,bt=Fe.date,dt=Fe.time,gr=Fe.periods,Er=Fe.days,Tr=Fe.shortDays,Hr=Fe.months,_a=Fe.shortMonths,ka=T(gr),Ea=S(gr),Ii=T(Er),Ki=S(Er),yn=T(Tr),Xi=S(Tr),Jn=T(Hr),En=S(Hr),Vi=T(_a),pa=S(_a),Gr={a:Dt,A:Ft,b:tr,B:Yt,c:null,d:pe,e:pe,f:ht,H:Ae,I:Me,j:Le,L:Ke,m:it,M:lt,p:wr,q:Yr,Q:wt,s:Vt,S:He,u:_t,U:at,V:At,w:kt,W:pt,x:null,X:null,y:ge,Y:Re,Z:xe,"%":Tt},Qa={a:Br,A:ca,b:ua,B:Na,c:null,d:$e,e:$e,f:Ct,H:vt,I:et,j:Nt,L:Mt,m:Rt,M:Ut,p:ii,q:Wr,Q:wt,s:Vt,S:xt,u:Et,U:ir,V:Wt,w:Be,W:ft,x:null,X:null,y:mt,Y:Ar,Z:dr,"%":Tt},Zr={a:se,A:ce,b:Ee,B:Ne,c:rt,d:W,e:W,f:ve,H:re,I:re,j:J,L:fe,m:V,M:oe,p:ee,q:H,Q:Se,s:Te,S:ne,u:P,U:E,V:I,w:C,W:q,x:Ve,X:yt,y:z,Y:B,Z:O,"%":Ce};Gr.x=vi(bt,Gr),Gr.X=vi(dt,Gr),Gr.c=vi(Ge,Gr),Qa.x=vi(bt,Qa),Qa.X=vi(dt,Qa),Qa.c=vi(Ge,Qa);function vi(pr,$r){return function(ga){var nr=[],wi=-1,La=0,si=pr.length,fa,Ln,Co;for(ga instanceof Date||(ga=new Date(+ga));++wi53)return null;"w"in nr||(nr.w=1),"Z"in nr?(La=i(a(nr.y,0,1)),si=La.getUTCDay(),La=si>4||si===0?t.utcMonday.ceil(La):t.utcMonday(La),La=t.utcDay.offset(La,(nr.V-1)*7),nr.y=La.getUTCFullYear(),nr.m=La.getUTCMonth(),nr.d=La.getUTCDate()+(nr.w+6)%7):(La=r(a(nr.y,0,1)),si=La.getDay(),La=si>4||si===0?t.timeMonday.ceil(La):t.timeMonday(La),La=t.timeDay.offset(La,(nr.V-1)*7),nr.y=La.getFullYear(),nr.m=La.getMonth(),nr.d=La.getDate()+(nr.w+6)%7)}else("W"in nr||"U"in nr)&&("w"in nr||(nr.w="u"in nr?nr.u%7:"W"in nr?1:0),si="Z"in nr?i(a(nr.y,0,1)).getUTCDay():r(a(nr.y,0,1)).getDay(),nr.m=0,nr.d="W"in nr?(nr.w+6)%7+nr.W*7-(si+5)%7:nr.w+nr.U*7-(si+6)%7);return"Z"in nr?(nr.H+=nr.Z/100|0,nr.M+=nr.Z%100,i(nr)):r(nr)}}function le(pr,$r,ga,nr){for(var wi=0,La=$r.length,si=ga.length,fa,Ln;wi=si)return-1;if(fa=$r.charCodeAt(wi++),fa===37){if(fa=$r.charAt(wi++),Ln=Zr[fa in l?$r.charAt(wi++):fa],!Ln||(nr=Ln(pr,ga,nr))<0)return-1}else if(fa!=ga.charCodeAt(nr++))return-1}return nr}function ee(pr,$r,ga){var nr=ka.exec($r.slice(ga));return nr?(pr.p=Ea[nr[0].toLowerCase()],ga+nr[0].length):-1}function se(pr,$r,ga){var nr=yn.exec($r.slice(ga));return nr?(pr.w=Xi[nr[0].toLowerCase()],ga+nr[0].length):-1}function ce(pr,$r,ga){var nr=Ii.exec($r.slice(ga));return nr?(pr.w=Ki[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ee(pr,$r,ga){var nr=Vi.exec($r.slice(ga));return nr?(pr.m=pa[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ne(pr,$r,ga){var nr=Jn.exec($r.slice(ga));return nr?(pr.m=En[nr[0].toLowerCase()],ga+nr[0].length):-1}function rt(pr,$r,ga){return le(pr,Ge,$r,ga)}function Ve(pr,$r,ga){return le(pr,bt,$r,ga)}function yt(pr,$r,ga){return le(pr,dt,$r,ga)}function Dt(pr){return Tr[pr.getDay()]}function Ft(pr){return Er[pr.getDay()]}function tr(pr){return _a[pr.getMonth()]}function Yt(pr){return Hr[pr.getMonth()]}function wr(pr){return gr[+(pr.getHours()>=12)]}function Yr(pr){return 1+~~(pr.getMonth()/3)}function Br(pr){return Tr[pr.getUTCDay()]}function ca(pr){return Er[pr.getUTCDay()]}function ua(pr){return _a[pr.getUTCMonth()]}function Na(pr){return Hr[pr.getUTCMonth()]}function ii(pr){return gr[+(pr.getUTCHours()>=12)]}function Wr(pr){return 1+~~(pr.getUTCMonth()/3)}return{format:function(pr){var $r=vi(pr+="",Gr);return $r.toString=function(){return pr},$r},parse:function(pr){var $r=ya(pr+="",!1);return $r.toString=function(){return pr},$r},utcFormat:function(pr){var $r=vi(pr+="",Qa);return $r.toString=function(){return pr},$r},utcParse:function(pr){var $r=ya(pr+="",!0);return $r.toString=function(){return pr},$r}}}var l={"-":"",_:" ",0:"0"},f=/^\s*\d+/,h=/^%/,v=/[\\^$*+?|[\]().{}]/g;function m(Fe,Ge,bt){var dt=Fe<0?"-":"",gr=(dt?-Fe:Fe)+"",Er=gr.length;return dt+(Er68?1900:2e3),bt+dt[0].length):-1}function O(Fe,Ge,bt){var dt=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ge.slice(bt,bt+6));return dt?(Fe.Z=dt[1]?0:-(dt[2]+(dt[3]||"00")),bt+dt[0].length):-1}function H(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+1));return dt?(Fe.q=dt[0]*3-3,bt+dt[0].length):-1}function V(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.m=dt[0]-1,bt+dt[0].length):-1}function W(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.d=+dt[0],bt+dt[0].length):-1}function J(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+3));return dt?(Fe.m=0,Fe.d=+dt[0],bt+dt[0].length):-1}function re(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.H=+dt[0],bt+dt[0].length):-1}function oe(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.M=+dt[0],bt+dt[0].length):-1}function ne(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.S=+dt[0],bt+dt[0].length):-1}function fe(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+3));return dt?(Fe.L=+dt[0],bt+dt[0].length):-1}function ve(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+6));return dt?(Fe.L=Math.floor(dt[0]/1e3),bt+dt[0].length):-1}function Ce(Fe,Ge,bt){var dt=h.exec(Ge.slice(bt,bt+1));return dt?bt+dt[0].length:-1}function Se(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt));return dt?(Fe.Q=+dt[0],bt+dt[0].length):-1}function Te(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt));return dt?(Fe.s=+dt[0],bt+dt[0].length):-1}function pe(Fe,Ge){return m(Fe.getDate(),Ge,2)}function Ae(Fe,Ge){return m(Fe.getHours(),Ge,2)}function Me(Fe,Ge){return m(Fe.getHours()%12||12,Ge,2)}function Le(Fe,Ge){return m(1+t.timeDay.count(t.timeYear(Fe),Fe),Ge,3)}function Ke(Fe,Ge){return m(Fe.getMilliseconds(),Ge,3)}function ht(Fe,Ge){return Ke(Fe,Ge)+"000"}function it(Fe,Ge){return m(Fe.getMonth()+1,Ge,2)}function lt(Fe,Ge){return m(Fe.getMinutes(),Ge,2)}function He(Fe,Ge){return m(Fe.getSeconds(),Ge,2)}function _t(Fe){var Ge=Fe.getDay();return Ge===0?7:Ge}function at(Fe,Ge){return m(t.timeSunday.count(t.timeYear(Fe)-1,Fe),Ge,2)}function At(Fe,Ge){var bt=Fe.getDay();return Fe=bt>=4||bt===0?t.timeThursday(Fe):t.timeThursday.ceil(Fe),m(t.timeThursday.count(t.timeYear(Fe),Fe)+(t.timeYear(Fe).getDay()===4),Ge,2)}function kt(Fe){return Fe.getDay()}function pt(Fe,Ge){return m(t.timeMonday.count(t.timeYear(Fe)-1,Fe),Ge,2)}function ge(Fe,Ge){return m(Fe.getFullYear()%100,Ge,2)}function Re(Fe,Ge){return m(Fe.getFullYear()%1e4,Ge,4)}function xe(Fe){var Ge=Fe.getTimezoneOffset();return(Ge>0?"-":(Ge*=-1,"+"))+m(Ge/60|0,"0",2)+m(Ge%60,"0",2)}function $e(Fe,Ge){return m(Fe.getUTCDate(),Ge,2)}function vt(Fe,Ge){return m(Fe.getUTCHours(),Ge,2)}function et(Fe,Ge){return m(Fe.getUTCHours()%12||12,Ge,2)}function Nt(Fe,Ge){return m(1+t.utcDay.count(t.utcYear(Fe),Fe),Ge,3)}function Mt(Fe,Ge){return m(Fe.getUTCMilliseconds(),Ge,3)}function Ct(Fe,Ge){return Mt(Fe,Ge)+"000"}function Rt(Fe,Ge){return m(Fe.getUTCMonth()+1,Ge,2)}function Ut(Fe,Ge){return m(Fe.getUTCMinutes(),Ge,2)}function xt(Fe,Ge){return m(Fe.getUTCSeconds(),Ge,2)}function Et(Fe){var Ge=Fe.getUTCDay();return Ge===0?7:Ge}function ir(Fe,Ge){return m(t.utcSunday.count(t.utcYear(Fe)-1,Fe),Ge,2)}function Wt(Fe,Ge){var bt=Fe.getUTCDay();return Fe=bt>=4||bt===0?t.utcThursday(Fe):t.utcThursday.ceil(Fe),m(t.utcThursday.count(t.utcYear(Fe),Fe)+(t.utcYear(Fe).getUTCDay()===4),Ge,2)}function Be(Fe){return Fe.getUTCDay()}function ft(Fe,Ge){return m(t.utcMonday.count(t.utcYear(Fe)-1,Fe),Ge,2)}function mt(Fe,Ge){return m(Fe.getUTCFullYear()%100,Ge,2)}function Ar(Fe,Ge){return m(Fe.getUTCFullYear()%1e4,Ge,4)}function dr(){return"+0000"}function Tt(){return"%"}function wt(Fe){return+Fe}function Vt(Fe){return Math.floor(+Fe/1e3)}var Kt;Ht({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ht(Fe){return Kt=s(Fe),e.timeFormat=Kt.format,e.timeParse=Kt.parse,e.utcFormat=Kt.utcFormat,e.utcParse=Kt.utcParse,Kt}var Ot="%Y-%m-%dT%H:%M:%S.%LZ";function er(Fe){return Fe.toISOString()}var Mr=Date.prototype.toISOString?er:e.utcFormat(Ot);function xr(Fe){var Ge=new Date(Fe);return isNaN(Ge)?null:Ge}var Pt=+new Date("2000-01-01T00:00:00.000Z")?xr:e.utcParse(Ot);e.isoFormat=Mr,e.isoParse=Pt,e.timeFormatDefaultLocale=Ht,e.timeFormatLocale=s,Object.defineProperty(e,"__esModule",{value:!0})})});var N3=de((Y1,b7)=>{(function(e,t){typeof Y1=="object"&&typeof b7!="undefined"?t(Y1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(Y1,function(e){"use strict";function t(V){return Math.abs(V=Math.round(V))>=1e21?V.toLocaleString("en").replace(/,/g,""):V.toString(10)}function r(V,W){if((J=(V=W?V.toExponential(W-1):V.toExponential()).indexOf("e"))<0)return null;var J,re=V.slice(0,J);return[re.length>1?re[0]+re.slice(2):re,+V.slice(J+1)]}function i(V){return V=r(Math.abs(V)),V?V[1]:NaN}function a(V,W){return function(J,re){for(var oe=J.length,ne=[],fe=0,ve=V[0],Ce=0;oe>0&&ve>0&&(Ce+ve+1>re&&(ve=Math.max(1,re-Ce)),ne.push(J.substring(oe-=ve,oe+ve)),!((Ce+=ve+1)>re));)ve=V[fe=(fe+1)%V.length];return ne.reverse().join(W)}}function s(V){return function(W){return W.replace(/[0-9]/g,function(J){return V[+J]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function f(V){if(!(W=l.exec(V)))throw new Error("invalid format: "+V);var W;return new h({fill:W[1],align:W[2],sign:W[3],symbol:W[4],zero:W[5],width:W[6],comma:W[7],precision:W[8]&&W[8].slice(1),trim:W[9],type:W[10]})}f.prototype=h.prototype;function h(V){this.fill=V.fill===void 0?" ":V.fill+"",this.align=V.align===void 0?">":V.align+"",this.sign=V.sign===void 0?"-":V.sign+"",this.symbol=V.symbol===void 0?"":V.symbol+"",this.zero=!!V.zero,this.width=V.width===void 0?void 0:+V.width,this.comma=!!V.comma,this.precision=V.precision===void 0?void 0:+V.precision,this.trim=!!V.trim,this.type=V.type===void 0?"":V.type+""}h.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function v(V){e:for(var W=V.length,J=1,re=-1,oe;J0&&(re=0);break}return re>0?V.slice(0,re)+V.slice(oe+1):V}var m;function b(V,W){var J=r(V,W);if(!J)return V+"";var re=J[0],oe=J[1],ne=oe-(m=Math.max(-8,Math.min(8,Math.floor(oe/3)))*3)+1,fe=re.length;return ne===fe?re:ne>fe?re+new Array(ne-fe+1).join("0"):ne>0?re.slice(0,ne)+"."+re.slice(ne):"0."+new Array(1-ne).join("0")+r(V,Math.max(0,W+ne-1))[0]}function T(V,W){var J=r(V,W);if(!J)return V+"";var re=J[0],oe=J[1];return oe<0?"0."+new Array(-oe).join("0")+re:re.length>oe+1?re.slice(0,oe+1)+"."+re.slice(oe+1):re+new Array(oe-re.length+2).join("0")}var S={"%":function(V,W){return(V*100).toFixed(W)},b:function(V){return Math.round(V).toString(2)},c:function(V){return V+""},d:t,e:function(V,W){return V.toExponential(W)},f:function(V,W){return V.toFixed(W)},g:function(V,W){return V.toPrecision(W)},o:function(V){return Math.round(V).toString(8)},p:function(V,W){return T(V*100,W)},r:T,s:b,X:function(V){return Math.round(V).toString(16).toUpperCase()},x:function(V){return Math.round(V).toString(16)}};function C(V){return V}var P=Array.prototype.map,E=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function I(V){var W=V.grouping===void 0||V.thousands===void 0?C:a(P.call(V.grouping,Number),V.thousands+""),J=V.currency===void 0?"":V.currency[0]+"",re=V.currency===void 0?"":V.currency[1]+"",oe=V.decimal===void 0?".":V.decimal+"",ne=V.numerals===void 0?C:s(P.call(V.numerals,String)),fe=V.percent===void 0?"%":V.percent+"",ve=V.minus===void 0?"-":V.minus+"",Ce=V.nan===void 0?"NaN":V.nan+"";function Se(pe){pe=f(pe);var Ae=pe.fill,Me=pe.align,Le=pe.sign,Ke=pe.symbol,ht=pe.zero,it=pe.width,lt=pe.comma,He=pe.precision,_t=pe.trim,at=pe.type;at==="n"?(lt=!0,at="g"):S[at]||(He===void 0&&(He=12),_t=!0,at="g"),(ht||Ae==="0"&&Me==="=")&&(ht=!0,Ae="0",Me="=");var At=Ke==="$"?J:Ke==="#"&&/[boxX]/.test(at)?"0"+at.toLowerCase():"",kt=Ke==="$"?re:/[%p]/.test(at)?fe:"",pt=S[at],ge=/[defgprs%]/.test(at);He=He===void 0?6:/[gprs]/.test(at)?Math.max(1,Math.min(21,He)):Math.max(0,Math.min(20,He));function Re(xe){var $e=At,vt=kt,et,Nt,Mt;if(at==="c")vt=pt(xe)+vt,xe="";else{xe=+xe;var Ct=xe<0||1/xe<0;if(xe=isNaN(xe)?Ce:pt(Math.abs(xe),He),_t&&(xe=v(xe)),Ct&&+xe==0&&Le!=="+"&&(Ct=!1),$e=(Ct?Le==="("?Le:ve:Le==="-"||Le==="("?"":Le)+$e,vt=(at==="s"?E[8+m/3]:"")+vt+(Ct&&Le==="("?")":""),ge){for(et=-1,Nt=xe.length;++etMt||Mt>57){vt=(Mt===46?oe+xe.slice(et+1):xe.slice(et))+vt,xe=xe.slice(0,et);break}}}lt&&!ht&&(xe=W(xe,1/0));var Rt=$e.length+xe.length+vt.length,Ut=Rt>1)+$e+xe+vt+Ut.slice(Rt);break;default:xe=Ut+$e+xe+vt;break}return ne(xe)}return Re.toString=function(){return pe+""},Re}function Te(pe,Ae){var Me=Se((pe=f(pe),pe.type="f",pe)),Le=Math.max(-8,Math.min(8,Math.floor(i(Ae)/3)))*3,Ke=Math.pow(10,-Le),ht=E[8+Le/3];return function(it){return Me(Ke*it)+ht}}return{format:Se,formatPrefix:Te}}var q;B({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function B(V){return q=I(V),e.format=q.format,e.formatPrefix=q.formatPrefix,q}function z(V){return Math.max(0,-i(Math.abs(V)))}function O(V,W){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(i(W)/3)))*3-i(Math.abs(V)))}function H(V,W){return V=Math.abs(V),W=Math.abs(W)-V,Math.max(0,i(W)-i(V))+1}e.FormatSpecifier=h,e.formatDefaultLocale=B,e.formatLocale=I,e.formatSpecifier=f,e.precisionFixed=z,e.precisionPrefix=O,e.precisionRound=H,Object.defineProperty(e,"__esModule",{value:!0})})});var T7=de((Ame,w7)=>{"use strict";w7.exports=function(e){for(var t=e.length,r,i=0;i13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var Da=de((Mme,A7)=>{"use strict";var aj=T7();A7.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&aj(r))return!1}else if(t!=="number")return!1;return e-e<1}});var Hi=de((Sme,M7)=>{"use strict";M7.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var B3=de((W1,S7)=>{(function(e,t){typeof W1=="object"&&typeof S7!="undefined"?t(W1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(W1,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),i=0;i>2],m+=t[(f[h]&3)<<4|f[h+1]>>4],m+=t[(f[h+1]&15)<<2|f[h+2]>>6],m+=t[f[h+2]&63];return v%3===2?m=m.substring(0,m.length-1)+"=":v%3===1&&(m=m.substring(0,m.length-2)+"=="),m},s=function(l){var f=l.length*.75,h=l.length,v,m=0,b,T,S,C;l[l.length-1]==="="&&(f--,l[l.length-2]==="="&&f--);var P=new ArrayBuffer(f),E=new Uint8Array(P);for(v=0;v>4,E[m++]=(T&15)<<4|S>>2,E[m++]=(S&3)<<6|C&63;return P};e.decode=s,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var cc=de((kme,k7)=>{"use strict";k7.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var il=de(Pu=>{"use strict";var ij=B3().decode,nj=cc(),O3=Array.isArray,oj=ArrayBuffer,sj=DataView;function C7(e){return oj.isView(e)&&!(e instanceof sj)}Pu.isTypedArray=C7;function X1(e){return O3(e)||C7(e)}Pu.isArrayOrTypedArray=X1;function lj(e){return!X1(e[0])}Pu.isArray1D=lj;Pu.ensureArray=function(e,t){return O3(e)||(e=[]),e.length=t,e};var fo={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};fo.uint8c=fo.u1c;fo.uint8=fo.u1;fo.int8=fo.i1;fo.uint16=fo.u2;fo.int16=fo.i2;fo.uint32=fo.u4;fo.int32=fo.i4;fo.float32=fo.f4;fo.float64=fo.f8;function U3(e){return e.constructor===ArrayBuffer}Pu.isArrayBuffer=U3;Pu.decodeTypedArraySpec=function(e){var t=[],r=uj(e),i=r.dtype,a=fo[i];if(!a)throw new Error('Error in dtype: "'+i+'"');var s=a.BYTES_PER_ELEMENT,l=r.bdata;U3(l)||(l=ij(l));var f=r.shape===void 0?[l.byteLength/s]:(""+r.shape).split(",");f.reverse();var h=f.length,v,m,b=+f[0],T=s*b,S=0;if(h===1)t=new a(l);else if(h===2)for(v=+f[1],m=0;m{"use strict";var L7=Da(),H3=il().isArrayOrTypedArray;I7.exports=function(t,r){if(L7(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var i=r.split("."),a,s,l,f;for(f=0;f{"use strict";var l0=wy(),dj=/^\w*$/,pj=0,R7=1,j1=2,F7=3,$v=4;q7.exports=function(t,r,i,a){i=i||"name",a=a||"value";var s,l,f,h={};r&&r.length?(f=l0(t,r),l=f.get()):l=t,r=r||"";var v={};if(l)for(s=0;s2)return h[S]=h[S]|j1,b.set(T,null);if(m){for(s=S;s{"use strict";var mj=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,yj=/^[^\.\[\]]+$/;B7.exports=function(e,t){for(;t;){var r=e.match(mj);if(r)e=r[1];else if(e.match(yj))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var J1=de((Dme,U7)=>{"use strict";var gj=Da();U7.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var i=Math.log(Math.min(r[0],r[1]))/Math.LN10;return gj(i)||(i=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),i}});var G7=de((zme,H7)=>{"use strict";var V7=il().isArrayOrTypedArray,Ty=cc();H7.exports=function e(t,r){for(var i in r){var a=r[i],s=t[i];if(s!==a)if(i.charAt(0)==="_"||typeof a=="function"){if(i in t)continue;t[i]=a}else if(V7(a)&&V7(s)&&Ty(a[0])){if(i==="customdata"||i==="ids")continue;for(var l=Math.min(a.length,s.length),f=0;f{"use strict";function _j(e,t){var r=e%t;return r<0?r+t:r}function xj(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Z7.exports={mod:_j,modHalf:xj}});var Tf=de((Rme,K1)=>{(function(e){var t=/^\s+/,r=/\s+$/,i=0,a=e.round,s=e.min,l=e.max,f=e.random;function h(ge,Re){if(ge=ge||"",Re=Re||{},ge instanceof h)return ge;if(!(this instanceof h))return new h(ge,Re);var xe=v(ge);this._originalInput=ge,this._r=xe.r,this._g=xe.g,this._b=xe.b,this._a=xe.a,this._roundA=a(100*this._a)/100,this._format=Re.format||xe.format,this._gradientType=Re.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=xe.ok,this._tc_id=i++}h.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var ge=this.toRgb();return(ge.r*299+ge.g*587+ge.b*114)/1e3},getLuminance:function(){var ge=this.toRgb(),Re,xe,$e,vt,et,Nt;return Re=ge.r/255,xe=ge.g/255,$e=ge.b/255,Re<=.03928?vt=Re/12.92:vt=e.pow((Re+.055)/1.055,2.4),xe<=.03928?et=xe/12.92:et=e.pow((xe+.055)/1.055,2.4),$e<=.03928?Nt=$e/12.92:Nt=e.pow(($e+.055)/1.055,2.4),.2126*vt+.7152*et+.0722*Nt},setAlpha:function(ge){return this._a=pe(ge),this._roundA=a(100*this._a)/100,this},toHsv:function(){var ge=S(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,v:ge.v,a:this._a}},toHsvString:function(){var ge=S(this._r,this._g,this._b),Re=a(ge.h*360),xe=a(ge.s*100),$e=a(ge.v*100);return this._a==1?"hsv("+Re+", "+xe+"%, "+$e+"%)":"hsva("+Re+", "+xe+"%, "+$e+"%, "+this._roundA+")"},toHsl:function(){var ge=b(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,l:ge.l,a:this._a}},toHslString:function(){var ge=b(this._r,this._g,this._b),Re=a(ge.h*360),xe=a(ge.s*100),$e=a(ge.l*100);return this._a==1?"hsl("+Re+", "+xe+"%, "+$e+"%)":"hsla("+Re+", "+xe+"%, "+$e+"%, "+this._roundA+")"},toHex:function(ge){return P(this._r,this._g,this._b,ge)},toHexString:function(ge){return"#"+this.toHex(ge)},toHex8:function(ge){return E(this._r,this._g,this._b,this._a,ge)},toHex8String:function(ge){return"#"+this.toHex8(ge)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(Ae(this._r,255)*100)+"%",g:a(Ae(this._g,255)*100)+"%",b:a(Ae(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(Ae(this._r,255)*100)+"%, "+a(Ae(this._g,255)*100)+"%, "+a(Ae(this._b,255)*100)+"%)":"rgba("+a(Ae(this._r,255)*100)+"%, "+a(Ae(this._g,255)*100)+"%, "+a(Ae(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Se[P(this._r,this._g,this._b,!0)]||!1},toFilter:function(ge){var Re="#"+I(this._r,this._g,this._b,this._a),xe=Re,$e=this._gradientType?"GradientType = 1, ":"";if(ge){var vt=h(ge);xe="#"+I(vt._r,vt._g,vt._b,vt._a)}return"progid:DXImageTransform.Microsoft.gradient("+$e+"startColorstr="+Re+",endColorstr="+xe+")"},toString:function(ge){var Re=!!ge;ge=ge||this._format;var xe=!1,$e=this._a<1&&this._a>=0,vt=!Re&&$e&&(ge==="hex"||ge==="hex6"||ge==="hex3"||ge==="hex4"||ge==="hex8"||ge==="name");return vt?ge==="name"&&this._a===0?this.toName():this.toRgbString():(ge==="rgb"&&(xe=this.toRgbString()),ge==="prgb"&&(xe=this.toPercentageRgbString()),(ge==="hex"||ge==="hex6")&&(xe=this.toHexString()),ge==="hex3"&&(xe=this.toHexString(!0)),ge==="hex4"&&(xe=this.toHex8String(!0)),ge==="hex8"&&(xe=this.toHex8String()),ge==="name"&&(xe=this.toName()),ge==="hsl"&&(xe=this.toHslString()),ge==="hsv"&&(xe=this.toHsvString()),xe||this.toHexString())},clone:function(){return h(this.toString())},_applyModification:function(ge,Re){var xe=ge.apply(null,[this].concat([].slice.call(Re)));return this._r=xe._r,this._g=xe._g,this._b=xe._b,this.setAlpha(xe._a),this},lighten:function(){return this._applyModification(O,arguments)},brighten:function(){return this._applyModification(H,arguments)},darken:function(){return this._applyModification(V,arguments)},desaturate:function(){return this._applyModification(q,arguments)},saturate:function(){return this._applyModification(B,arguments)},greyscale:function(){return this._applyModification(z,arguments)},spin:function(){return this._applyModification(W,arguments)},_applyCombination:function(ge,Re){return ge.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(fe,arguments)},complement:function(){return this._applyCombination(J,arguments)},monochromatic:function(){return this._applyCombination(ve,arguments)},splitcomplement:function(){return this._applyCombination(ne,arguments)},triad:function(){return this._applyCombination(re,arguments)},tetrad:function(){return this._applyCombination(oe,arguments)}},h.fromRatio=function(ge,Re){if(typeof ge=="object"){var xe={};for(var $e in ge)ge.hasOwnProperty($e)&&($e==="a"?xe[$e]=ge[$e]:xe[$e]=lt(ge[$e]));ge=xe}return h(ge,Re)};function v(ge){var Re={r:0,g:0,b:0},xe=1,$e=null,vt=null,et=null,Nt=!1,Mt=!1;return typeof ge=="string"&&(ge=kt(ge)),typeof ge=="object"&&(At(ge.r)&&At(ge.g)&&At(ge.b)?(Re=m(ge.r,ge.g,ge.b),Nt=!0,Mt=String(ge.r).substr(-1)==="%"?"prgb":"rgb"):At(ge.h)&&At(ge.s)&&At(ge.v)?($e=lt(ge.s),vt=lt(ge.v),Re=C(ge.h,$e,vt),Nt=!0,Mt="hsv"):At(ge.h)&&At(ge.s)&&At(ge.l)&&($e=lt(ge.s),et=lt(ge.l),Re=T(ge.h,$e,et),Nt=!0,Mt="hsl"),ge.hasOwnProperty("a")&&(xe=ge.a)),xe=pe(xe),{ok:Nt,format:ge.format||Mt,r:s(255,l(Re.r,0)),g:s(255,l(Re.g,0)),b:s(255,l(Re.b,0)),a:xe}}function m(ge,Re,xe){return{r:Ae(ge,255)*255,g:Ae(Re,255)*255,b:Ae(xe,255)*255}}function b(ge,Re,xe){ge=Ae(ge,255),Re=Ae(Re,255),xe=Ae(xe,255);var $e=l(ge,Re,xe),vt=s(ge,Re,xe),et,Nt,Mt=($e+vt)/2;if($e==vt)et=Nt=0;else{var Ct=$e-vt;switch(Nt=Mt>.5?Ct/(2-$e-vt):Ct/($e+vt),$e){case ge:et=(Re-xe)/Ct+(Re1&&(xt-=1),xt<1/6?Rt+(Ut-Rt)*6*xt:xt<1/2?Ut:xt<2/3?Rt+(Ut-Rt)*(2/3-xt)*6:Rt}if(Re===0)$e=vt=et=xe;else{var Mt=xe<.5?xe*(1+Re):xe+Re-xe*Re,Ct=2*xe-Mt;$e=Nt(Ct,Mt,ge+1/3),vt=Nt(Ct,Mt,ge),et=Nt(Ct,Mt,ge-1/3)}return{r:$e*255,g:vt*255,b:et*255}}function S(ge,Re,xe){ge=Ae(ge,255),Re=Ae(Re,255),xe=Ae(xe,255);var $e=l(ge,Re,xe),vt=s(ge,Re,xe),et,Nt,Mt=$e,Ct=$e-vt;if(Nt=$e===0?0:Ct/$e,$e==vt)et=0;else{switch($e){case ge:et=(Re-xe)/Ct+(Re>1)+720)%360;--Re;)$e.h=($e.h+vt)%360,et.push(h($e));return et}function ve(ge,Re){Re=Re||6;for(var xe=h(ge).toHsv(),$e=xe.h,vt=xe.s,et=xe.v,Nt=[],Mt=1/Re;Re--;)Nt.push(h({h:$e,s:vt,v:et})),et=(et+Mt)%1;return Nt}h.mix=function(ge,Re,xe){xe=xe===0?0:xe||50;var $e=h(ge).toRgb(),vt=h(Re).toRgb(),et=xe/100,Nt={r:(vt.r-$e.r)*et+$e.r,g:(vt.g-$e.g)*et+$e.g,b:(vt.b-$e.b)*et+$e.b,a:(vt.a-$e.a)*et+$e.a};return h(Nt)},h.readability=function(ge,Re){var xe=h(ge),$e=h(Re);return(e.max(xe.getLuminance(),$e.getLuminance())+.05)/(e.min(xe.getLuminance(),$e.getLuminance())+.05)},h.isReadable=function(ge,Re,xe){var $e=h.readability(ge,Re),vt,et;switch(et=!1,vt=pt(xe),vt.level+vt.size){case"AAsmall":case"AAAlarge":et=$e>=4.5;break;case"AAlarge":et=$e>=3;break;case"AAAsmall":et=$e>=7;break}return et},h.mostReadable=function(ge,Re,xe){var $e=null,vt=0,et,Nt,Mt,Ct;xe=xe||{},Nt=xe.includeFallbackColors,Mt=xe.level,Ct=xe.size;for(var Rt=0;Rtvt&&(vt=et,$e=h(Re[Rt]));return h.isReadable(ge,$e,{level:Mt,size:Ct})||!Nt?$e:(xe.includeFallbackColors=!1,h.mostReadable(ge,["#fff","#000"],xe))};var Ce=h.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Se=h.hexNames=Te(Ce);function Te(ge){var Re={};for(var xe in ge)ge.hasOwnProperty(xe)&&(Re[ge[xe]]=xe);return Re}function pe(ge){return ge=parseFloat(ge),(isNaN(ge)||ge<0||ge>1)&&(ge=1),ge}function Ae(ge,Re){Ke(ge)&&(ge="100%");var xe=ht(ge);return ge=s(Re,l(0,parseFloat(ge))),xe&&(ge=parseInt(ge*Re,10)/100),e.abs(ge-Re)<1e-6?1:ge%Re/parseFloat(Re)}function Me(ge){return s(1,l(0,ge))}function Le(ge){return parseInt(ge,16)}function Ke(ge){return typeof ge=="string"&&ge.indexOf(".")!=-1&&parseFloat(ge)===1}function ht(ge){return typeof ge=="string"&&ge.indexOf("%")!=-1}function it(ge){return ge.length==1?"0"+ge:""+ge}function lt(ge){return ge<=1&&(ge=ge*100+"%"),ge}function He(ge){return e.round(parseFloat(ge)*255).toString(16)}function _t(ge){return Le(ge)/255}var at=function(){var ge="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",xe="(?:"+Re+")|(?:"+ge+")",$e="[\\s|\\(]+("+xe+")[,|\\s]+("+xe+")[,|\\s]+("+xe+")\\s*\\)?",vt="[\\s|\\(]+("+xe+")[,|\\s]+("+xe+")[,|\\s]+("+xe+")[,|\\s]+("+xe+")\\s*\\)?";return{CSS_UNIT:new RegExp(xe),rgb:new RegExp("rgb"+$e),rgba:new RegExp("rgba"+vt),hsl:new RegExp("hsl"+$e),hsla:new RegExp("hsla"+vt),hsv:new RegExp("hsv"+$e),hsva:new RegExp("hsva"+vt),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function At(ge){return!!at.CSS_UNIT.exec(ge)}function kt(ge){ge=ge.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(Ce[ge])ge=Ce[ge],Re=!0;else if(ge=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var xe;return(xe=at.rgb.exec(ge))?{r:xe[1],g:xe[2],b:xe[3]}:(xe=at.rgba.exec(ge))?{r:xe[1],g:xe[2],b:xe[3],a:xe[4]}:(xe=at.hsl.exec(ge))?{h:xe[1],s:xe[2],l:xe[3]}:(xe=at.hsla.exec(ge))?{h:xe[1],s:xe[2],l:xe[3],a:xe[4]}:(xe=at.hsv.exec(ge))?{h:xe[1],s:xe[2],v:xe[3]}:(xe=at.hsva.exec(ge))?{h:xe[1],s:xe[2],v:xe[3],a:xe[4]}:(xe=at.hex8.exec(ge))?{r:Le(xe[1]),g:Le(xe[2]),b:Le(xe[3]),a:_t(xe[4]),format:Re?"name":"hex8"}:(xe=at.hex6.exec(ge))?{r:Le(xe[1]),g:Le(xe[2]),b:Le(xe[3]),format:Re?"name":"hex"}:(xe=at.hex4.exec(ge))?{r:Le(xe[1]+""+xe[1]),g:Le(xe[2]+""+xe[2]),b:Le(xe[3]+""+xe[3]),a:_t(xe[4]+""+xe[4]),format:Re?"name":"hex8"}:(xe=at.hex3.exec(ge))?{r:Le(xe[1]+""+xe[1]),g:Le(xe[2]+""+xe[2]),b:Le(xe[3]+""+xe[3]),format:Re?"name":"hex"}:!1}function pt(ge){var Re,xe;return ge=ge||{level:"AA",size:"small"},Re=(ge.level||"AA").toUpperCase(),xe=(ge.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),xe!=="small"&&xe!=="large"&&(xe="small"),{level:Re,size:xe}}typeof K1!="undefined"&&K1.exports?K1.exports=h:window.tinycolor=h})(Math)});var hn=de(Sy=>{"use strict";var Y7=cc(),Ay=Array.isArray;function bj(e,t){var r,i;for(r=0;r{"use strict";W7.exports=function(e){var t=e.variantValues,r=e.editType,i=e.colorEditType;i===void 0&&(i=r);var a={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(a.valType="enumerated",a.values=a.extras,a.extras=void 0,a.min=void 0,a.max=void 0);var s={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:i},weight:a,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(s.size.dflt="auto"),e.autoColor&&(s.color.dflt="auto"),e.arrayOk&&(s.family.arrayOk=!0,s.weight.arrayOk=!0,s.style.arrayOk=!0,e.noFontVariant||(s.variant.arrayOk=!0),e.noFontTextcase||(s.textcase.arrayOk=!0),e.noFontLineposition||(s.lineposition.arrayOk=!0),e.noFontShadow||(s.shadow.arrayOk=!0),s.size.arrayOk=!0,s.color.arrayOk=!0),s}});var ky=de((Nme,X7)=>{"use strict";X7.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var f0=de((Bme,K7)=>{"use strict";var j7=ky(),J7=qo(),G3=J7({editType:"none"});G3.family.dflt=j7.HOVERFONT;G3.size.dflt=j7.HOVERFONTSIZE;K7.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:G3,grouptitlefont:J7({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var e_=de((Ome,Q7)=>{"use strict";var wj=qo(),Q1=f0().hoverlabel,$1=hn().extendFlat;Q7.exports={hoverlabel:{bgcolor:$1({},Q1.bgcolor,{arrayOk:!0}),bordercolor:$1({},Q1.bordercolor,{arrayOk:!0}),font:wj({arrayOk:!0,editType:"none"}),align:$1({},Q1.align,{arrayOk:!0}),namelength:$1({},Q1.namelength,{arrayOk:!0}),editType:"none"}}});var ms=de((Ume,$7)=>{"use strict";var Tj=qo(),Aj=e_();$7.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:Tj({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:Aj.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var ed=de((Vme,r8)=>{"use strict";var Mj=Tf(),t_={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},e8=t_.RdBu;function Sj(e,t){if(t||(t=e8),!e)return t;function r(){try{e=t_[e]||JSON.parse(e)}catch(i){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),t8(e)?e:t}function t8(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r{"use strict";td.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];td.defaultLine="#444";td.lightLine="#eee";td.background="#fff";td.borderLine="#BEC8D9";td.lightFraction=100*10/11});var Ua=de((Gme,a8)=>{"use strict";var Rs=Tf(),Cj=Da(),Ej=il().isTypedArray,$n=a8.exports={},r_=Af();$n.defaults=r_.defaults;var Lj=$n.defaultLine=r_.defaultLine;$n.lightLine=r_.lightLine;var Y3=$n.background=r_.background;$n.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};$n.rgb=function(e){return $n.tinyRGB(Rs(e))};$n.opacity=function(e){return e?Rs(e).getAlpha():0};$n.addOpacity=function(e,t){var r=Rs(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};$n.combine=function(e,t){var r=Rs(e).toRgb();if(r.a===1)return Rs(e).toRgbString();var i=Rs(t||Y3).toRgb(),a=i.a===1?i:{r:255*(1-i.a)+i.r*i.a,g:255*(1-i.a)+i.g*i.a,b:255*(1-i.a)+i.b*i.a},s={r:a.r*(1-r.a)+r.r*r.a,g:a.g*(1-r.a)+r.g*r.a,b:a.b*(1-r.a)+r.b*r.a};return Rs(s).toRgbString()};$n.interpolate=function(e,t,r){var i=Rs(e).toRgb(),a=Rs(t).toRgb(),s={r:r*i.r+(1-r)*a.r,g:r*i.g+(1-r)*a.g,b:r*i.b+(1-r)*a.b};return Rs(s).toRgbString()};$n.contrast=function(e,t,r){var i=Rs(e);i.getAlpha()!==1&&(i=Rs($n.combine(e,Y3)));var a=i.isDark()?t?i.lighten(t):Y3:r?i.darken(r):Lj;return a.toString()};$n.stroke=function(e,t){var r=Rs(t);e.style({stroke:$n.tinyRGB(r),"stroke-opacity":r.getAlpha()})};$n.fill=function(e,t){var r=Rs(t);e.style({fill:$n.tinyRGB(r),"fill-opacity":r.getAlpha()})};$n.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,i,a,s;for(r=0;r=0)))return e;if(s===3)i[s]>1&&(i[s]=1);else if(i[s]>=1)return e}var l=Math.round(i[0]*255)+", "+Math.round(i[1]*255)+", "+Math.round(i[2]*255);return a?"rgba("+l+", "+i[3]+")":"rgb("+l+")"}});var a_=de((Zme,i8)=>{"use strict";i8.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var c0=de(n8=>{"use strict";n8.counter=function(e,t,r,i){var a=(t||"")+(r?"":"$"),s=i===!1?"":"^";return e==="xy"?new RegExp(s+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+a):new RegExp(s+e+"([2-9]|[1-9][0-9]+)?"+a)}});var u8=de(Fs=>{"use strict";var W3=Da(),o8=Tf(),s8=hn().extendFlat,Pj=ms(),Dj=ed(),zj=Ua(),Ij=a_().DESELECTDIM,h0=wy(),l8=c0().counter,Rj=u0().modHalf,Mf=il().isArrayOrTypedArray,bh=il().isTypedArraySpec,wh=il().decodeTypedArraySpec;Fs.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(Mf(e)?e:bh(e)?wh(e):r)}},enumerated:{coerceFunction:function(e,t,r,i){i.coerceNumber&&(e=+e),i.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,i=0;ii.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,i){if((i.extras||[]).indexOf(e)!==-1){t.set(e);return}bh(e)&&(e=wh(e)),e%1||!W3(e)||i.min!==void 0&&ei.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,i){if(typeof e!="string"){var a=typeof e=="number";i.strict===!0||!a?t.set(r):t.set(String(e))}else i.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){bh(e)&&(e=wh(e)),o8(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function i(a){return o8(a).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(i)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(Dj.get(e,r))}},angle:{coerceFunction:function(e,t,r){bh(e)&&(e=wh(e)),e==="auto"?t.set("auto"):W3(e)?t.set(Rj(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,i){var a=i.regex||l8(r);if(typeof e=="string"&&a.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!l8(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,i){if((i.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var a=e.split("+"),s=0;s{"use strict";var f8={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},c8={};function h8(e,t){for(var r in e){var i=e[r];i.valType?t[r]=i.dflt:(t[r]||(t[r]={}),h8(i,t[r]))}}h8(f8,c8);v8.exports={configAttributes:f8,dfltConfig:c8}});var j3=de((jme,d8)=>{"use strict";var X3=ja(),Fj=Da(),Cy=[];d8.exports=function(e,t){if(Cy.indexOf(e)!==-1)return;Cy.push(e);var r=1e3;Fj(t)?r=t:t==="long"&&(r=3e3);var i=X3.select("body").selectAll(".plotly-notifier").data([0]);i.enter().append("div").classed("plotly-notifier",!0);var a=i.selectAll(".notifier-note").data(Cy);function s(l){l.duration(700).style("opacity",0).each("end",function(f){var h=Cy.indexOf(f);h!==-1&&Cy.splice(h,1),X3.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var f=X3.select(this);f.append("button").classed("notifier-close",!0).html("×").on("click",function(){f.transition().call(s)});for(var h=f.append("p"),v=l.split(//g),m=0;m{"use strict";var v0=rd().dfltConfig,J3=j3(),K3=p8.exports={};K3.log=function(){var e;if(v0.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};K3.warn=function(){var e;if(v0.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};K3.error=function(){var e;if(v0.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var n_=de((Kme,m8)=>{"use strict";m8.exports=function(){}});var Q3=de((Qme,y8)=>{"use strict";y8.exports=function(t,r){if(r instanceof RegExp){for(var i=r.toString(),a=0;a{g8.exports=qj;function qj(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var b8=de((eye,x8)=>{x8.exports=Nj;function Nj(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var T8=de((tye,w8)=>{w8.exports=Bj;function Bj(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var $3=de((rye,A8)=>{A8.exports=Oj;function Oj(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var S8=de((aye,M8)=>{M8.exports=Uj;function Uj(e,t){if(e===t){var r=t[1],i=t[2],a=t[3],s=t[6],l=t[7],f=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=i,e[9]=s,e[11]=t[14],e[12]=a,e[13]=l,e[14]=f}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var C8=de((iye,k8)=>{k8.exports=Vj;function Vj(e,t){var r=t[0],i=t[1],a=t[2],s=t[3],l=t[4],f=t[5],h=t[6],v=t[7],m=t[8],b=t[9],T=t[10],S=t[11],C=t[12],P=t[13],E=t[14],I=t[15],q=r*f-i*l,B=r*h-a*l,z=r*v-s*l,O=i*h-a*f,H=i*v-s*f,V=a*v-s*h,W=m*P-b*C,J=m*E-T*C,re=m*I-S*C,oe=b*E-T*P,ne=b*I-S*P,fe=T*I-S*E,ve=q*fe-B*ne+z*oe+O*re-H*J+V*W;return ve?(ve=1/ve,e[0]=(f*fe-h*ne+v*oe)*ve,e[1]=(a*ne-i*fe-s*oe)*ve,e[2]=(P*V-E*H+I*O)*ve,e[3]=(T*H-b*V-S*O)*ve,e[4]=(h*re-l*fe-v*J)*ve,e[5]=(r*fe-a*re+s*J)*ve,e[6]=(E*z-C*V-I*B)*ve,e[7]=(m*V-T*z+S*B)*ve,e[8]=(l*ne-f*re+v*W)*ve,e[9]=(i*re-r*ne-s*W)*ve,e[10]=(C*H-P*z+I*q)*ve,e[11]=(b*z-m*H-S*q)*ve,e[12]=(f*J-l*oe-h*W)*ve,e[13]=(r*oe-i*J+a*W)*ve,e[14]=(P*B-C*O-E*q)*ve,e[15]=(m*O-b*B+T*q)*ve,e):null}});var L8=de((nye,E8)=>{E8.exports=Hj;function Hj(e,t){var r=t[0],i=t[1],a=t[2],s=t[3],l=t[4],f=t[5],h=t[6],v=t[7],m=t[8],b=t[9],T=t[10],S=t[11],C=t[12],P=t[13],E=t[14],I=t[15];return e[0]=f*(T*I-S*E)-b*(h*I-v*E)+P*(h*S-v*T),e[1]=-(i*(T*I-S*E)-b*(a*I-s*E)+P*(a*S-s*T)),e[2]=i*(h*I-v*E)-f*(a*I-s*E)+P*(a*v-s*h),e[3]=-(i*(h*S-v*T)-f*(a*S-s*T)+b*(a*v-s*h)),e[4]=-(l*(T*I-S*E)-m*(h*I-v*E)+C*(h*S-v*T)),e[5]=r*(T*I-S*E)-m*(a*I-s*E)+C*(a*S-s*T),e[6]=-(r*(h*I-v*E)-l*(a*I-s*E)+C*(a*v-s*h)),e[7]=r*(h*S-v*T)-l*(a*S-s*T)+m*(a*v-s*h),e[8]=l*(b*I-S*P)-m*(f*I-v*P)+C*(f*S-v*b),e[9]=-(r*(b*I-S*P)-m*(i*I-s*P)+C*(i*S-s*b)),e[10]=r*(f*I-v*P)-l*(i*I-s*P)+C*(i*v-s*f),e[11]=-(r*(f*S-v*b)-l*(i*S-s*b)+m*(i*v-s*f)),e[12]=-(l*(b*E-T*P)-m*(f*E-h*P)+C*(f*T-h*b)),e[13]=r*(b*E-T*P)-m*(i*E-a*P)+C*(i*T-a*b),e[14]=-(r*(f*E-h*P)-l*(i*E-a*P)+C*(i*h-a*f)),e[15]=r*(f*T-h*b)-l*(i*T-a*b)+m*(i*h-a*f),e}});var D8=de((oye,P8)=>{P8.exports=Gj;function Gj(e){var t=e[0],r=e[1],i=e[2],a=e[3],s=e[4],l=e[5],f=e[6],h=e[7],v=e[8],m=e[9],b=e[10],T=e[11],S=e[12],C=e[13],P=e[14],E=e[15],I=t*l-r*s,q=t*f-i*s,B=t*h-a*s,z=r*f-i*l,O=r*h-a*l,H=i*h-a*f,V=v*C-m*S,W=v*P-b*S,J=v*E-T*S,re=m*P-b*C,oe=m*E-T*C,ne=b*E-T*P;return I*ne-q*oe+B*re+z*J-O*W+H*V}});var I8=de((sye,z8)=>{z8.exports=Zj;function Zj(e,t,r){var i=t[0],a=t[1],s=t[2],l=t[3],f=t[4],h=t[5],v=t[6],m=t[7],b=t[8],T=t[9],S=t[10],C=t[11],P=t[12],E=t[13],I=t[14],q=t[15],B=r[0],z=r[1],O=r[2],H=r[3];return e[0]=B*i+z*f+O*b+H*P,e[1]=B*a+z*h+O*T+H*E,e[2]=B*s+z*v+O*S+H*I,e[3]=B*l+z*m+O*C+H*q,B=r[4],z=r[5],O=r[6],H=r[7],e[4]=B*i+z*f+O*b+H*P,e[5]=B*a+z*h+O*T+H*E,e[6]=B*s+z*v+O*S+H*I,e[7]=B*l+z*m+O*C+H*q,B=r[8],z=r[9],O=r[10],H=r[11],e[8]=B*i+z*f+O*b+H*P,e[9]=B*a+z*h+O*T+H*E,e[10]=B*s+z*v+O*S+H*I,e[11]=B*l+z*m+O*C+H*q,B=r[12],z=r[13],O=r[14],H=r[15],e[12]=B*i+z*f+O*b+H*P,e[13]=B*a+z*h+O*T+H*E,e[14]=B*s+z*v+O*S+H*I,e[15]=B*l+z*m+O*C+H*q,e}});var F8=de((lye,R8)=>{R8.exports=Yj;function Yj(e,t,r){var i=r[0],a=r[1],s=r[2],l,f,h,v,m,b,T,S,C,P,E,I;return t===e?(e[12]=t[0]*i+t[4]*a+t[8]*s+t[12],e[13]=t[1]*i+t[5]*a+t[9]*s+t[13],e[14]=t[2]*i+t[6]*a+t[10]*s+t[14],e[15]=t[3]*i+t[7]*a+t[11]*s+t[15]):(l=t[0],f=t[1],h=t[2],v=t[3],m=t[4],b=t[5],T=t[6],S=t[7],C=t[8],P=t[9],E=t[10],I=t[11],e[0]=l,e[1]=f,e[2]=h,e[3]=v,e[4]=m,e[5]=b,e[6]=T,e[7]=S,e[8]=C,e[9]=P,e[10]=E,e[11]=I,e[12]=l*i+m*a+C*s+t[12],e[13]=f*i+b*a+P*s+t[13],e[14]=h*i+T*a+E*s+t[14],e[15]=v*i+S*a+I*s+t[15]),e}});var N8=de((uye,q8)=>{q8.exports=Wj;function Wj(e,t,r){var i=r[0],a=r[1],s=r[2];return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*a,e[5]=t[5]*a,e[6]=t[6]*a,e[7]=t[7]*a,e[8]=t[8]*s,e[9]=t[9]*s,e[10]=t[10]*s,e[11]=t[11]*s,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var O8=de((fye,B8)=>{B8.exports=Xj;function Xj(e,t,r,i){var a=i[0],s=i[1],l=i[2],f=Math.sqrt(a*a+s*s+l*l),h,v,m,b,T,S,C,P,E,I,q,B,z,O,H,V,W,J,re,oe,ne,fe,ve,Ce;return Math.abs(f)<1e-6?null:(f=1/f,a*=f,s*=f,l*=f,h=Math.sin(r),v=Math.cos(r),m=1-v,b=t[0],T=t[1],S=t[2],C=t[3],P=t[4],E=t[5],I=t[6],q=t[7],B=t[8],z=t[9],O=t[10],H=t[11],V=a*a*m+v,W=s*a*m+l*h,J=l*a*m-s*h,re=a*s*m-l*h,oe=s*s*m+v,ne=l*s*m+a*h,fe=a*l*m+s*h,ve=s*l*m-a*h,Ce=l*l*m+v,e[0]=b*V+P*W+B*J,e[1]=T*V+E*W+z*J,e[2]=S*V+I*W+O*J,e[3]=C*V+q*W+H*J,e[4]=b*re+P*oe+B*ne,e[5]=T*re+E*oe+z*ne,e[6]=S*re+I*oe+O*ne,e[7]=C*re+q*oe+H*ne,e[8]=b*fe+P*ve+B*Ce,e[9]=T*fe+E*ve+z*Ce,e[10]=S*fe+I*ve+O*Ce,e[11]=C*fe+q*ve+H*Ce,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var V8=de((cye,U8)=>{U8.exports=jj;function jj(e,t,r){var i=Math.sin(r),a=Math.cos(r),s=t[4],l=t[5],f=t[6],h=t[7],v=t[8],m=t[9],b=t[10],T=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=s*a+v*i,e[5]=l*a+m*i,e[6]=f*a+b*i,e[7]=h*a+T*i,e[8]=v*a-s*i,e[9]=m*a-l*i,e[10]=b*a-f*i,e[11]=T*a-h*i,e}});var G8=de((hye,H8)=>{H8.exports=Jj;function Jj(e,t,r){var i=Math.sin(r),a=Math.cos(r),s=t[0],l=t[1],f=t[2],h=t[3],v=t[8],m=t[9],b=t[10],T=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=s*a-v*i,e[1]=l*a-m*i,e[2]=f*a-b*i,e[3]=h*a-T*i,e[8]=s*i+v*a,e[9]=l*i+m*a,e[10]=f*i+b*a,e[11]=h*i+T*a,e}});var Y8=de((vye,Z8)=>{Z8.exports=Kj;function Kj(e,t,r){var i=Math.sin(r),a=Math.cos(r),s=t[0],l=t[1],f=t[2],h=t[3],v=t[4],m=t[5],b=t[6],T=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=s*a+v*i,e[1]=l*a+m*i,e[2]=f*a+b*i,e[3]=h*a+T*i,e[4]=v*a-s*i,e[5]=m*a-l*i,e[6]=b*a-f*i,e[7]=T*a-h*i,e}});var X8=de((dye,W8)=>{W8.exports=Qj;function Qj(e,t,r){var i,a,s,l=r[0],f=r[1],h=r[2],v=Math.sqrt(l*l+f*f+h*h);return Math.abs(v)<1e-6?null:(v=1/v,l*=v,f*=v,h*=v,i=Math.sin(t),a=Math.cos(t),s=1-a,e[0]=l*l*s+a,e[1]=f*l*s+h*i,e[2]=h*l*s-f*i,e[3]=0,e[4]=l*f*s-h*i,e[5]=f*f*s+a,e[6]=h*f*s+l*i,e[7]=0,e[8]=l*h*s+f*i,e[9]=f*h*s-l*i,e[10]=h*h*s+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var J8=de((pye,j8)=>{j8.exports=$j;function $j(e,t,r){var i=t[0],a=t[1],s=t[2],l=t[3],f=i+i,h=a+a,v=s+s,m=i*f,b=i*h,T=i*v,S=a*h,C=a*v,P=s*v,E=l*f,I=l*h,q=l*v;return e[0]=1-(S+P),e[1]=b+q,e[2]=T-I,e[3]=0,e[4]=b-q,e[5]=1-(m+P),e[6]=C+E,e[7]=0,e[8]=T+I,e[9]=C-E,e[10]=1-(m+S),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var Q8=de((mye,K8)=>{K8.exports=eJ;function eJ(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var eS=de((yye,$8)=>{$8.exports=tJ;function tJ(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var rS=de((gye,tS)=>{tS.exports=rJ;function rJ(e,t){var r=Math.sin(t),i=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var iS=de((_ye,aS)=>{aS.exports=aJ;function aJ(e,t){var r=Math.sin(t),i=Math.cos(t);return e[0]=i,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var oS=de((xye,nS)=>{nS.exports=iJ;function iJ(e,t){var r=Math.sin(t),i=Math.cos(t);return e[0]=i,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ew=de((bye,sS)=>{sS.exports=nJ;function nJ(e,t){var r=t[0],i=t[1],a=t[2],s=t[3],l=r+r,f=i+i,h=a+a,v=r*l,m=i*l,b=i*f,T=a*l,S=a*f,C=a*h,P=s*l,E=s*f,I=s*h;return e[0]=1-b-C,e[1]=m+I,e[2]=T-E,e[3]=0,e[4]=m-I,e[5]=1-v-C,e[6]=S+P,e[7]=0,e[8]=T+E,e[9]=S-P,e[10]=1-v-b,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var uS=de((wye,lS)=>{lS.exports=oJ;function oJ(e,t,r,i,a,s,l){var f=1/(r-t),h=1/(a-i),v=1/(s-l);return e[0]=s*2*f,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s*2*h,e[6]=0,e[7]=0,e[8]=(r+t)*f,e[9]=(a+i)*h,e[10]=(l+s)*v,e[11]=-1,e[12]=0,e[13]=0,e[14]=l*s*2*v,e[15]=0,e}});var cS=de((Tye,fS)=>{fS.exports=sJ;function sJ(e,t,r,i,a){var s=1/Math.tan(t/2),l=1/(i-a);return e[0]=s/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(a+i)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*i*l,e[15]=0,e}});var vS=de((Aye,hS)=>{hS.exports=lJ;function lJ(e,t,r,i){var a=Math.tan(t.upDegrees*Math.PI/180),s=Math.tan(t.downDegrees*Math.PI/180),l=Math.tan(t.leftDegrees*Math.PI/180),f=Math.tan(t.rightDegrees*Math.PI/180),h=2/(l+f),v=2/(a+s);return e[0]=h,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=v,e[6]=0,e[7]=0,e[8]=-((l-f)*h*.5),e[9]=(a-s)*v*.5,e[10]=i/(r-i),e[11]=-1,e[12]=0,e[13]=0,e[14]=i*r/(r-i),e[15]=0,e}});var pS=de((Mye,dS)=>{dS.exports=uJ;function uJ(e,t,r,i,a,s,l){var f=1/(t-r),h=1/(i-a),v=1/(s-l);return e[0]=-2*f,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*h,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*v,e[11]=0,e[12]=(t+r)*f,e[13]=(a+i)*h,e[14]=(l+s)*v,e[15]=1,e}});var yS=de((Sye,mS)=>{var fJ=$3();mS.exports=cJ;function cJ(e,t,r,i){var a,s,l,f,h,v,m,b,T,S,C=t[0],P=t[1],E=t[2],I=i[0],q=i[1],B=i[2],z=r[0],O=r[1],H=r[2];return Math.abs(C-z)<1e-6&&Math.abs(P-O)<1e-6&&Math.abs(E-H)<1e-6?fJ(e):(m=C-z,b=P-O,T=E-H,S=1/Math.sqrt(m*m+b*b+T*T),m*=S,b*=S,T*=S,a=q*T-B*b,s=B*m-I*T,l=I*b-q*m,S=Math.sqrt(a*a+s*s+l*l),S?(S=1/S,a*=S,s*=S,l*=S):(a=0,s=0,l=0),f=b*l-T*s,h=T*a-m*l,v=m*s-b*a,S=Math.sqrt(f*f+h*h+v*v),S?(S=1/S,f*=S,h*=S,v*=S):(f=0,h=0,v=0),e[0]=a,e[1]=f,e[2]=m,e[3]=0,e[4]=s,e[5]=h,e[6]=b,e[7]=0,e[8]=l,e[9]=v,e[10]=T,e[11]=0,e[12]=-(a*C+s*P+l*E),e[13]=-(f*C+h*P+v*E),e[14]=-(m*C+b*P+T*E),e[15]=1,e)}});var _S=de((kye,gS)=>{gS.exports=hJ;function hJ(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var tw=de((Cye,xS)=>{xS.exports={create:_8(),clone:b8(),copy:T8(),identity:$3(),transpose:S8(),invert:C8(),adjoint:L8(),determinant:D8(),multiply:I8(),translate:F8(),scale:N8(),rotate:O8(),rotateX:V8(),rotateY:G8(),rotateZ:Y8(),fromRotation:X8(),fromRotationTranslation:J8(),fromScaling:Q8(),fromTranslation:eS(),fromXRotation:rS(),fromYRotation:iS(),fromZRotation:oS(),fromQuat:ew(),frustum:uS(),perspective:cS(),perspectiveFromFieldOfView:vS(),ortho:pS(),lookAt:yS(),str:_S()}});var o_=de(Sn=>{"use strict";var vJ=tw();Sn.init2dArray=function(e,t){for(var r=new Array(e),i=0;i{"use strict";var dJ=ja(),bS=Th(),pJ=o_(),mJ=tw();function yJ(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function gJ(e){var t=dJ.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function wS(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function _J(e,t){TS("global",e,t)}function TS(e,t,r){var i="plotly.js-style-"+e,a=document.getElementById(i);if(!(a&&a.matches(".no-inline-styles"))){a||(a=document.createElement("style"),a.setAttribute("id",i),a.appendChild(document.createTextNode("")),document.head.appendChild(a));var s=a.sheet;s?s.insertRule?s.insertRule(t+"{"+r+"}",0):s.addRule?s.addRule(t,r,0):bS.warn("addStyleRule failed"):bS.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function xJ(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&wS(r)}function bJ(e,t,r,i,a,s){var l=i.split(":"),f=a.split(":"),h="data-btn-style-event-added";s||(s=document),s.querySelectorAll(e).forEach(function(v){v.getAttribute(h)||(v.addEventListener("mouseenter",function(){var m=this.querySelector(r);m&&(m.style[l[0]]=l[1])}),v.addEventListener("mouseleave",function(){var m=this.querySelector(r);m&&(t&&this.matches(t)?m.style[l[0]]=l[1]:m.style[f[0]]=f[1])}),v.setAttribute(h,!0))})}function wJ(e){var t=MS(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(i){var a=AS(i);if(a){var s=pJ.convertCssMatrix(a);r=mJ.multiply(r,r,s)}}),r}function AS(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(i){return+i})}function MS(e){for(var t=[];TJ(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function TJ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function AJ(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}SS.exports={getGraphDiv:yJ,isPlotDiv:gJ,removeElement:wS,addStyleRule:_J,addRelatedStyleRule:TS,deleteRelatedStyleRule:xJ,setStyleOnHover:bJ,getFullTransformMatrix:wJ,getElementTransformMatrix:AS,getElementAndAncestors:MS,equalDomRects:AJ}});var Ly=de((Pye,kS)=>{"use strict";kS.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var nl=de((Dye,IS)=>{"use strict";var ES=hn().extendFlat,MJ=cc(),LS={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},PS={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},SJ=LS.flags.slice().concat(["fullReplot"]),kJ=PS.flags.slice().concat("layoutReplot");IS.exports={traces:LS,layout:PS,traceFlags:function(){return CS(SJ)},layoutFlags:function(){return CS(kJ)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var i=r.split("+"),a=0;a{"use strict";rw.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};rw.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var aw=de((Iye,RS)=>{"use strict";RS.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Hl=de(s_=>{"use strict";var FS=aw(),Rye=FS.FORMAT_LINK,Fye=FS.DATE_FORMAT_LINK;function iw(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var i=[],a=0;a{"use strict";function Ah(e,t){return t?t.d2l(e):e}function qS(e,t){return t?t.l2d(e):e}function CJ(e){return e.x0}function EJ(e){return e.x1}function LJ(e){return e.y0}function PJ(e){return e.y1}function NS(e){return e.x0shift||0}function BS(e){return e.x1shift||0}function OS(e){return e.y0shift||0}function US(e){return e.y1shift||0}function l_(e,t){return Ah(e.x1,t)+BS(e)-Ah(e.x0,t)-NS(e)}function u_(e,t,r){return Ah(e.y1,r)+US(e)-Ah(e.y0,r)-OS(e)}function DJ(e,t){return Math.abs(l_(e,t))}function zJ(e,t,r){return Math.abs(u_(e,t,r))}function IJ(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(l_(e,t),2)+Math.pow(u_(e,t,r),2))}function RJ(e,t){return qS((Ah(e.x1,t)+BS(e)+Ah(e.x0,t)+NS(e))/2,t)}function FJ(e,t,r){return qS((Ah(e.y1,r)+US(e)+Ah(e.y0,r)+OS(e))/2,r)}function qJ(e,t,r){return e.type!=="line"?void 0:u_(e,t,r)/l_(e,t)}VS.exports={x0:CJ,x1:EJ,y0:LJ,y1:PJ,slope:qJ,dx:l_,dy:u_,width:DJ,height:zJ,length:IJ,xcenter:RJ,ycenter:FJ}});var ZS=de((Bye,GS)=>{"use strict";var NJ=nl().overrideAll,ad=ms(),HS=qo(),BJ=hc().dash,Mh=hn().extendFlat,OJ=Hl().shapeTexttemplateAttrs,UJ=f_();GS.exports=NJ({newshape:{visible:Mh({},ad.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Mh({},ad.legend,{}),legendgroup:Mh({},ad.legendgroup,{}),legendgrouptitle:{text:Mh({},ad.legendgrouptitle.text,{}),font:HS({})},legendrank:Mh({},ad.legendrank,{}),legendwidth:Mh({},ad.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Mh({},BJ,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Mh({},ad.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:OJ({newshape:!0},{keys:Object.keys(UJ)}),font:HS({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var WS=de((Oye,YS)=>{"use strict";var VJ=hc().dash,HJ=hn().extendFlat;YS.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:HJ({},VJ,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var c_=de((Uye,XS)=>{"use strict";XS.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var d0=de((Vye,QS)=>{"use strict";var nw=qo(),GJ=Ly(),h_=Af(),jS=ZS(),JS=WS(),ZJ=c_(),KS=hn().extendFlat,v_=nw({editType:"calc"});v_.family.dflt='"Open Sans", verdana, arial, sans-serif';v_.size.dflt=12;v_.color.dflt=h_.defaultLine;QS.exports={font:v_,title:{text:{valType:"string",editType:"layoutstyle"},font:nw({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:nw({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:KS(ZJ({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:h_.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:h_.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:h_.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:jS.newshape,activeshape:jS.activeshape,newselection:JS.newselection,activeselection:JS.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:KS({},GJ.transition,{editType:"none"})}});var $S=p7(()=>{});var YJ={};var e9=p7(()=>{$S()});var la=de(za=>{"use strict";var p0=Th(),t9=n_(),r9=Q3(),WJ=cc(),XJ=Ey().addStyleRule,a9=hn(),jJ=ms(),JJ=d0(),KJ=a9.extendFlat,ow=a9.extendDeepAll;za.modules={};za.allCategories={};za.allTypes=[];za.subplotsRegistry={};za.componentsRegistry={};za.layoutArrayContainers=[];za.layoutArrayRegexes=[];za.traceLayoutAttributes={};za.localeRegistry={};za.apiMethodRegistry={};za.collectableSubplotTypes=null;za.register=function(t){if(za.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r{"use strict";var aK=s0().timeFormat,d9=Da(),sw=Th(),kh=u0().mod,g0=Hi(),Gl=g0.BADNUM,qs=g0.ONEDAY,Py=g0.ONEHOUR,Sh=g0.ONEMIN,y0=g0.ONESEC,Dy=g0.EPOCHJD,vc=la(),l9=s0().utcFormat,iK=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,nK=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,u9=new Date().getFullYear()-70;function dc(e){return e&&vc.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}kn.dateTick0=function(e,t){var r=oK(e,!!t);if(t<2)return r;var i=kn.dateTime2ms(r,e);return i+=qs*(t-1),kn.ms2DateTime(i,0,e)};function oK(e,t){return dc(e)?t?vc.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:vc.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}kn.dfltRange=function(e){return dc(e)?vc.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};kn.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var p_,m_;kn.dateTime2ms=function(e,t){if(kn.isJSDate(e)){var r=e.getTimezoneOffset()*Sh,i=(e.getUTCMinutes()-e.getMinutes())*Sh+(e.getUTCSeconds()-e.getSeconds())*y0+(e.getUTCMilliseconds()-e.getMilliseconds());if(i){var a=3*Sh;r=r-a/2+kh(i-r+a/2,a)}return e=Number(e)-r,e>=p_&&e<=m_?e:Gl}if(typeof e!="string"&&typeof e!="number")return Gl;e=String(e);var s=dc(t),l=e.charAt(0);s&&(l==="G"||l==="g")&&(e=e.substr(1),t="");var f=s&&t.substr(0,7)==="chinese",h=e.match(f?nK:iK);if(!h)return Gl;var v=h[1],m=h[3]||"1",b=Number(h[5]||1),T=Number(h[7]||0),S=Number(h[9]||0),C=Number(h[11]||0);if(s){if(v.length===2)return Gl;v=Number(v);var P;try{var E=vc.getComponentMethod("calendars","getCal")(t);if(f){var I=m.charAt(m.length-1)==="i";m=parseInt(m,10),P=E.newDate(v,E.toMonthIndex(v,m,I),b)}else P=E.newDate(v,Number(m),b)}catch(B){return Gl}return P?(P.toJD()-Dy)*qs+T*Py+S*Sh+C*y0:Gl}v.length===2?v=(Number(v)+2e3-u9)%100+u9:v=Number(v),m-=1;var q=new Date(Date.UTC(2e3,m,b,T,S));return q.setUTCFullYear(v),q.getUTCMonth()!==m||q.getUTCDate()!==b?Gl:q.getTime()+C*y0};p_=kn.MIN_MS=kn.dateTime2ms("-9999");m_=kn.MAX_MS=kn.dateTime2ms("9999-12-31 23:59:59.9999");kn.isDateTime=function(e,t){return kn.dateTime2ms(e,t)!==Gl};function m0(e,t){return String(e+Math.pow(10,t)).substr(1)}var d_=90*qs,f9=3*Py,c9=5*Sh;kn.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=p_&&e<=m_))return Gl;t||(t=0);var i=Math.floor(kh(e+.05,1)*10),a=Math.round(e-i/10),s,l,f,h,v,m;if(dc(r)){var b=Math.floor(a/qs)+Dy,T=Math.floor(kh(e,qs));try{s=vc.getComponentMethod("calendars","getCal")(r).fromJD(b).formatDate("yyyy-mm-dd")}catch(S){s=l9("G%Y-%m-%d")(new Date(a))}if(s.charAt(0)==="-")for(;s.length<11;)s="-0"+s.substr(1);else for(;s.length<10;)s="0"+s;l=t=p_+qs&&e<=m_-qs))return Gl;var t=Math.floor(kh(e+.05,1)*10),r=new Date(Math.round(e-t/10)),i=aK("%Y-%m-%d")(r),a=r.getHours(),s=r.getMinutes(),l=r.getSeconds(),f=r.getUTCMilliseconds()*10+t;return p9(i,a,s,l,f)};function p9(e,t,r,i,a){if((t||r||i||a)&&(e+=" "+m0(t,2)+":"+m0(r,2),(i||a)&&(e+=":"+m0(i,2),a))){for(var s=4;a%10===0;)s-=1,a/=10;e+="."+m0(a,s)}return e}kn.cleanDate=function(e,t,r){if(e===Gl)return t;if(kn.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(dc(r))return sw.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=kn.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!kn.isDateTime(e,r))return sw.error("unrecognized date",e),t;return e};var sK=/%\d?f/g,lK=/%h/g,uK={1:"1",2:"1",3:"2",4:"2"};function h9(e,t,r,i){e=e.replace(sK,function(s){var l=Math.min(+s.charAt(1)||6,6),f=(t/1e3%1+2).toFixed(l).substr(2).replace(/0+$/,"")||"0";return f});var a=new Date(Math.floor(t+.05));if(e=e.replace(lK,function(){return uK[r("%q")(a)]}),dc(i))try{e=vc.getComponentMethod("calendars","worldCalFmt")(e,t,i)}catch(s){return"Invalid"}return r(e)(a)}var fK=[59,59.9,59.99,59.999,59.9999];function cK(e,t){var r=kh(e+.05,qs),i=m0(Math.floor(r/Py),2)+":"+m0(kh(Math.floor(r/Sh),60),2);if(t!=="M"){d9(t)||(t=0);var a=Math.min(kh(e/y0,60),fK[t]),s=(100+a).toFixed(t).substr(1);t>0&&(s=s.replace(/0+$/,"").replace(/[\.]$/,"")),i+=":"+s}return i}kn.formatDate=function(e,t,r,i,a,s){if(a=dc(a)&&a,!t)if(r==="y")t=s.year;else if(r==="m")t=s.month;else if(r==="d")t=s.dayMonth+` diff --git a/dist/plotly-strict.js b/dist/plotly-strict.js index d3c33745b3e..98c9c80e765 100644 --- a/dist/plotly-strict.js +++ b/dist/plotly-strict.js @@ -1,5 +1,5 @@ /** -* plotly.js (strict) v3.0.2 +* plotly.js (strict) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -69,7 +69,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly-strict.min.js b/dist/plotly-strict.min.js index e49303878b7..18f368fd94d 100644 --- a/dist/plotly-strict.min.js +++ b/dist/plotly-strict.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (strict - minified) v3.0.2 +* plotly.js (strict - minified) v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var wtt=Object.create;var EM=Object.defineProperty,Ttt=Object.defineProperties,Att=Object.getOwnPropertyDescriptor,Stt=Object.getOwnPropertyDescriptors,Mtt=Object.getOwnPropertyNames,pee=Object.getOwnPropertySymbols,Ett=Object.getPrototypeOf,yee=Object.prototype.hasOwnProperty,ktt=Object.prototype.propertyIsEnumerable;var vee=(e,t,r)=>t in e?EM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mee=(e,t)=>{for(var r in t||(t={}))yee.call(t,r)&&vee(e,r,t[r]);if(pee)for(var r of pee(t))ktt.call(t,r)&&vee(e,r,t[r]);return e},gee=(e,t)=>Ttt(e,Stt(t));var Bf=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_ee=(e,t)=>{for(var r in t)EM(e,r,{get:t[r],enumerable:!0})},xee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Mtt(t))!yee.call(e,i)&&i!==r&&EM(e,i,{get:()=>t[i],enumerable:!(n=Att(t,i))||n.enumerable});return e};var Ctt=(e,t,r)=>(r=e!=null?wtt(Ett(e)):{},xee(t||!e||!e.__esModule?EM(r,"default",{value:e,enumerable:!0}):r,e)),O1=e=>xee(EM({},"__esModule",{value:!0}),e);var rL=Ae(bee=>{"use strict";bee.version="3.0.2"});var Tee=Ae((wee,iL)=>{(function(t,r,n){r[t]=r[t]||n(),typeof iL!="undefined"&&iL.exports&&(iL.exports=r[t])})("Promise",typeof window!="undefined"?window:wee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(k,E,A,L){return Object.defineProperty(k,E,{value:A,writable:!0,configurable:L!==!1})}}catch(v){t=function(E,A,L){return E[A]=L,E}}n=function(){var k,E,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),E?E.next=A:k=A,E=A,A=void 0},drain:function(){var C=k;for(k=E=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(v,k){n.add(v,k),r||(r=a(n.drain))}function s(v){var k,E=typeof v;return v!=null&&(E=="object"||E=="function")&&(k=v.then),typeof k=="function"?k:!1}function u(){for(var v=0;v0&&o(u,E))}catch(A){c.call(new d(E),A)}}}function c(v){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=v,k.state=2,k.chain.length>0&&o(u,k))}function h(v,k,E,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(X){return t.call(X)},n=self.document;function i(X){return X&&(X.ownerDocument||X.document||X).documentElement}function a(X){return X&&(X.ownerDocument&&X.ownerDocument.defaultView||X.document&&X||X.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(X){r=function(se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=se[Le];return We}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(X){var o=this.Element.prototype,s=o.setAttribute,u=o.setAttributeNS,l=this.CSSStyleDeclaration.prototype,f=l.setProperty;o.setAttribute=function(se,Le){s.call(this,se,Le+"")},o.setAttributeNS=function(se,Le,We){u.call(this,se,Le,We+"")},l.setProperty=function(se,Le,We){f.call(this,se,Le+"",We)}}e.ascending=c;function c(X,se){return Xse?1:X>=se?0:NaN}e.descending=function(X,se){return seX?1:se>=X?0:NaN},e.min=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}return Ye},e.max=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}return Ye},e.extent=function(X,se){var Le=-1,We=X.length,Ye,it,Nt;if(arguments.length===1){for(;++Le=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt1)return Nt/(er-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function p(X){return{left:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)<0?We=it+1:Ye=it}return We},right:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)>0?Ye=it:We=it+1}return We}}}var x=p(c);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(X){return p(X.length===1?function(se,Le){return c(X(se),Le)}:X)},e.shuffle=function(X,se,Le){(We=arguments.length)<3&&(Le=X.length,We<2&&(se=0));for(var We=Le-se,Ye,it;We;)it=Math.random()*We--|0,Ye=X[We+se],X[We+se]=X[it+se],X[it+se]=Ye;return X},e.permute=function(X,se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=X[se[Le]];return We},e.pairs=function(X){for(var se=0,Le=X.length-1,We,Ye=X[0],it=new Array(Le<0?0:Le);se=0;)for(Nt=X[se],Le=Nt.length;--Le>=0;)it[--Ye]=Nt[Le];return it};var v=Math.abs;e.range=function(X,se,Le){if(arguments.length<3&&(Le=1,arguments.length<2&&(se=X,X=0)),(se-X)/Le===1/0)throw new Error("infinite range");var We=[],Ye=k(v(Le)),it=-1,Nt;if(X*=Ye,se*=Ye,Le*=Ye,Le<0)for(;(Nt=X+Le*++it)>se;)We.push(Nt/Ye);else for(;(Nt=X+Le*++it)=se.length)return Ye?Ye.call(X,er):We?er.sort(We):er;for(var wr=-1,ni=er.length,Wr=se[_r++],Ci,Ji,ai,Ti=new A,Bi;++wr=se.length)return mt;var _r=[],wr=Le[er++];return mt.forEach(function(ni,Wr){_r.push({key:ni,values:Nt(Wr,er)})}),wr?_r.sort(function(ni,Wr){return wr(ni.key,Wr.key)}):_r}return X.map=function(mt,er){return it(er,mt,0)},X.entries=function(mt){return Nt(it(e.map,mt,0),0)},X.key=function(mt){return se.push(mt),X},X.sortKeys=function(mt){return Le[se.length-1]=mt,X},X.sortValues=function(mt){return We=mt,X},X.rollup=function(mt){return Ye=mt,X},X},e.set=function(X){var se=new U;if(X)for(var Le=0,We=X.length;Le=0&&(We=X.slice(Le+1),X=X.slice(0,Le)),X)return arguments.length<2?this[X].on(We):this[X].on(We,se);if(arguments.length===2){if(se==null)for(X in this)this.hasOwnProperty(X)&&this[X].on(We,null);return this}};function ne(X){var se=[],Le=new A;function We(){for(var Ye=se,it=-1,Nt=Ye.length,mt;++it=0&&(Le=X.slice(0,se))!=="xmlns"&&(X=X.slice(se+1)),Ze.hasOwnProperty(Le)?{space:Ze[Le],local:X}:X}},Re.attr=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node();return X=e.ns.qualify(X),X.local?Le.getAttributeNS(X.space,X.local):Le.getAttribute(X)}for(se in X)this.each(et(se,X[se]));return this}return this.each(et(X,se))};function et(X,se){X=e.ns.qualify(X);function Le(){this.removeAttribute(X)}function We(){this.removeAttributeNS(X.space,X.local)}function Ye(){this.setAttribute(X,se)}function it(){this.setAttributeNS(X.space,X.local,se)}function Nt(){var er=se.apply(this,arguments);er==null?this.removeAttribute(X):this.setAttribute(X,er)}function mt(){var er=se.apply(this,arguments);er==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,er)}return se==null?X.local?We:Le:typeof se=="function"?X.local?mt:Nt:X.local?it:Ye}function gt(X){return X.trim().replace(/\s+/g," ")}Re.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node(),We=(X=Qe(X)).length,Ye=-1;if(se=Le.classList){for(;++Ye=0;)(it=Le[We])&&(Ye&&Ye!==it.nextSibling&&Ye.parentNode.insertBefore(it,Ye),Ye=it);return this},Re.sort=function(X){X=nt.apply(this,arguments);for(var se=-1,Le=this.length;++se=se&&(se=Ye+1);!(er=Nt[se])&&++se0&&(X=X.slice(0,Ye));var Nt=Je.get(X);Nt&&(X=Nt,it=Vt);function mt(){var wr=this[We];wr&&(this.removeEventListener(X,wr,wr.$),delete this[We])}function er(){var wr=it(se,r(arguments));mt.call(this),this.addEventListener(X,this[We]=wr,wr.$=Le),wr._=se}function _r(){var wr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),ni;for(var Wr in this)if(ni=Wr.match(wr)){var Ci=this[Wr];this.removeEventListener(ni[1],Ci,Ci.$),delete this[Wr]}}return Ye?se?er:mt:se?W:_r}var Je=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Je.forEach(function(X){"on"+X in n&&Je.remove(X)});function Mt(X,se){return function(Le){var We=e.event;e.event=Le,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=We}}}function Vt(X,se){var Le=Mt(X,se);return function(We){var Ye=this,it=We.relatedTarget;(!it||it!==Ye&&!(it.compareDocumentPosition(Ye)&8))&&Le.call(Ye,We)}}var Kt,ir=0;function fr(X){var se=".dragsuppress-"+ ++ir,Le="click"+se,We=e.select(a(X)).on("touchmove"+se,be).on("dragstart"+se,be).on("selectstart"+se,be);if(Kt==null&&(Kt="onselectstart"in X?!1:G(X.style,"userSelect")),Kt){var Ye=i(X).style,it=Ye[Kt];Ye[Kt]="none"}return function(Nt){if(We.on(se,null),Kt&&(Ye[Kt]=it),Nt){var mt=function(){We.on(Le,null)};We.on(Le,function(){be(),mt()},!0),setTimeout(mt,0)}}}e.mouse=function(X){return De(X,ze())};var Ot=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function De(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Le=X.ownerSVGElement||X;if(Le.createSVGPoint){var We=Le.createSVGPoint();if(Ot<0){var Ye=a(X);if(Ye.scrollX||Ye.scrollY){Le=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var it=Le[0][0].getScreenCTM();Ot=!(it.f||it.e),Le.remove()}}return Ot?(We.x=se.pageX,We.y=se.pageY):(We.x=se.clientX,We.y=se.clientY),We=We.matrixTransform(X.getScreenCTM().inverse()),[We.x,We.y]}var Nt=X.getBoundingClientRect();return[se.clientX-Nt.left-X.clientLeft,se.clientY-Nt.top-X.clientTop]}e.touch=function(X,se,Le){if(arguments.length<3&&(Le=se,se=ze().changedTouches),se){for(var We=0,Ye=se.length,it;We0?1:X<0?-1:0}function St(X,se,Le){return(se[0]-X[0])*(Le[1]-X[1])-(se[1]-X[1])*(Le[0]-X[0])}function Zt(X){return X>1?0:X<-1?Ie:Math.acos(X)}function qr(X){return X>1?ue:X<-1?-ue:Math.asin(X)}function Lr(X){return((X=Math.exp(X))-1/X)/2}function vr(X){return((X=Math.exp(X))+1/X)/2}function Er(X){return((X=Math.exp(2*X))-1)/(X+1)}function si(X){return(X=Math.sin(X/2))*X}var Ei=Math.SQRT2,Si=2,xi=4;e.interpolateZoom=function(X,se){var Le=X[0],We=X[1],Ye=X[2],it=se[0],Nt=se[1],mt=se[2],er=it-Le,_r=Nt-We,wr=er*er+_r*_r,ni,Wr;if(wr0&&(qo=qo.transition().duration(Nt)),qo.call(Wi.event)}function vl(){Ti&&Ti.domain(ai.range().map(function(qo){return(qo-X.x)/X.k}).map(ai.invert)),en&&en.domain(Bi.range().map(function(qo){return(qo-X.y)/X.k}).map(Bi.invert))}function wl(qo){mt++||qo({type:"zoomstart"})}function au(qo){vl(),qo({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Al(qo){--mt||(qo({type:"zoomend"}),Le=null)}function nu(){var qo=this,Rl=Ji.of(qo,arguments),pu=0,xu=e.select(a(qo)).on(_r,xf).on(wr,hf),of=bi(e.mouse(qo)),ff=fr(qo);ys.call(qo),wl(Rl);function xf(){pu=1,Ko(e.mouse(qo),of),au(Rl)}function hf(){xu.on(_r,null).on(wr,null),ff(pu),Al(Rl)}}function Bu(){var qo=this,Rl=Ji.of(qo,arguments),pu={},xu=0,of,ff=".zoom-"+e.event.changedTouches[0].identifier,xf="touchmove"+ff,hf="touchend"+ff,dc=[],Gt=e.select(qo),jr=fr(qo);Mn(),wl(Rl),Gt.on(er,null).on(Wr,Mn);function _i(){var ha=e.touches(qo);return of=X.k,ha.forEach(function(Io){Io.identifier in pu&&(pu[Io.identifier]=bi(Io))}),ha}function Mn(){var ha=e.event.target;e.select(ha).on(xf,Ta).on(hf,fa),dc.push(ha);for(var Io=e.event.changedTouches,Vs=0,Hs=Io.length;Vs1){var Ps=is[0],qs=is[1],Do=Ps[0]-qs[0],kn=Ps[1]-qs[1];xu=Do*Do+kn*kn}}function Ta(){var ha=e.touches(qo),Io,Vs,Hs,is;ys.call(qo);for(var su=0,Ps=ha.length;su1?1:se,Le=Le<0?0:Le>1?1:Le,Ye=Le<=.5?Le*(1+se):Le+se-Le*se,We=2*Le-Ye;function it(mt){return mt>360?mt-=360:mt<0&&(mt+=360),mt<60?We+(Ye-We)*mt/60:mt<180?Ye:mt<240?We+(Ye-We)*(240-mt)/60:We}function Nt(mt){return Math.round(it(mt)*255)}return new ki(Nt(X+120),Nt(X),Nt(X-120))}e.hcl=Bt;function Bt(X,se,Le){return this instanceof Bt?(this.h=+X,this.c=+se,void(this.l=+Le)):arguments.length<2?X instanceof Bt?new Bt(X.h,X.c,X.l):X instanceof zr?Yr(X.l,X.a,X.b):Yr((X=Or((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new Bt(X,se,Le)}var sr=Bt.prototype=new Di;sr.brighter=function(X){return new Bt(this.h,this.c,Math.min(100,this.l+Tr*(arguments.length?X:1)))},sr.darker=function(X){return new Bt(this.h,this.c,Math.max(0,this.l-Tr*(arguments.length?X:1)))},sr.rgb=function(){return br(this.h,this.c,this.l).rgb()};function br(X,se,Le){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new zr(Le,Math.cos(X*=de)*se,Math.sin(X)*se)}e.lab=zr;function zr(X,se,Le){return this instanceof zr?(this.l=+X,this.a=+se,void(this.b=+Le)):arguments.length<2?X instanceof zr?new zr(X.l,X.a,X.b):X instanceof Bt?br(X.h,X.c,X.l):Or((X=ki(X)).r,X.g,X.b):new zr(X,se,Le)}var Tr=18,Rr=.95047,Br=1,oi=1.08883,vi=zr.prototype=new Di;vi.brighter=function(X){return new zr(Math.min(100,this.l+Tr*(arguments.length?X:1)),this.a,this.b)},vi.darker=function(X){return new zr(Math.max(0,this.l-Tr*(arguments.length?X:1)),this.a,this.b)},vi.rgb=function(){return Pi(this.l,this.a,this.b)};function Pi(X,se,Le){var We=(X+16)/116,Ye=We+se/500,it=We-Le/200;return Ye=Ni(Ye)*Rr,We=Ni(We)*Br,it=Ni(it)*oi,new ki(ti(3.2404542*Ye-1.5371385*We-.4985314*it),ti(-.969266*Ye+1.8760108*We+.041556*it),ti(.0556434*Ye-.2040259*We+1.0572252*it))}function Yr(X,se,Le){return X>0?new Bt(Math.atan2(Le,se)*ht,Math.sqrt(se*se+Le*Le),X):new Bt(NaN,NaN,X)}function Ni(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function Ur(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ti(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=ki;function ki(X,se,Le){return this instanceof ki?(this.r=~~X,this.g=~~se,void(this.b=~~Le)):arguments.length<2?X instanceof ki?new ki(X.r,X.g,X.b):sn(""+X,ki,Dt):new ki(X,se,Le)}function ji(X){return new ki(X>>16,X>>8&255,X&255)}function Vi(X){return ji(X)+""}var zi=ki.prototype=new Di;zi.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Le=this.g,We=this.b,Ye=30;return!se&&!Le&&!We?new ki(Ye,Ye,Ye):(se&&se>4,We=We>>4|We,Ye=er&240,Ye=Ye>>4|Ye,it=er&15,it=it<<4|it):X.length===7&&(We=(er&16711680)>>16,Ye=(er&65280)>>8,it=er&255)),se(We,Ye,it))}function fi(X,se,Le){var We=Math.min(X/=255,se/=255,Le/=255),Ye=Math.max(X,se,Le),it=Ye-We,Nt,mt,er=(Ye+We)/2;return it?(mt=er<.5?it/(Ye+We):it/(2-Ye-We),X==Ye?Nt=(se-Le)/it+(se0&&er<1?0:Nt),new Lt(Nt,mt,er)}function Or(X,se,Le){X=st(X),se=st(se),Le=st(Le);var We=Ur((.4124564*X+.3575761*se+.1804375*Le)/Rr),Ye=Ur((.2126729*X+.7151522*se+.072175*Le)/Br),it=Ur((.0193339*X+.119192*se+.9503041*Le)/oi);return zr(116*Ye-16,500*(We-Ye),200*(Ye-it))}function st(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function Wt(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var tr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});tr.forEach(function(X,se){tr.set(X,ji(se))});function or(X){return typeof X=="function"?X:function(){return X}}e.functor=or,e.xhr=Nr(H);function Nr(X){return function(se,Le,We){return arguments.length===2&&typeof Le=="function"&&(We=Le,Le=null),hi(se,Le,X,We)}}function hi(X,se,Le,We){var Ye={},it=e.dispatch("beforesend","progress","load","error"),Nt={},mt=new XMLHttpRequest,er=null;self.XDomainRequest&&!("withCredentials"in mt)&&/^(http(s)?:)?\/\//.test(X)&&(mt=new XDomainRequest),"onload"in mt?mt.onload=mt.onerror=_r:mt.onreadystatechange=function(){mt.readyState>3&&_r()};function _r(){var wr=mt.status,ni;if(!wr&&Qr(mt)||wr>=200&&wr<300||wr===304){try{ni=Le.call(Ye,mt)}catch(Wr){it.error.call(Ye,Wr);return}it.load.call(Ye,ni)}else it.error.call(Ye,mt)}return mt.onprogress=function(wr){var ni=e.event;e.event=wr;try{it.progress.call(Ye,mt)}finally{e.event=ni}},Ye.header=function(wr,ni){return wr=(wr+"").toLowerCase(),arguments.length<2?Nt[wr]:(ni==null?delete Nt[wr]:Nt[wr]=ni+"",Ye)},Ye.mimeType=function(wr){return arguments.length?(se=wr==null?null:wr+"",Ye):se},Ye.responseType=function(wr){return arguments.length?(er=wr,Ye):er},Ye.response=function(wr){return Le=wr,Ye},["get","post"].forEach(function(wr){Ye[wr]=function(){return Ye.send.apply(Ye,[wr].concat(r(arguments)))}}),Ye.send=function(wr,ni,Wr){if(arguments.length===2&&typeof ni=="function"&&(Wr=ni,ni=null),mt.open(wr,X,!0),se!=null&&!("accept"in Nt)&&(Nt.accept=se+",*/*"),mt.setRequestHeader)for(var Ci in Nt)mt.setRequestHeader(Ci,Nt[Ci]);return se!=null&&mt.overrideMimeType&&mt.overrideMimeType(se),er!=null&&(mt.responseType=er),Wr!=null&&Ye.on("error",Wr).on("load",function(Ji){Wr(null,Ji)}),it.beforesend.call(Ye,mt),mt.send(ni==null?null:ni),Ye},Ye.abort=function(){return mt.abort(),Ye},e.rebind(Ye,it,"on"),We==null?Ye:Ye.get(Gi(We))}function Gi(X){return X.length===1?function(se,Le){X(se==null?Le:null)}:X}function Qr(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Le=new RegExp('["'+X+` +"use strict";var Plotly=(()=>{var wtt=Object.create;var EM=Object.defineProperty,Ttt=Object.defineProperties,Att=Object.getOwnPropertyDescriptor,Stt=Object.getOwnPropertyDescriptors,Mtt=Object.getOwnPropertyNames,pee=Object.getOwnPropertySymbols,Ett=Object.getPrototypeOf,yee=Object.prototype.hasOwnProperty,ktt=Object.prototype.propertyIsEnumerable;var vee=(e,t,r)=>t in e?EM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mee=(e,t)=>{for(var r in t||(t={}))yee.call(t,r)&&vee(e,r,t[r]);if(pee)for(var r of pee(t))ktt.call(t,r)&&vee(e,r,t[r]);return e},gee=(e,t)=>Ttt(e,Stt(t));var Bf=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_ee=(e,t)=>{for(var r in t)EM(e,r,{get:t[r],enumerable:!0})},xee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Mtt(t))!yee.call(e,i)&&i!==r&&EM(e,i,{get:()=>t[i],enumerable:!(n=Att(t,i))||n.enumerable});return e};var Ctt=(e,t,r)=>(r=e!=null?wtt(Ett(e)):{},xee(t||!e||!e.__esModule?EM(r,"default",{value:e,enumerable:!0}):r,e)),O1=e=>xee(EM({},"__esModule",{value:!0}),e);var rL=Ae(bee=>{"use strict";bee.version="3.0.3"});var Tee=Ae((wee,iL)=>{(function(t,r,n){r[t]=r[t]||n(),typeof iL!="undefined"&&iL.exports&&(iL.exports=r[t])})("Promise",typeof window!="undefined"?window:wee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(k,E,A,L){return Object.defineProperty(k,E,{value:A,writable:!0,configurable:L!==!1})}}catch(v){t=function(E,A,L){return E[A]=L,E}}n=function(){var k,E,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),E?E.next=A:k=A,E=A,A=void 0},drain:function(){var C=k;for(k=E=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(v,k){n.add(v,k),r||(r=a(n.drain))}function s(v){var k,E=typeof v;return v!=null&&(E=="object"||E=="function")&&(k=v.then),typeof k=="function"?k:!1}function u(){for(var v=0;v0&&o(u,E))}catch(A){c.call(new d(E),A)}}}function c(v){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=v,k.state=2,k.chain.length>0&&o(u,k))}function h(v,k,E,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(X){return t.call(X)},n=self.document;function i(X){return X&&(X.ownerDocument||X.document||X).documentElement}function a(X){return X&&(X.ownerDocument&&X.ownerDocument.defaultView||X.document&&X||X.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(X){r=function(se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=se[Le];return We}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(X){var o=this.Element.prototype,s=o.setAttribute,u=o.setAttributeNS,l=this.CSSStyleDeclaration.prototype,f=l.setProperty;o.setAttribute=function(se,Le){s.call(this,se,Le+"")},o.setAttributeNS=function(se,Le,We){u.call(this,se,Le,We+"")},l.setProperty=function(se,Le,We){f.call(this,se,Le+"",We)}}e.ascending=c;function c(X,se){return Xse?1:X>=se?0:NaN}e.descending=function(X,se){return seX?1:se>=X?0:NaN},e.min=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}return Ye},e.max=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}return Ye},e.extent=function(X,se){var Le=-1,We=X.length,Ye,it,Nt;if(arguments.length===1){for(;++Le=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt1)return Nt/(er-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function p(X){return{left:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)<0?We=it+1:Ye=it}return We},right:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)>0?Ye=it:We=it+1}return We}}}var x=p(c);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(X){return p(X.length===1?function(se,Le){return c(X(se),Le)}:X)},e.shuffle=function(X,se,Le){(We=arguments.length)<3&&(Le=X.length,We<2&&(se=0));for(var We=Le-se,Ye,it;We;)it=Math.random()*We--|0,Ye=X[We+se],X[We+se]=X[it+se],X[it+se]=Ye;return X},e.permute=function(X,se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=X[se[Le]];return We},e.pairs=function(X){for(var se=0,Le=X.length-1,We,Ye=X[0],it=new Array(Le<0?0:Le);se=0;)for(Nt=X[se],Le=Nt.length;--Le>=0;)it[--Ye]=Nt[Le];return it};var v=Math.abs;e.range=function(X,se,Le){if(arguments.length<3&&(Le=1,arguments.length<2&&(se=X,X=0)),(se-X)/Le===1/0)throw new Error("infinite range");var We=[],Ye=k(v(Le)),it=-1,Nt;if(X*=Ye,se*=Ye,Le*=Ye,Le<0)for(;(Nt=X+Le*++it)>se;)We.push(Nt/Ye);else for(;(Nt=X+Le*++it)=se.length)return Ye?Ye.call(X,er):We?er.sort(We):er;for(var wr=-1,ni=er.length,Wr=se[_r++],Ci,Ji,ai,Ti=new A,Bi;++wr=se.length)return mt;var _r=[],wr=Le[er++];return mt.forEach(function(ni,Wr){_r.push({key:ni,values:Nt(Wr,er)})}),wr?_r.sort(function(ni,Wr){return wr(ni.key,Wr.key)}):_r}return X.map=function(mt,er){return it(er,mt,0)},X.entries=function(mt){return Nt(it(e.map,mt,0),0)},X.key=function(mt){return se.push(mt),X},X.sortKeys=function(mt){return Le[se.length-1]=mt,X},X.sortValues=function(mt){return We=mt,X},X.rollup=function(mt){return Ye=mt,X},X},e.set=function(X){var se=new U;if(X)for(var Le=0,We=X.length;Le=0&&(We=X.slice(Le+1),X=X.slice(0,Le)),X)return arguments.length<2?this[X].on(We):this[X].on(We,se);if(arguments.length===2){if(se==null)for(X in this)this.hasOwnProperty(X)&&this[X].on(We,null);return this}};function ne(X){var se=[],Le=new A;function We(){for(var Ye=se,it=-1,Nt=Ye.length,mt;++it=0&&(Le=X.slice(0,se))!=="xmlns"&&(X=X.slice(se+1)),Ze.hasOwnProperty(Le)?{space:Ze[Le],local:X}:X}},Re.attr=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node();return X=e.ns.qualify(X),X.local?Le.getAttributeNS(X.space,X.local):Le.getAttribute(X)}for(se in X)this.each(et(se,X[se]));return this}return this.each(et(X,se))};function et(X,se){X=e.ns.qualify(X);function Le(){this.removeAttribute(X)}function We(){this.removeAttributeNS(X.space,X.local)}function Ye(){this.setAttribute(X,se)}function it(){this.setAttributeNS(X.space,X.local,se)}function Nt(){var er=se.apply(this,arguments);er==null?this.removeAttribute(X):this.setAttribute(X,er)}function mt(){var er=se.apply(this,arguments);er==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,er)}return se==null?X.local?We:Le:typeof se=="function"?X.local?mt:Nt:X.local?it:Ye}function gt(X){return X.trim().replace(/\s+/g," ")}Re.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node(),We=(X=Qe(X)).length,Ye=-1;if(se=Le.classList){for(;++Ye=0;)(it=Le[We])&&(Ye&&Ye!==it.nextSibling&&Ye.parentNode.insertBefore(it,Ye),Ye=it);return this},Re.sort=function(X){X=nt.apply(this,arguments);for(var se=-1,Le=this.length;++se=se&&(se=Ye+1);!(er=Nt[se])&&++se0&&(X=X.slice(0,Ye));var Nt=Je.get(X);Nt&&(X=Nt,it=Vt);function mt(){var wr=this[We];wr&&(this.removeEventListener(X,wr,wr.$),delete this[We])}function er(){var wr=it(se,r(arguments));mt.call(this),this.addEventListener(X,this[We]=wr,wr.$=Le),wr._=se}function _r(){var wr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),ni;for(var Wr in this)if(ni=Wr.match(wr)){var Ci=this[Wr];this.removeEventListener(ni[1],Ci,Ci.$),delete this[Wr]}}return Ye?se?er:mt:se?W:_r}var Je=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Je.forEach(function(X){"on"+X in n&&Je.remove(X)});function Mt(X,se){return function(Le){var We=e.event;e.event=Le,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=We}}}function Vt(X,se){var Le=Mt(X,se);return function(We){var Ye=this,it=We.relatedTarget;(!it||it!==Ye&&!(it.compareDocumentPosition(Ye)&8))&&Le.call(Ye,We)}}var Kt,ir=0;function fr(X){var se=".dragsuppress-"+ ++ir,Le="click"+se,We=e.select(a(X)).on("touchmove"+se,be).on("dragstart"+se,be).on("selectstart"+se,be);if(Kt==null&&(Kt="onselectstart"in X?!1:G(X.style,"userSelect")),Kt){var Ye=i(X).style,it=Ye[Kt];Ye[Kt]="none"}return function(Nt){if(We.on(se,null),Kt&&(Ye[Kt]=it),Nt){var mt=function(){We.on(Le,null)};We.on(Le,function(){be(),mt()},!0),setTimeout(mt,0)}}}e.mouse=function(X){return De(X,ze())};var Ot=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function De(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Le=X.ownerSVGElement||X;if(Le.createSVGPoint){var We=Le.createSVGPoint();if(Ot<0){var Ye=a(X);if(Ye.scrollX||Ye.scrollY){Le=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var it=Le[0][0].getScreenCTM();Ot=!(it.f||it.e),Le.remove()}}return Ot?(We.x=se.pageX,We.y=se.pageY):(We.x=se.clientX,We.y=se.clientY),We=We.matrixTransform(X.getScreenCTM().inverse()),[We.x,We.y]}var Nt=X.getBoundingClientRect();return[se.clientX-Nt.left-X.clientLeft,se.clientY-Nt.top-X.clientTop]}e.touch=function(X,se,Le){if(arguments.length<3&&(Le=se,se=ze().changedTouches),se){for(var We=0,Ye=se.length,it;We0?1:X<0?-1:0}function St(X,se,Le){return(se[0]-X[0])*(Le[1]-X[1])-(se[1]-X[1])*(Le[0]-X[0])}function Zt(X){return X>1?0:X<-1?Ie:Math.acos(X)}function qr(X){return X>1?ue:X<-1?-ue:Math.asin(X)}function Lr(X){return((X=Math.exp(X))-1/X)/2}function vr(X){return((X=Math.exp(X))+1/X)/2}function Er(X){return((X=Math.exp(2*X))-1)/(X+1)}function si(X){return(X=Math.sin(X/2))*X}var Ei=Math.SQRT2,Si=2,xi=4;e.interpolateZoom=function(X,se){var Le=X[0],We=X[1],Ye=X[2],it=se[0],Nt=se[1],mt=se[2],er=it-Le,_r=Nt-We,wr=er*er+_r*_r,ni,Wr;if(wr0&&(qo=qo.transition().duration(Nt)),qo.call(Wi.event)}function vl(){Ti&&Ti.domain(ai.range().map(function(qo){return(qo-X.x)/X.k}).map(ai.invert)),en&&en.domain(Bi.range().map(function(qo){return(qo-X.y)/X.k}).map(Bi.invert))}function wl(qo){mt++||qo({type:"zoomstart"})}function au(qo){vl(),qo({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Al(qo){--mt||(qo({type:"zoomend"}),Le=null)}function nu(){var qo=this,Rl=Ji.of(qo,arguments),pu=0,xu=e.select(a(qo)).on(_r,xf).on(wr,hf),of=bi(e.mouse(qo)),ff=fr(qo);ys.call(qo),wl(Rl);function xf(){pu=1,Ko(e.mouse(qo),of),au(Rl)}function hf(){xu.on(_r,null).on(wr,null),ff(pu),Al(Rl)}}function Bu(){var qo=this,Rl=Ji.of(qo,arguments),pu={},xu=0,of,ff=".zoom-"+e.event.changedTouches[0].identifier,xf="touchmove"+ff,hf="touchend"+ff,dc=[],Gt=e.select(qo),jr=fr(qo);Mn(),wl(Rl),Gt.on(er,null).on(Wr,Mn);function _i(){var ha=e.touches(qo);return of=X.k,ha.forEach(function(Io){Io.identifier in pu&&(pu[Io.identifier]=bi(Io))}),ha}function Mn(){var ha=e.event.target;e.select(ha).on(xf,Ta).on(hf,fa),dc.push(ha);for(var Io=e.event.changedTouches,Vs=0,Hs=Io.length;Vs1){var Ps=is[0],qs=is[1],Do=Ps[0]-qs[0],kn=Ps[1]-qs[1];xu=Do*Do+kn*kn}}function Ta(){var ha=e.touches(qo),Io,Vs,Hs,is;ys.call(qo);for(var su=0,Ps=ha.length;su1?1:se,Le=Le<0?0:Le>1?1:Le,Ye=Le<=.5?Le*(1+se):Le+se-Le*se,We=2*Le-Ye;function it(mt){return mt>360?mt-=360:mt<0&&(mt+=360),mt<60?We+(Ye-We)*mt/60:mt<180?Ye:mt<240?We+(Ye-We)*(240-mt)/60:We}function Nt(mt){return Math.round(it(mt)*255)}return new ki(Nt(X+120),Nt(X),Nt(X-120))}e.hcl=Bt;function Bt(X,se,Le){return this instanceof Bt?(this.h=+X,this.c=+se,void(this.l=+Le)):arguments.length<2?X instanceof Bt?new Bt(X.h,X.c,X.l):X instanceof zr?Yr(X.l,X.a,X.b):Yr((X=Or((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new Bt(X,se,Le)}var sr=Bt.prototype=new Di;sr.brighter=function(X){return new Bt(this.h,this.c,Math.min(100,this.l+Tr*(arguments.length?X:1)))},sr.darker=function(X){return new Bt(this.h,this.c,Math.max(0,this.l-Tr*(arguments.length?X:1)))},sr.rgb=function(){return br(this.h,this.c,this.l).rgb()};function br(X,se,Le){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new zr(Le,Math.cos(X*=de)*se,Math.sin(X)*se)}e.lab=zr;function zr(X,se,Le){return this instanceof zr?(this.l=+X,this.a=+se,void(this.b=+Le)):arguments.length<2?X instanceof zr?new zr(X.l,X.a,X.b):X instanceof Bt?br(X.h,X.c,X.l):Or((X=ki(X)).r,X.g,X.b):new zr(X,se,Le)}var Tr=18,Rr=.95047,Br=1,oi=1.08883,vi=zr.prototype=new Di;vi.brighter=function(X){return new zr(Math.min(100,this.l+Tr*(arguments.length?X:1)),this.a,this.b)},vi.darker=function(X){return new zr(Math.max(0,this.l-Tr*(arguments.length?X:1)),this.a,this.b)},vi.rgb=function(){return Pi(this.l,this.a,this.b)};function Pi(X,se,Le){var We=(X+16)/116,Ye=We+se/500,it=We-Le/200;return Ye=Ni(Ye)*Rr,We=Ni(We)*Br,it=Ni(it)*oi,new ki(ti(3.2404542*Ye-1.5371385*We-.4985314*it),ti(-.969266*Ye+1.8760108*We+.041556*it),ti(.0556434*Ye-.2040259*We+1.0572252*it))}function Yr(X,se,Le){return X>0?new Bt(Math.atan2(Le,se)*ht,Math.sqrt(se*se+Le*Le),X):new Bt(NaN,NaN,X)}function Ni(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function Ur(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ti(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=ki;function ki(X,se,Le){return this instanceof ki?(this.r=~~X,this.g=~~se,void(this.b=~~Le)):arguments.length<2?X instanceof ki?new ki(X.r,X.g,X.b):sn(""+X,ki,Dt):new ki(X,se,Le)}function ji(X){return new ki(X>>16,X>>8&255,X&255)}function Vi(X){return ji(X)+""}var zi=ki.prototype=new Di;zi.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Le=this.g,We=this.b,Ye=30;return!se&&!Le&&!We?new ki(Ye,Ye,Ye):(se&&se>4,We=We>>4|We,Ye=er&240,Ye=Ye>>4|Ye,it=er&15,it=it<<4|it):X.length===7&&(We=(er&16711680)>>16,Ye=(er&65280)>>8,it=er&255)),se(We,Ye,it))}function fi(X,se,Le){var We=Math.min(X/=255,se/=255,Le/=255),Ye=Math.max(X,se,Le),it=Ye-We,Nt,mt,er=(Ye+We)/2;return it?(mt=er<.5?it/(Ye+We):it/(2-Ye-We),X==Ye?Nt=(se-Le)/it+(se0&&er<1?0:Nt),new Lt(Nt,mt,er)}function Or(X,se,Le){X=st(X),se=st(se),Le=st(Le);var We=Ur((.4124564*X+.3575761*se+.1804375*Le)/Rr),Ye=Ur((.2126729*X+.7151522*se+.072175*Le)/Br),it=Ur((.0193339*X+.119192*se+.9503041*Le)/oi);return zr(116*Ye-16,500*(We-Ye),200*(Ye-it))}function st(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function Wt(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var tr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});tr.forEach(function(X,se){tr.set(X,ji(se))});function or(X){return typeof X=="function"?X:function(){return X}}e.functor=or,e.xhr=Nr(H);function Nr(X){return function(se,Le,We){return arguments.length===2&&typeof Le=="function"&&(We=Le,Le=null),hi(se,Le,X,We)}}function hi(X,se,Le,We){var Ye={},it=e.dispatch("beforesend","progress","load","error"),Nt={},mt=new XMLHttpRequest,er=null;self.XDomainRequest&&!("withCredentials"in mt)&&/^(http(s)?:)?\/\//.test(X)&&(mt=new XDomainRequest),"onload"in mt?mt.onload=mt.onerror=_r:mt.onreadystatechange=function(){mt.readyState>3&&_r()};function _r(){var wr=mt.status,ni;if(!wr&&Qr(mt)||wr>=200&&wr<300||wr===304){try{ni=Le.call(Ye,mt)}catch(Wr){it.error.call(Ye,Wr);return}it.load.call(Ye,ni)}else it.error.call(Ye,mt)}return mt.onprogress=function(wr){var ni=e.event;e.event=wr;try{it.progress.call(Ye,mt)}finally{e.event=ni}},Ye.header=function(wr,ni){return wr=(wr+"").toLowerCase(),arguments.length<2?Nt[wr]:(ni==null?delete Nt[wr]:Nt[wr]=ni+"",Ye)},Ye.mimeType=function(wr){return arguments.length?(se=wr==null?null:wr+"",Ye):se},Ye.responseType=function(wr){return arguments.length?(er=wr,Ye):er},Ye.response=function(wr){return Le=wr,Ye},["get","post"].forEach(function(wr){Ye[wr]=function(){return Ye.send.apply(Ye,[wr].concat(r(arguments)))}}),Ye.send=function(wr,ni,Wr){if(arguments.length===2&&typeof ni=="function"&&(Wr=ni,ni=null),mt.open(wr,X,!0),se!=null&&!("accept"in Nt)&&(Nt.accept=se+",*/*"),mt.setRequestHeader)for(var Ci in Nt)mt.setRequestHeader(Ci,Nt[Ci]);return se!=null&&mt.overrideMimeType&&mt.overrideMimeType(se),er!=null&&(mt.responseType=er),Wr!=null&&Ye.on("error",Wr).on("load",function(Ji){Wr(null,Ji)}),it.beforesend.call(Ye,mt),mt.send(ni==null?null:ni),Ye},Ye.abort=function(){return mt.abort(),Ye},e.rebind(Ye,it,"on"),We==null?Ye:Ye.get(Gi(We))}function Gi(X){return X.length===1?function(se,Le){X(se==null?Le:null)}:X}function Qr(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Le=new RegExp('["'+X+` ]`),We=X.charCodeAt(0);function Ye(_r,wr,ni){arguments.length<3&&(ni=wr,wr=null);var Wr=hi(_r,se,wr==null?it:Nt(wr),ni);return Wr.row=function(Ci){return arguments.length?Wr.response((wr=Ci)==null?it:Nt(Ci)):wr},Wr}function it(_r){return Ye.parse(_r.responseText)}function Nt(_r){return function(wr){return Ye.parse(wr.responseText,_r)}}Ye.parse=function(_r,wr){var ni;return Ye.parseRows(_r,function(Wr,Ci){if(ni)return ni(Wr,Ci-1);var Ji=function(ai){for(var Ti={},Bi=Wr.length,en=0;en=Ji)return Wr;if(en)return en=!1,ni;var ao=ai;if(_r.charCodeAt(ao)===34){for(var yo=ao;yo++24?(isFinite(se)&&(clearTimeout(xn),xn=setTimeout(Fn,se)),fn=0):(fn=1,_a(Fn))}e.timer.flush=function(){ia(),za()};function ia(){for(var X=Date.now(),se=Ui;se;)X>=se.t&&se.c(X-se.t)&&(se.c=null),se=se.n;return X}function za(){for(var X,se=Ui,Le=1/0;se;)se.c?(se.t=0;--mt)ai.push(Ye[_r[ni[mt]][2]]);for(mt=+Ci;mt1&&St(X[Le[We-2]],X[Le[We-1]],X[Ye])<=0;)--We;Le[We++]=Ye}return Le.slice(0,We)}function Dn(X,se){return X[0]-se[0]||X[1]-se[1]}e.geom.polygon=function(X){return te(X,un),X};var un=e.geom.polygon.prototype=[];un.area=function(){for(var X=-1,se=this.length,Le,We=this[se-1],Ye=0;++XFe)mt=mt.L;else if(Nt=se-ln(mt,Le),Nt>Fe){if(!mt.R){We=mt;break}mt=mt.R}else{it>-Fe?(We=mt.P,Ye=mt):Nt>-Fe?(We=mt,Ye=mt.N):We=Ye=mt;break}var er=to(X);if(Ha.insert(We,er),!(!We&&!Ye)){if(We===Ye){Yn(We),Ye=to(We.site),Ha.insert(er,Ye),er.edge=Ye.edge=qa(We.site,er.site),Fi(We),Fi(Ye);return}if(!Ye){er.edge=qa(We.site,er.site);return}Yn(We),Yn(Ye);var _r=We.site,wr=_r.x,ni=_r.y,Wr=X.x-wr,Ci=X.y-ni,Ji=Ye.site,ai=Ji.x-wr,Ti=Ji.y-ni,Bi=2*(Wr*Ti-Ci*ai),en=Wr*Wr+Ci*Ci,Wi=ai*ai+Ti*Ti,bi={x:(Ti*en-Ci*Wi)/Bi+wr,y:(Wr*Wi-ai*en)/Bi+ni};Vo(Ye.edge,_r,Ji,bi),er.edge=qa(_r,X,null,bi),Ye.edge=qa(X,Ji,null,bi),Fi(We),Fi(Ye)}}function pa(X,se){var Le=X.site,We=Le.x,Ye=Le.y,it=Ye-se;if(!it)return We;var Nt=X.P;if(!Nt)return-1/0;Le=Nt.site;var mt=Le.x,er=Le.y,_r=er-se;if(!_r)return mt;var wr=mt-We,ni=1/it-1/_r,Wr=wr/_r;return ni?(-Wr+Math.sqrt(Wr*Wr-2*ni*(wr*wr/(-2*_r)-er+_r/2+Ye-it/2)))/ni+We:(We+mt)/2}function ln(X,se){var Le=X.N;if(Le)return pa(Le,se);var We=X.site;return We.y===se?We.x:1/0}function ka(X){this.site=X,this.edges=[]}ka.prototype.prepare=function(){for(var X=this.edges,se=X.length,Le;se--;)Le=X[se].edge,(!Le.b||!Le.a)&&X.splice(se,1);return X.sort(bo),X.length};function va(X){for(var se=X[0][0],Le=X[1][0],We=X[0][1],Ye=X[1][1],it,Nt,mt,er,_r=Ea,wr=_r.length,ni,Wr,Ci,Ji,ai,Ti;wr--;)if(ni=_r[wr],!(!ni||!ni.prepare()))for(Ci=ni.edges,Ji=Ci.length,Wr=0;WrFe||v(er-Nt)>Fe)&&(Ci.splice(Wr,0,new Pa(jo(ni.site,Ti,v(mt-se)Fe?{x:se,y:v(it-se)Fe?{x:v(Nt-Ye)Fe?{x:Le,y:v(it-Le)Fe?{x:v(Nt-We)=-Pe)){var Wr=er*er+_r*_r,Ci=wr*wr+Ti*Ti,Ji=(Ti*Wr-_r*Ci)/ni,ai=(er*Ci-wr*Wr)/ni,Ti=ai+mt,Bi=ts.pop()||new Co;Bi.arc=X,Bi.site=Ye,Bi.x=Ji+Nt,Bi.y=Ti+Math.sqrt(Ji*Ji+ai*ai),Bi.cy=Ti,X.circle=Bi;for(var en=null,Wi=Xn._;Wi;)if(Bi.y0)){if(ai/=Ci,Ci<0){if(ai0){if(ai>Wr)return;ai>ni&&(ni=ai)}if(ai=Le-mt,!(!Ci&&ai<0)){if(ai/=Ci,Ci<0){if(ai>Wr)return;ai>ni&&(ni=ai)}else if(Ci>0){if(ai0)){if(ai/=Ji,Ji<0){if(ai0){if(ai>Wr)return;ai>ni&&(ni=ai)}if(ai=We-er,!(!Ji&&ai<0)){if(ai/=Ji,Ji<0){if(ai>Wr)return;ai>ni&&(ni=ai)}else if(Ji>0){if(ai0&&(Ye.a={x:mt+ni*Ci,y:er+ni*Ji}),Wr<1&&(Ye.b={x:mt+Wr*Ci,y:er+Wr*Ji}),Ye}}}}}}function Qi(X){for(var se=Bo,Le=xa(X[0][0],X[0][1],X[1][0],X[1][1]),We=se.length,Ye;We--;)Ye=se[We],(!Nn(Ye,X)||!Le(Ye)||v(Ye.a.x-Ye.b.x)=it)return;if(wr>Wr){if(!We)We={x:Ji,y:Nt};else if(We.y>=mt)return;Le={x:Ji,y:mt}}else{if(!We)We={x:Ji,y:mt};else if(We.y1)if(wr>Wr){if(!We)We={x:(Nt-Bi)/Ti,y:Nt};else if(We.y>=mt)return;Le={x:(mt-Bi)/Ti,y:mt}}else{if(!We)We={x:(mt-Bi)/Ti,y:mt};else if(We.y=it)return;Le={x:it,y:Ti*it+Bi}}else{if(!We)We={x:it,y:Ti*it+Bi};else if(We.x=wr&&Bi.x<=Wr&&Bi.y>=ni&&Bi.y<=Ci?[[wr,Ci],[Wr,Ci],[Wr,ni],[wr,ni]]:[];en.point=er[ai]}),_r}function mt(er){return er.map(function(_r,wr){return{x:Math.round(We(_r,wr)/Fe)*Fe,y:Math.round(Ye(_r,wr)/Fe)*Fe,i:wr}})}return Nt.links=function(er){return bs(mt(er)).edges.filter(function(_r){return _r.l&&_r.r}).map(function(_r){return{source:er[_r.l.i],target:er[_r.r.i]}})},Nt.triangles=function(er){var _r=[];return bs(mt(er)).cells.forEach(function(wr,ni){for(var Wr=wr.site,Ci=wr.edges.sort(bo),Ji=-1,ai=Ci.length,Ti,Bi,en=Ci[ai-1].edge,Wi=en.l===Wr?en.r:en.l;++JiWi&&(Wi=wr.x),wr.y>bi&&(bi=wr.y),Ci.push(wr.x),Ji.push(wr.y);else for(ai=0;aiWi&&(Wi=ao),yo>bi&&(bi=yo),Ci.push(ao),Ji.push(yo)}var Ko=Wi-Bi,Ms=bi-en;Ko>Ms?bi=en+Ko:Wi=Bi+Ms;function vl(Al,nu,Bu,qu,Ju,qo,Rl,pu){if(!(isNaN(Bu)||isNaN(qu)))if(Al.leaf){var xu=Al.x,of=Al.y;if(xu!=null)if(v(xu-Bu)+v(of-qu)<.01)wl(Al,nu,Bu,qu,Ju,qo,Rl,pu);else{var ff=Al.point;Al.x=Al.y=Al.point=null,wl(Al,ff,xu,of,Ju,qo,Rl,pu),wl(Al,nu,Bu,qu,Ju,qo,Rl,pu)}else Al.x=Bu,Al.y=qu,Al.point=nu}else wl(Al,nu,Bu,qu,Ju,qo,Rl,pu)}function wl(Al,nu,Bu,qu,Ju,qo,Rl,pu){var xu=(Ju+Rl)*.5,of=(qo+pu)*.5,ff=Bu>=xu,xf=qu>=of,hf=xf<<1|ff;Al.leaf=!1,Al=Al.nodes[hf]||(Al.nodes[hf]=an()),ff?Ju=xu:Rl=xu,xf?qo=of:pu=of,vl(Al,nu,Bu,qu,Ju,qo,Rl,pu)}var au=an();if(au.add=function(Al){vl(au,Al,+ni(Al,++ai),+Wr(Al,ai),Bi,en,Wi,bi)},au.visit=function(Al){mn(Al,au,Bi,en,Wi,bi)},au.find=function(Al){return Ga(au,Al[0],Al[1],Bi,en,Wi,bi)},ai=-1,se==null){for(;++aiit||Wr>Nt||Ci=ao,Ms=Le>=yo,vl=Ms<<1|Ko,wl=vl+4;vlLe&&(it=se.slice(Le,it),mt[Nt]?mt[Nt]+=it:mt[++Nt]=it),(We=We[0])===(Ye=Ye[0])?mt[Nt]?mt[Nt]+=Ye:mt[++Nt]=Ye:(mt[++Nt]=null,er.push({i:Nt,x:Xi(We,Ye)})),Le=yn.lastIndex;return Le=0&&!(We=e.interpolators[Le](X,se)););return We}e.interpolators=[function(X,se){var Le=typeof se;return(Le==="string"?tr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?ca:qn:se instanceof Di?ca:Array.isArray(se)?ba:Le==="object"&&isNaN(se)?bn:Xi)(X,se)}],e.interpolateArray=ba;function ba(X,se){var Le=[],We=[],Ye=X.length,it=se.length,Nt=Math.min(X.length,se.length),mt;for(mt=0;mt=0?X.slice(0,se):X,We=se>=0?X.slice(se+1):"in";return Le=Aa.get(Le)||Da,We=Ln.get(We)||H,wo(We(Le.apply(null,t.call(arguments,1))))};function wo(X){return function(se){return se<=0?0:se>=1?1:X(se)}}function wa(X){return function(se){return 1-X(1-se)}}function $i(X){return function(se){return .5*(se<.5?X(2*se):2-X(2-2*se))}}function ea(X){return X*X}function Sa(X){return X*X*X}function Za(X){if(X<=0)return 0;if(X>=1)return 1;var se=X*X,Le=se*X;return 4*(X<.5?Le:3*(X-se)+Le-.75)}function xo(X){return function(se){return Math.pow(se,X)}}function Wa(X){return 1-Math.cos(X*ue)}function hn(X){return Math.pow(2,10*(X-1))}function Un(X){return 1-Math.sqrt(1-X*X)}function Ss(X,se){var Le;return arguments.length<2&&(se=.45),arguments.length?Le=se/lt*Math.asin(1/X):(X=1,Le=se/4),function(We){return 1+X*Math.pow(2,-10*We)*Math.sin((We-Le)*lt/se)}}function Kn(X){return X||(X=1.70158),function(se){return se*se*((X+1)*se-X)}}function ns(X){return X<1/2.75?7.5625*X*X:X<2/2.75?7.5625*(X-=1.5/2.75)*X+.75:X<2.5/2.75?7.5625*(X-=2.25/2.75)*X+.9375:7.5625*(X-=2.625/2.75)*X+.984375}e.interpolateHcl=Jo;function Jo(X,se){X=e.hcl(X),se=e.hcl(se);var Le=X.h,We=X.c,Ye=X.l,it=se.h-Le,Nt=se.c-We,mt=se.l-Ye;return isNaN(Nt)&&(Nt=0,We=isNaN(We)?se.c:We),isNaN(it)?(it=0,Le=isNaN(Le)?se.h:Le):it>180?it-=360:it<-180&&(it+=360),function(er){return br(Le+it*er,We+Nt*er,Ye+mt*er)+""}}e.interpolateHsl=vo;function vo(X,se){X=e.hsl(X),se=e.hsl(se);var Le=X.h,We=X.s,Ye=X.l,it=se.h-Le,Nt=se.s-We,mt=se.l-Ye;return isNaN(Nt)&&(Nt=0,We=isNaN(We)?se.s:We),isNaN(it)?(it=0,Le=isNaN(Le)?se.h:Le):it>180?it-=360:it<-180&&(it+=360),function(er){return Dt(Le+it*er,We+Nt*er,Ye+mt*er)+""}}e.interpolateLab=ma;function ma(X,se){X=e.lab(X),se=e.lab(se);var Le=X.l,We=X.a,Ye=X.b,it=se.l-Le,Nt=se.a-We,mt=se.b-Ye;return function(er){return Pi(Le+it*er,We+Nt*er,Ye+mt*er)+""}}e.interpolateRound=ja;function ja(X,se){return se-=X,function(Le){return Math.round(X+se*Le)}}e.transform=function(X){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Le){if(Le!=null){se.setAttribute("transform",Le);var We=se.transform.baseVal.consolidate()}return new To(We?We.matrix:ho)})(X)};function To(X){var se=[X.a,X.b],Le=[X.c,X.d],We=la(se),Ye=Ao(se,Le),it=la(Ki(Le,se,-Ye))||0;se[0]*Le[1]180?se+=360:se-X>180&&(X+=360),We.push({i:Le.push(Ka(Le)+"rotate(",null,")")-2,x:Xi(X,se)})):se&&Le.push(Ka(Le)+"rotate("+se+")")}function En(X,se,Le,We){X!==se?We.push({i:Le.push(Ka(Le)+"skewX(",null,")")-2,x:Xi(X,se)}):se&&Le.push(Ka(Le)+"skewX("+se+")")}function Mo(X,se,Le,We){if(X[0]!==se[0]||X[1]!==se[1]){var Ye=Le.push(Ka(Le)+"scale(",null,",",null,")");We.push({i:Ye-4,x:Xi(X[0],se[0])},{i:Ye-2,x:Xi(X[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Le.push(Ka(Le)+"scale("+se+")")}function Ds(X,se){var Le=[],We=[];return X=e.transform(X),se=e.transform(se),Ca(X.translate,se.translate,Le,We),ta(X.rotate,se.rotate,Le,We),En(X.skew,se.skew,Le,We),Mo(X.scale,se.scale,Le,We),X=se=null,function(Ye){for(var it=-1,Nt=We.length,mt;++it0?it=bi:(Le.c=null,Le.t=NaN,Le=null,se.end({type:"end",alpha:it=0})):bi>0&&(se.start({type:"start",alpha:it=bi}),Le=Wn(X.tick)),X):it},X.start=function(){var bi,ao=Ci.length,yo=Ji.length,Ko=We[0],Ms=We[1],vl,wl;for(bi=0;bi=0;)it.push(wr=_r[er]),wr.parent=mt,wr.depth=mt.depth+1;Le&&(mt.value=0),mt.children=_r}else Le&&(mt.value=+Le.call(We,mt,mt.depth)||0),delete mt.children;return uo(Ye,function(ni){var Wr,Ci;X&&(Wr=ni.children)&&Wr.sort(X),Le&&(Ci=ni.parent)&&(Ci.value+=ni.value)}),Nt}return We.sort=function(Ye){return arguments.length?(X=Ye,We):X},We.children=function(Ye){return arguments.length?(se=Ye,We):se},We.value=function(Ye){return arguments.length?(Le=Ye,We):Le},We.revalue=function(Ye){return Le&&(Sn(Ye,function(it){it.children&&(it.value=0)}),uo(Ye,function(it){var Nt;it.children||(it.value=+Le.call(We,it,it.depth)||0),(Nt=it.parent)&&(Nt.value+=it.value)})),Ye},We};function $n(X,se){return e.rebind(X,se,"sort","children","value"),X.nodes=X,X.links=os,X}function Sn(X,se){for(var Le=[X];(X=Le.pop())!=null;)if(se(X),(Ye=X.children)&&(We=Ye.length))for(var We,Ye;--We>=0;)Le.push(Ye[We])}function uo(X,se){for(var Le=[X],We=[];(X=Le.pop())!=null;)if(We.push(X),(Nt=X.children)&&(it=Nt.length))for(var Ye=-1,it,Nt;++YeYe&&(Ye=mt),We.push(mt)}for(Nt=0;NtWe&&(Le=se,We=Ye);return Le}function ro(X){return X.reduce(Ma,0)}function Ma(X,se){return X+se[1]}e.layout.histogram=function(){var X=!0,se=Number,Le=Oo,We=io;function Ye(it,Wr){for(var mt=[],er=it.map(se,this),_r=Le.call(this,er,Wr),wr=We.call(this,_r,er,Wr),ni,Wr=-1,Ci=er.length,Ji=wr.length-1,ai=X?1:1/Ci,Ti;++Wr0)for(Wr=-1;++Wr=_r[0]&&Ti<=_r[1]&&(ni=mt[e.bisect(wr,Ti,1,Ji)-1],ni.y+=ai,ni.push(it[Wr]));return mt}return Ye.value=function(it){return arguments.length?(se=it,Ye):se},Ye.range=function(it){return arguments.length?(Le=or(it),Ye):Le},Ye.bins=function(it){return arguments.length?(We=typeof it=="number"?function(Nt){return aa(Nt,it)}:or(it),Ye):We},Ye.frequency=function(it){return arguments.length?(X=!!it,Ye):X},Ye};function io(X,se){return aa(X,Math.ceil(Math.log(se.length)/Math.LN2+1))}function aa(X,se){for(var Le=-1,We=+X[0],Ye=(X[1]-We)/se,it=[];++Le<=se;)it[Le]=Ye*Le+We;return it}function Oo(X){return[e.min(X),e.max(X)]}e.layout.pack=function(){var X=e.layout.hierarchy().sort(No),se=0,Le=[1,1],We;function Ye(it,Nt){var mt=X.call(this,it,Nt),er=mt[0],_r=Le[0],wr=Le[1],ni=We==null?Math.sqrt:typeof We=="function"?We:function(){return We};if(er.x=er.y=0,uo(er,function(Ci){Ci.r=+ni(Ci.value)}),uo(er,no),se){var Wr=se*(We?1:Math.max(2*er.r/_r,2*er.r/wr))/2;uo(er,function(Ci){Ci.r+=Wr}),uo(er,no),uo(er,function(Ci){Ci.r-=Wr})}return Xs(er,_r/2,wr/2,We?1:1/Math.max(2*er.r/_r,2*er.r/wr)),mt}return Ye.size=function(it){return arguments.length?(Le=it,Ye):Le},Ye.radius=function(it){return arguments.length?(We=it==null||typeof it=="function"?it:+it,Ye):We},Ye.padding=function(it){return arguments.length?(se=+it,Ye):se},$n(Ye,X)};function No(X,se){return X.value-se.value}function Zs(X,se){var Le=X._pack_next;X._pack_next=se,se._pack_prev=X,se._pack_next=Le,Le._pack_prev=se}function Fs(X,se){X._pack_next=se,se._pack_prev=X}function ws(X,se){var Le=se.x-X.x,We=se.y-X.y,Ye=X.r+se.r;return .999*Ye*Ye>Le*Le+We*We}function no(X){if(!(se=X.children)||!(Wr=se.length))return;var se,Le=1/0,We=-1/0,Ye=1/0,it=-1/0,Nt,mt,er,_r,wr,ni,Wr;function Ci(bi){Le=Math.min(bi.x-bi.r,Le),We=Math.max(bi.x+bi.r,We),Ye=Math.min(bi.y-bi.r,Ye),it=Math.max(bi.y+bi.r,it)}if(se.forEach(Ls),Nt=se[0],Nt.x=-Nt.r,Nt.y=0,Ci(Nt),Wr>1&&(mt=se[1],mt.x=mt.r,mt.y=0,Ci(mt),Wr>2))for(er=se[2],oa(Nt,mt,er),Ci(er),Zs(Nt,er),Nt._pack_prev=er,Zs(er,mt),mt=Nt._pack_next,_r=3;_rTi.x&&(Ti=ao),ao.depth>Bi.depth&&(Bi=ao)});var en=se(ai,Ti)/2-ai.x,Wi=Le[0]/(Ti.x+se(Ti,ai)/2+en),bi=Le[1]/(Bi.depth||1);Sn(Ci,function(ao){ao.x=(ao.x+en)*Wi,ao.y=ao.depth*bi})}return Wr}function it(wr){for(var ni={A:null,children:[wr]},Wr=[ni],Ci;(Ci=Wr.pop())!=null;)for(var Ji=Ci.children,ai,Ti=0,Bi=Ji.length;Ti0&&(ls(bt(ai,wr,Wr),wr,ao),Bi+=ao,en+=ao),Wi+=ai.m,Bi+=Ci.m,bi+=Ti.m,en+=Ji.m;ai&&!ss(Ji)&&(Ji.t=ai,Ji.m+=Wi-en),Ci&&!po(Ti)&&(Ti.t=Ci,Ti.m+=Bi-bi,Wr=wr)}return Wr}function _r(wr){wr.x*=Le[0],wr.y=wr.depth*Le[1]}return Ye.separation=function(wr){return arguments.length?(se=wr,Ye):se},Ye.size=function(wr){return arguments.length?(We=(Le=wr)==null?_r:null,Ye):We?null:Le},Ye.nodeSize=function(wr){return arguments.length?(We=(Le=wr)==null?null:_r,Ye):We?Le:null},$n(Ye,X)};function Yo(X,se){return X.parent==se.parent?1:2}function po(X){var se=X.children;return se.length?se[0]:X.t}function ss(X){var se=X.children,Le;return(Le=se.length)?se[Le-1]:X.t}function ls(X,se,Le){var We=Le/(se.i-X.i);se.c-=We,se.s+=Le,X.c+=We,se.z+=Le,se.m+=Le}function gs(X){for(var se=0,Le=0,We=X.children,Ye=We.length,it;--Ye>=0;)it=We[Ye],it.z+=se,it.m+=se,se+=it.s+(Le+=it.c)}function bt(X,se,Le){return X.a.parent===se.parent?X.a:Le}e.layout.cluster=function(){var X=e.layout.hierarchy().sort(null).value(null),se=Yo,Le=[1,1],We=!1;function Ye(it,Nt){var mt=X.call(this,it,Nt),er=mt[0],_r,wr=0;uo(er,function(ai){var Ti=ai.children;Ti&&Ti.length?(ai.x=hr(Ti),ai.y=Ft(Ti)):(ai.x=_r?wr+=se(ai,_r):0,ai.y=0,_r=ai)});var ni=nr(er),Wr=Sr(er),Ci=ni.x-se(ni,Wr)/2,Ji=Wr.x+se(Wr,ni)/2;return uo(er,We?function(ai){ai.x=(ai.x-er.x)*Le[0],ai.y=(er.y-ai.y)*Le[1]}:function(ai){ai.x=(ai.x-Ci)/(Ji-Ci)*Le[0],ai.y=(1-(er.y?ai.y/er.y:1))*Le[1]}),mt}return Ye.separation=function(it){return arguments.length?(se=it,Ye):se},Ye.size=function(it){return arguments.length?(We=(Le=it)==null,Ye):We?null:Le},Ye.nodeSize=function(it){return arguments.length?(We=(Le=it)!=null,Ye):We?Le:null},$n(Ye,X)};function Ft(X){return 1+e.max(X,function(se){return se.y})}function hr(X){return X.reduce(function(se,Le){return se+Le.x},0)/X.length}function nr(X){var se=X.children;return se&&se.length?nr(se[0]):X}function Sr(X){var se=X.children,Le;return se&&(Le=se.length)?Sr(se[Le-1]):X}e.layout.treemap=function(){var X=e.layout.hierarchy(),se=Math.round,Le=[1,1],We=null,Ye=li,it=!1,Nt,mt="squarify",er=.5*(1+Math.sqrt(5));function _r(ai,Ti){for(var Bi=-1,en=ai.length,Wi,bi;++Bi0;)en.push(bi=Wi[Ms-1]),en.area+=bi.area,mt!=="squarify"||(yo=Wr(en,Ko))<=ao?(Wi.pop(),ao=yo):(en.area-=en.pop().area,Ci(en,Ko,Bi,!1),Ko=Math.min(Bi.dx,Bi.dy),en.length=en.area=0,ao=1/0);en.length&&(Ci(en,Ko,Bi,!0),en.length=en.area=0),Ti.forEach(wr)}}function ni(ai){var Ti=ai.children;if(Ti&&Ti.length){var Bi=Ye(ai),en=Ti.slice(),Wi,bi=[];for(_r(en,Bi.dx*Bi.dy/ai.value),bi.area=0;Wi=en.pop();)bi.push(Wi),bi.area+=Wi.area,Wi.z!=null&&(Ci(bi,Wi.z?Bi.dx:Bi.dy,Bi,!en.length),bi.length=bi.area=0);Ti.forEach(ni)}}function Wr(ai,Ti){for(var Bi=ai.area,en,Wi=0,bi=1/0,ao=-1,yo=ai.length;++aoWi&&(Wi=en));return Bi*=Bi,Ti*=Ti,Bi?Math.max(Ti*Wi*er/Bi,Bi/(Ti*bi*er)):1/0}function Ci(ai,Ti,Bi,en){var Wi=-1,bi=ai.length,ao=Bi.x,yo=Bi.y,Ko=Ti?se(ai.area/Ti):0,Ms;if(Ti==Bi.dx){for((en||Ko>Bi.dy)&&(Ko=Bi.dy);++WiBi.dx)&&(Ko=Bi.dx);++Wi1);return X+se*We*Math.sqrt(-2*Math.log(it)/it)}},logNormal:function(){var X=e.random.normal.apply(e,arguments);return function(){return Math.exp(X())}},bates:function(X){var se=e.random.irwinHall(X);return function(){return se()/X}},irwinHall:function(X){return function(){for(var se=0,Le=0;Le2?gi:dn,_r=We?vs:Ro;return Ye=er(X,se,_r,Le),it=er(se,X,_r,Ya),mt}function mt(er){return Ye(er)}return mt.invert=function(er){return it(er)},mt.domain=function(er){return arguments.length?(X=er.map(Number),Nt()):X},mt.range=function(er){return arguments.length?(se=er,Nt()):se},mt.rangeRound=function(er){return mt.range(er).interpolate(ja)},mt.clamp=function(er){return arguments.length?(We=er,Nt()):We},mt.interpolate=function(er){return arguments.length?(Le=er,Nt()):Le},mt.ticks=function(er){return Hn(X,er)},mt.tickFormat=function(er,_r){return d3_scale_linearTickFormat(X,er,_r)},mt.nice=function(er){return Vn(X,er),Nt()},mt.copy=function(){return gn(X,se,Le,We)},Nt()}function In(X,se){return e.rebind(X,se,"range","rangeRound","interpolate","clamp")}function Vn(X,se){return wi(X,ui(Rn(X,se)[2])),wi(X,ui(Rn(X,se)[2])),X}function Rn(X,se){se==null&&(se=10);var Le=mi(X),We=Le[1]-Le[0],Ye=Math.pow(10,Math.floor(Math.log(We/se)/Math.LN10)),it=se/We*Ye;return it<=.15?Ye*=10:it<=.35?Ye*=5:it<=.75&&(Ye*=2),Le[0]=Math.ceil(Le[0]/Ye)*Ye,Le[1]=Math.floor(Le[1]/Ye)*Ye+Ye*.5,Le[2]=Ye,Le}function Hn(X,se){return e.range.apply(e,Rn(X,se))}var Gn={s:1,g:1,p:1,r:1,e:1};function pn(X){return-Math.floor(Math.log(X)/Math.LN10+.01)}function Lo(X,se){var Le=pn(se[2]);return X in Gn?Math.abs(Le-pn(Math.max(v(se[0]),v(se[1]))))+ +(X!=="e"):Le-(X==="%")*2}e.scale.log=function(){return us(e.scale.linear().domain([0,1]),10,!0,[1,10])};function us(X,se,Le,We){function Ye(mt){return(Le?Math.log(mt<0?0:mt):-Math.log(mt>0?0:-mt))/Math.log(se)}function it(mt){return Le?Math.pow(se,mt):-Math.pow(se,-mt)}function Nt(mt){return X(Ye(mt))}return Nt.invert=function(mt){return it(X.invert(mt))},Nt.domain=function(mt){return arguments.length?(Le=mt[0]>=0,X.domain((We=mt.map(Number)).map(Ye)),Nt):We},Nt.base=function(mt){return arguments.length?(se=+mt,X.domain(We.map(Ye)),Nt):se},Nt.nice=function(){var mt=wi(We.map(Ye),Le?Math:Bs);return X.domain(mt),We=mt.map(it),Nt},Nt.ticks=function(){var mt=mi(We),er=[],_r=mt[0],wr=mt[1],ni=Math.floor(Ye(_r)),Wr=Math.ceil(Ye(wr)),Ci=se%1?2:se;if(isFinite(Wr-ni)){if(Le){for(;ni0;Ji--)er.push(it(ni)*Ji);for(ni=0;er[ni]<_r;ni++);for(Wr=er.length;er[Wr-1]>wr;Wr--);er=er.slice(ni,Wr)}return er},Nt.copy=function(){return us(X.copy(),se,Le,We)},In(Nt,X)}var Bs={floor:function(X){return-Math.ceil(-X)},ceil:function(X){return-Math.floor(-X)}};e.scale.pow=function(){return Js(e.scale.linear(),1,[0,1])};function Js(X,se,Le){var We=ol(se),Ye=ol(1/se);function it(Nt){return X(We(Nt))}return it.invert=function(Nt){return Ye(X.invert(Nt))},it.domain=function(Nt){return arguments.length?(X.domain((Le=Nt.map(Number)).map(We)),it):Le},it.ticks=function(Nt){return Hn(Le,Nt)},it.tickFormat=function(Nt,mt){return d3_scale_linearTickFormat(Le,Nt,mt)},it.nice=function(Nt){return it.domain(Vn(Le,Nt))},it.exponent=function(Nt){return arguments.length?(We=ol(se=Nt),Ye=ol(1/se),X.domain(Le.map(We)),it):se},it.copy=function(){return Js(X.copy(),se,Le)},In(it,X)}function ol(X){return function(se){return se<0?-Math.pow(-se,X):Math.pow(se,X)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Cl([],{t:"range",a:[[]]})};function Cl(X,se){var Le,We,Ye;function it(mt){return We[((Le.get(mt)||(se.t==="range"?Le.set(mt,X.push(mt)):NaN))-1)%We.length]}function Nt(mt,er){return e.range(X.length).map(function(_r){return mt+er*_r})}return it.domain=function(mt){if(!arguments.length)return X;X=[],Le=new A;for(var er=-1,_r=mt.length,wr;++er<_r;)Le.has(wr=mt[er])||Le.set(wr,X.push(wr));return it[se.t].apply(it,se.a)},it.range=function(mt){return arguments.length?(We=mt,Ye=0,se={t:"range",a:arguments},it):We},it.rangePoints=function(mt,er){arguments.length<2&&(er=0);var _r=mt[0],wr=mt[1],ni=X.length<2?(_r=(_r+wr)/2,0):(wr-_r)/(X.length-1+er);return We=Nt(_r+ni*er/2,ni),Ye=0,se={t:"rangePoints",a:arguments},it},it.rangeRoundPoints=function(mt,er){arguments.length<2&&(er=0);var _r=mt[0],wr=mt[1],ni=X.length<2?(_r=wr=Math.round((_r+wr)/2),0):(wr-_r)/(X.length-1+er)|0;return We=Nt(_r+Math.round(ni*er/2+(wr-_r-(X.length-1+er)*ni)/2),ni),Ye=0,se={t:"rangeRoundPoints",a:arguments},it},it.rangeBands=function(mt,er,_r){arguments.length<2&&(er=0),arguments.length<3&&(_r=er);var wr=mt[1]0?Le[it-1]:X[0],itWr?0:1;if(wr<_r&&(ai=wr,wr=_r,_r=ai),Ci>=ye)return er(wr,Ji)+(_r?er(_r,1-Ji):"")+"Z";var ai,Ti,Bi,en,Wi=0,bi=0,ao,yo,Ko,Ms,vl,wl,au,Al,nu=[];if((en=(+Nt.apply(this,arguments)||0)/2)&&(Bi=We===Gs?Math.sqrt(_r*_r+wr*wr):+We.apply(this,arguments),Ji||(bi*=-1),wr&&(bi=qr(Bi/wr*Math.sin(en))),_r&&(Wi=qr(Bi/_r*Math.sin(en)))),wr){ao=wr*Math.cos(ni+bi),yo=wr*Math.sin(ni+bi),Ko=wr*Math.cos(Wr-bi),Ms=wr*Math.sin(Wr-bi);var Bu=Math.abs(Wr-ni-2*bi)<=Ie?0:1;if(bi&&xl(ao,yo,Ko,Ms)===Ji^Bu){var qu=(ni+Wr)/2;ao=wr*Math.cos(qu),yo=wr*Math.sin(qu),Ko=Ms=null}}else ao=yo=0;if(_r){vl=_r*Math.cos(Wr-Wi),wl=_r*Math.sin(Wr-Wi),au=_r*Math.cos(ni+Wi),Al=_r*Math.sin(ni+Wi);var Ju=Math.abs(ni-Wr+2*Wi)<=Ie?0:1;if(Wi&&xl(vl,wl,au,Al)===1-Ji^Ju){var qo=(ni+Wr)/2;vl=_r*Math.cos(qo),wl=_r*Math.sin(qo),au=Al=null}}else vl=wl=0;if(Ci>Fe&&(ai=Math.min(Math.abs(wr-_r)/2,+Le.apply(this,arguments)))>.001){Ti=_r0?0:1}function Uo(X,se,Le,We,Ye){var it=X[0]-se[0],Nt=X[1]-se[1],mt=(Ye?We:-We)/Math.sqrt(it*it+Nt*Nt),er=mt*Nt,_r=-mt*it,wr=X[0]+er,ni=X[1]+_r,Wr=se[0]+er,Ci=se[1]+_r,Ji=(wr+Wr)/2,ai=(ni+Ci)/2,Ti=Wr-wr,Bi=Ci-ni,en=Ti*Ti+Bi*Bi,Wi=Le-We,bi=wr*Ci-Wr*ni,ao=(Bi<0?-1:1)*Math.sqrt(Math.max(0,Wi*Wi*en-bi*bi)),yo=(bi*Bi-Ti*ao)/en,Ko=(-bi*Ti-Bi*ao)/en,Ms=(bi*Bi+Ti*ao)/en,vl=(-bi*Ti+Bi*ao)/en,wl=yo-Ji,au=Ko-ai,Al=Ms-Ji,nu=vl-ai;return wl*wl+au*au>Al*Al+nu*nu&&(yo=Ms,Ko=vl),[[yo-er,Ko-_r],[yo*Le/Wi,Ko*Le/Wi]]}function _s(){return!0}function Bl(X){var se=Hr,Le=na,We=_s,Ye=Dl,it=Ye.key,Nt=.7;function mt(er){var _r=[],wr=[],ni=-1,Wr=er.length,Ci,Ji=or(se),ai=or(Le);function Ti(){_r.push("M",Ye(X(wr),Nt))}for(;++ni1?X.join("L"):X+"Z"}function oe(X){return X.join("L")+"Z"}function w(X){for(var se=0,Le=X.length,We=X[0],Ye=[We[0],",",We[1]];++se1&&Ye.push("H",We[0]),Ye.join("")}function B(X){for(var se=0,Le=X.length,We=X[0],Ye=[We[0],",",We[1]];++se1){mt=se[1],it=X[er],er++,We+="C"+(Ye[0]+Nt[0])+","+(Ye[1]+Nt[1])+","+(it[0]-mt[0])+","+(it[1]-mt[1])+","+it[0]+","+it[1];for(var _r=2;_r9&&(it=Le*3/Math.sqrt(it),Nt[mt]=it*We,Nt[mt+1]=it*Ye));for(mt=-1;++mt<=er;)it=(X[Math.min(er,mt+1)][0]-X[Math.max(0,mt-1)][0])/(6*(1+Nt[mt]*Nt[mt])),se.push([it||0,Nt[mt]*it||0]);return se}function qt(X){return X.length<3?Dl(X):X[0]+$e(X,ft(X))}e.svg.line.radial=function(){var X=Bl(Xt);return X.radius=X.x,delete X.x,X.angle=X.y,delete X.y,X};function Xt(X){for(var se,Le=-1,We=X.length,Ye,it;++LeIe)+",1 "+ni}function _r(wr,ni,Wr,Ci){return"Q 0,0 "+Ci}return it.radius=function(wr){return arguments.length?(Le=or(wr),it):Le},it.source=function(wr){return arguments.length?(X=or(wr),it):X},it.target=function(wr){return arguments.length?(se=or(wr),it):se},it.startAngle=function(wr){return arguments.length?(We=or(wr),it):We},it.endAngle=function(wr){return arguments.length?(Ye=or(wr),it):Ye},it};function $r(X){return X.radius}e.svg.diagonal=function(){var X=dr,se=Mr,Le=ii;function We(Ye,it){var Nt=X.call(this,Ye,it),mt=se.call(this,Ye,it),er=(Nt.y+mt.y)/2,_r=[Nt,{x:Nt.x,y:er},{x:mt.x,y:er},mt];return _r=_r.map(Le),"M"+_r[0]+"C"+_r[1]+" "+_r[2]+" "+_r[3]}return We.source=function(Ye){return arguments.length?(X=or(Ye),We):X},We.target=function(Ye){return arguments.length?(se=or(Ye),We):se},We.projection=function(Ye){return arguments.length?(Le=Ye,We):Le},We};function ii(X){return[X.x,X.y]}e.svg.diagonal.radial=function(){var X=e.svg.diagonal(),se=ii,Le=X.projection;return X.projection=function(We){return arguments.length?Le(pi(se=We)):se},X};function pi(X){return function(){var se=X.apply(this,arguments),Le=se[0],We=se[1]-ue;return[Le*Math.cos(We),Le*Math.sin(We)]}}e.svg.symbol=function(){var X=wn,se=Yi;function Le(We,Ye){return(ua.get(X.call(this,We,Ye))||Tn)(se.call(this,We,Ye))}return Le.type=function(We){return arguments.length?(X=or(We),Le):X},Le.size=function(We){return arguments.length?(se=or(We),Le):se},Le};function Yi(){return 64}function wn(){return"circle"}function Tn(X){var se=Math.sqrt(X/Ie);return"M0,"+se+"A"+se+","+se+" 0 1,1 0,"+-se+"A"+se+","+se+" 0 1,1 0,"+se+"Z"}var ua=e.map({circle:Tn,cross:function(X){var se=Math.sqrt(X/5)/2;return"M"+-3*se+","+-se+"H"+-se+"V"+-3*se+"H"+se+"V"+-se+"H"+3*se+"V"+se+"H"+se+"V"+3*se+"H"+-se+"V"+se+"H"+-3*se+"Z"},diamond:function(X){var se=Math.sqrt(X/(2*el)),Le=se*el;return"M0,"+-se+"L"+Le+",0 0,"+se+" "+-Le+",0Z"},square:function(X){var se=Math.sqrt(X)/2;return"M"+-se+","+-se+"L"+se+","+-se+" "+se+","+se+" "+-se+","+se+"Z"},"triangle-down":function(X){var se=Math.sqrt(X/oo),Le=se*oo/2;return"M0,"+Le+"L"+se+","+-Le+" "+-se+","+-Le+"Z"},"triangle-up":function(X){var se=Math.sqrt(X/oo),Le=se*oo/2;return"M0,"+-Le+"L"+se+","+Le+" "+-se+","+Le+"Z"}});e.svg.symbolTypes=ua.keys();var oo=Math.sqrt(3),el=Math.tan(30*de);Re.transition=function(X){for(var se=Ll||++Hl,Le=Kl(X),We=[],Ye,it,Nt=Ql||{time:Date.now(),ease:Za,delay:0,duration:250},mt=-1,er=this.length;++mt0;)ni[--en].call(X,Bi);if(Ti>=1)return Nt.event&&Nt.event.end.call(X,X.__data__,se),--it.count?delete it[We]:delete X[Le],1}Nt||(mt=Ye.time,er=Wn(Wr,0,mt),Nt=it[We]={tween:new A,time:mt,timer:er,delay:Ye.delay,duration:Ye.duration,ease:Ye.ease,index:se},Ye=null,++it.count)}e.svg.axis=function(){var X=e.scale.linear(),se=tf,Le=6,We=6,Ye=3,it=[10],Nt=null,mt;function er(_r){_r.each(function(){var wr=e.select(this),ni=this.__chart__||X,Wr=this.__chart__=X.copy(),Ci=Nt==null?Wr.ticks?Wr.ticks.apply(Wr,it):Wr.domain():Nt,Ji=mt==null?Wr.tickFormat?Wr.tickFormat.apply(Wr,it):H:mt,ai=wr.selectAll(".tick").data(Ci,Wr),Ti=ai.enter().insert("g",".domain").attr("class","tick").style("opacity",Fe),Bi=e.transition(ai.exit()).style("opacity",Fe).remove(),en=e.transition(ai.order()).style("opacity",1),Wi=Math.max(Le,0)+Ye,bi,ao=Oi(Wr),yo=wr.selectAll(".domain").data([0]),Ko=(yo.enter().append("path").attr("class","domain"),e.transition(yo));Ti.append("line"),Ti.append("text");var Ms=Ti.select("line"),vl=en.select("line"),wl=ai.select("text").text(Ji),au=Ti.select("text"),Al=en.select("text"),nu=se==="top"||se==="left"?-1:1,Bu,qu,Ju,qo;if(se==="bottom"||se==="top"?(bi=Gu,Bu="x",Ju="y",qu="x2",qo="y2",wl.attr("dy",nu<0?"0em":".71em").style("text-anchor","middle"),Ko.attr("d","M"+ao[0]+","+nu*We+"V0H"+ao[1]+"V"+nu*We)):(bi=Wu,Bu="y",Ju="x",qu="y2",qo="x2",wl.attr("dy",".32em").style("text-anchor",nu<0?"end":"start"),Ko.attr("d","M"+nu*We+","+ao[0]+"H0V"+ao[1]+"H"+nu*We)),Ms.attr(qo,nu*Le),au.attr(Ju,nu*Wi),vl.attr(qu,0).attr(qo,nu*Le),Al.attr(Bu,0).attr(Ju,nu*Wi),Wr.rangeBand){var Rl=Wr,pu=Rl.rangeBand()/2;ni=Wr=function(xu){return Rl(xu)+pu}}else ni.rangeBand?ni=Wr:Bi.call(bi,Wr,ni);Ti.call(bi,ni,Wr),en.call(bi,Wr,Wr)})}return er.scale=function(_r){return arguments.length?(X=_r,er):X},er.orient=function(_r){return arguments.length?(se=_r in Ku?_r+"":tf,er):se},er.ticks=function(){return arguments.length?(it=r(arguments),er):it},er.tickValues=function(_r){return arguments.length?(Nt=_r,er):Nt},er.tickFormat=function(_r){return arguments.length?(mt=_r,er):mt},er.tickSize=function(_r){var wr=arguments.length;return wr?(Le=+_r,We=+arguments[wr-1],er):Le},er.innerTickSize=function(_r){return arguments.length?(Le=+_r,er):Le},er.outerTickSize=function(_r){return arguments.length?(We=+_r,er):We},er.tickPadding=function(_r){return arguments.length?(Ye=+_r,er):Ye},er.tickSubdivide=function(){return arguments.length&&er},er};var tf="bottom",Ku={top:1,right:1,bottom:1,left:1};function Gu(X,se,Le){X.attr("transform",function(We){var Ye=se(We);return"translate("+(isFinite(Ye)?Ye:Le(We))+",0)"})}function Wu(X,se,Le){X.attr("transform",function(We){var Ye=se(We);return"translate(0,"+(isFinite(Ye)?Ye:Le(We))+")"})}e.svg.brush=function(){var X=Ce(wr,"brushstart","brush","brushend"),se=null,Le=null,We=[0,0],Ye=[0,0],it,Nt,mt=!0,er=!0,_r=gf[0];function wr(ai){ai.each(function(){var Ti=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Ji).on("touchstart.brush",Ji),Bi=Ti.selectAll(".background").data([0]);Bi.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ti.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var en=Ti.selectAll(".resize").data(_r,H);en.exit().remove(),en.enter().append("g").attr("class",function(yo){return"resize "+yo}).style("cursor",function(yo){return sf[yo]}).append("rect").attr("x",function(yo){return/[ew]$/.test(yo)?-3:null}).attr("y",function(yo){return/^[ns]/.test(yo)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),en.style("display",wr.empty()?"none":null);var Wi=e.transition(Ti),bi=e.transition(Bi),ao;se&&(ao=Oi(se),bi.attr("x",ao[0]).attr("width",ao[1]-ao[0]),Wr(Wi)),Le&&(ao=Oi(Le),bi.attr("y",ao[0]).attr("height",ao[1]-ao[0]),Ci(Wi)),ni(Wi)})}wr.event=function(ai){ai.each(function(){var Ti=X.of(this,arguments),Bi={x:We,y:Ye,i:it,j:Nt},en=this.__chart__||Bi;this.__chart__=Bi,Ll?e.select(this).transition().each("start.brush",function(){it=en.i,Nt=en.j,We=en.x,Ye=en.y,Ti({type:"brushstart"})}).tween("brush:brush",function(){var Wi=ba(We,Bi.x),bi=ba(Ye,Bi.y);return it=Nt=null,function(ao){We=Bi.x=Wi(ao),Ye=Bi.y=bi(ao),Ti({type:"brush",mode:"resize"})}}).each("end.brush",function(){it=Bi.i,Nt=Bi.j,Ti({type:"brush",mode:"resize"}),Ti({type:"brushend"})}):(Ti({type:"brushstart"}),Ti({type:"brush",mode:"resize"}),Ti({type:"brushend"}))})};function ni(ai){ai.selectAll(".resize").attr("transform",function(Ti){return"translate("+We[+/e$/.test(Ti)]+","+Ye[+/^s/.test(Ti)]+")"})}function Wr(ai){ai.select(".extent").attr("x",We[0]),ai.selectAll(".extent,.n>rect,.s>rect").attr("width",We[1]-We[0])}function Ci(ai){ai.select(".extent").attr("y",Ye[0]),ai.selectAll(".extent,.e>rect,.w>rect").attr("height",Ye[1]-Ye[0])}function Ji(){var ai=this,Ti=e.select(e.event.target),Bi=X.of(ai,arguments),en=e.select(ai),Wi=Ti.datum(),bi=!/^(n|s)$/.test(Wi)&&se,ao=!/^(e|w)$/.test(Wi)&&Le,yo=Ti.classed("extent"),Ko=fr(ai),Ms,vl=e.mouse(ai),wl,au=e.select(a(ai)).on("keydown.brush",Bu).on("keyup.brush",qu);if(e.event.changedTouches?au.on("touchmove.brush",Ju).on("touchend.brush",Rl):au.on("mousemove.brush",Ju).on("mouseup.brush",Rl),en.interrupt().selectAll("*").interrupt(),yo)vl[0]=We[0]-vl[0],vl[1]=Ye[0]-vl[1];else if(Wi){var Al=+/w$/.test(Wi),nu=+/^n/.test(Wi);wl=[We[1-Al]-vl[0],Ye[1-nu]-vl[1]],vl[0]=We[Al],vl[1]=Ye[nu]}else e.event.altKey&&(Ms=vl.slice());en.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ti.style("cursor")),Bi({type:"brushstart"}),Ju();function Bu(){e.event.keyCode==32&&(yo||(Ms=null,vl[0]-=We[1],vl[1]-=Ye[1],yo=2),be())}function qu(){e.event.keyCode==32&&yo==2&&(vl[0]+=We[1],vl[1]+=Ye[1],yo=0,be())}function Ju(){var pu=e.mouse(ai),xu=!1;wl&&(pu[0]+=wl[0],pu[1]+=wl[1]),yo||(e.event.altKey?(Ms||(Ms=[(We[0]+We[1])/2,(Ye[0]+Ye[1])/2]),vl[0]=We[+(pu[0]{(function(e,t){typeof aL=="object"&&typeof Aee!="undefined"?t(aL):(e=e||self,t(e.d3=e.d3||{}))})(aL,function(e){"use strict";var t=new Date,r=new Date;function n(Te,nt,ut,ct){function rt(je){return Te(je=arguments.length===0?new Date:new Date(+je)),je}return rt.floor=function(je){return Te(je=new Date(+je)),je},rt.ceil=function(je){return Te(je=new Date(je-1)),nt(je,1),Te(je),je},rt.round=function(je){var tt=rt(je),Je=rt.ceil(je);return je-tt0))return Mt;do Mt.push(Vt=new Date(+je)),nt(je,Je),Te(je);while(Vt=tt)for(;Te(tt),!je(tt);)tt.setTime(tt-1)},function(tt,Je){if(tt>=tt)if(Je<0)for(;++Je<=0;)for(;nt(tt,-1),!je(tt););else for(;--Je>=0;)for(;nt(tt,1),!je(tt););})},ut&&(rt.count=function(je,tt){return t.setTime(+je),r.setTime(+tt),Te(t),Te(r),Math.floor(ut(t,r))},rt.every=function(je){return je=Math.floor(je),!isFinite(je)||!(je>0)?null:je>1?rt.filter(ct?function(tt){return ct(tt)%je===0}:function(tt){return rt.count(0,tt)%je===0}):rt}),rt}var i=n(function(){},function(Te,nt){Te.setTime(+Te+nt)},function(Te,nt){return nt-Te});i.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?n(function(nt){nt.setTime(Math.floor(nt/Te)*Te)},function(nt,ut){nt.setTime(+nt+ut*Te)},function(nt,ut){return(ut-nt)/Te}):i};var a=i.range,o=1e3,s=6e4,u=36e5,l=864e5,f=6048e5,c=n(function(Te){Te.setTime(Te-Te.getMilliseconds())},function(Te,nt){Te.setTime(+Te+nt*o)},function(Te,nt){return(nt-Te)/o},function(Te){return Te.getUTCSeconds()}),h=c.range,d=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o)},function(Te,nt){Te.setTime(+Te+nt*s)},function(Te,nt){return(nt-Te)/s},function(Te){return Te.getMinutes()}),p=d.range,x=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o-Te.getMinutes()*s)},function(Te,nt){Te.setTime(+Te+nt*u)},function(Te,nt){return(nt-Te)/u},function(Te){return Te.getHours()}),b=x.range,v=n(function(Te){Te.setHours(0,0,0,0)},function(Te,nt){Te.setDate(Te.getDate()+nt)},function(Te,nt){return(nt-Te-(nt.getTimezoneOffset()-Te.getTimezoneOffset())*s)/l},function(Te){return Te.getDate()-1}),k=v.range;function E(Te){return n(function(nt){nt.setDate(nt.getDate()-(nt.getDay()+7-Te)%7),nt.setHours(0,0,0,0)},function(nt,ut){nt.setDate(nt.getDate()+ut*7)},function(nt,ut){return(ut-nt-(ut.getTimezoneOffset()-nt.getTimezoneOffset())*s)/f})}var A=E(0),L=E(1),_=E(2),C=E(3),M=E(4),y=E(5),z=E(6),T=A.range,F=L.range,q=_.range,U=C.range,H=M.range,j=y.range,G=z.range,O=n(function(Te){Te.setDate(1),Te.setHours(0,0,0,0)},function(Te,nt){Te.setMonth(Te.getMonth()+nt)},function(Te,nt){return nt.getMonth()-Te.getMonth()+(nt.getFullYear()-Te.getFullYear())*12},function(Te){return Te.getMonth()}),W=O.range,re=n(function(Te){Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,nt){Te.setFullYear(Te.getFullYear()+nt)},function(Te,nt){return nt.getFullYear()-Te.getFullYear()},function(Te){return Te.getFullYear()});re.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(nt){nt.setFullYear(Math.floor(nt.getFullYear()/Te)*Te),nt.setMonth(0,1),nt.setHours(0,0,0,0)},function(nt,ut){nt.setFullYear(nt.getFullYear()+ut*Te)})};var ne=re.range,be=n(function(Te){Te.setUTCSeconds(0,0)},function(Te,nt){Te.setTime(+Te+nt*s)},function(Te,nt){return(nt-Te)/s},function(Te){return Te.getUTCMinutes()}),ze=be.range,Ce=n(function(Te){Te.setUTCMinutes(0,0,0)},function(Te,nt){Te.setTime(+Te+nt*u)},function(Te,nt){return(nt-Te)/u},function(Te){return Te.getUTCHours()}),he=Ce.range,te=n(function(Te){Te.setUTCHours(0,0,0,0)},function(Te,nt){Te.setUTCDate(Te.getUTCDate()+nt)},function(Te,nt){return(nt-Te)/l},function(Te){return Te.getUTCDate()-1}),ke=te.range;function Ee(Te){return n(function(nt){nt.setUTCDate(nt.getUTCDate()-(nt.getUTCDay()+7-Te)%7),nt.setUTCHours(0,0,0,0)},function(nt,ut){nt.setUTCDate(nt.getUTCDate()+ut*7)},function(nt,ut){return(ut-nt)/f})}var Me=Ee(0),Oe=Ee(1),Re=Ee(2),me=Ee(3),Be=Ee(4),fe=Ee(5),Ze=Ee(6),et=Me.range,gt=Oe.range,Pt=Re.range,Qe=me.range,Xe=Be.range,Tt=fe.range,xt=Ze.range,_t=n(function(Te){Te.setUTCDate(1),Te.setUTCHours(0,0,0,0)},function(Te,nt){Te.setUTCMonth(Te.getUTCMonth()+nt)},function(Te,nt){return nt.getUTCMonth()-Te.getUTCMonth()+(nt.getUTCFullYear()-Te.getUTCFullYear())*12},function(Te){return Te.getUTCMonth()}),Ct=_t.range,jt=n(function(Te){Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,nt){Te.setUTCFullYear(Te.getUTCFullYear()+nt)},function(Te,nt){return nt.getUTCFullYear()-Te.getUTCFullYear()},function(Te){return Te.getUTCFullYear()});jt.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(nt){nt.setUTCFullYear(Math.floor(nt.getUTCFullYear()/Te)*Te),nt.setUTCMonth(0,1),nt.setUTCHours(0,0,0,0)},function(nt,ut){nt.setUTCFullYear(nt.getUTCFullYear()+ut*Te)})};var At=jt.range;e.timeDay=v,e.timeDays=k,e.timeFriday=y,e.timeFridays=j,e.timeHour=x,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=L,e.timeMondays=F,e.timeMonth=O,e.timeMonths=W,e.timeSaturday=z,e.timeSaturdays=G,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=H,e.timeTuesday=_,e.timeTuesdays=q,e.timeWednesday=C,e.timeWednesdays=U,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=ne,e.utcDay=te,e.utcDays=ke,e.utcFriday=fe,e.utcFridays=Tt,e.utcHour=Ce,e.utcHours=he,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=be,e.utcMinutes=ze,e.utcMonday=Oe,e.utcMondays=gt,e.utcMonth=_t,e.utcMonths=Ct,e.utcSaturday=Ze,e.utcSaturdays=xt,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=Me,e.utcSundays=et,e.utcThursday=Be,e.utcThursdays=Xe,e.utcTuesday=Re,e.utcTuesdays=Pt,e.utcWednesday=me,e.utcWednesdays=Qe,e.utcWeek=Me,e.utcWeeks=et,e.utcYear=jt,e.utcYears=At,Object.defineProperty(e,"__esModule",{value:!0})})});var e3=Ae((oL,See)=>{(function(e,t){typeof oL=="object"&&typeof See!="undefined"?t(oL,MB()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(oL,function(e,t){"use strict";function r(_e){if(0<=_e.y&&_e.y<100){var Fe=new Date(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L);return Fe.setFullYear(_e.y),Fe}return new Date(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L)}function n(_e){if(0<=_e.y&&_e.y<100){var Fe=new Date(Date.UTC(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L));return Fe.setUTCFullYear(_e.y),Fe}return new Date(Date.UTC(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L))}function i(_e,Fe,Pe){return{y:_e,m:Fe,d:Pe,H:0,M:0,S:0,L:0}}function a(_e){var Fe=_e.dateTime,Pe=_e.date,Ie=_e.time,lt=_e.periods,ye=_e.days,ue=_e.shortDays,de=_e.months,ht=_e.shortMonths,Et=h(lt),St=d(lt),Zt=h(ye),qr=d(ye),Lr=h(ue),vr=d(ue),Er=h(de),si=d(de),Ei=h(ht),Si=d(ht),xi={a:Br,A:oi,b:vi,B:Pi,c:null,d:O,e:O,f:ze,H:W,I:re,j:ne,L:be,m:Ce,M:he,p:Yr,q:Ni,Q:tt,s:Je,S:te,u:ke,U:Ee,V:Me,w:Oe,W:Re,x:null,X:null,y:me,Y:Be,Z:fe,"%":je},Hi={a:Ur,A:ti,b:ki,B:ji,c:null,d:Ze,e:Ze,f:Xe,H:et,I:gt,j:Pt,L:Qe,m:Tt,M:xt,p:Vi,q:zi,Q:tt,s:Je,S:_t,u:Ct,U:jt,V:At,w:Te,W:nt,x:null,X:null,y:ut,Y:ct,Z:rt,"%":je},Jr={a:Dt,A:Bt,b:sr,B:br,c:zr,d:M,e:M,f:U,H:z,I:z,j:y,L:q,m:C,M:T,p:vt,q:_,Q:j,s:G,S:F,u:x,U:b,V:v,w:p,W:k,x:Tr,X:Rr,y:A,Y:E,Z:L,"%":H};xi.x=ci(Pe,xi),xi.X=ci(Ie,xi),xi.c=ci(Fe,xi),Hi.x=ci(Pe,Hi),Hi.X=ci(Ie,Hi),Hi.c=ci(Fe,Hi);function ci(Mi,sn){return function(fi){var Or=[],st=-1,Wt=0,tr=Mi.length,or,Nr,hi;for(fi instanceof Date||(fi=new Date(+fi));++st53)return null;"w"in Or||(Or.w=1),"Z"in Or?(Wt=n(i(Or.y,0,1)),tr=Wt.getUTCDay(),Wt=tr>4||tr===0?t.utcMonday.ceil(Wt):t.utcMonday(Wt),Wt=t.utcDay.offset(Wt,(Or.V-1)*7),Or.y=Wt.getUTCFullYear(),Or.m=Wt.getUTCMonth(),Or.d=Wt.getUTCDate()+(Or.w+6)%7):(Wt=r(i(Or.y,0,1)),tr=Wt.getDay(),Wt=tr>4||tr===0?t.timeMonday.ceil(Wt):t.timeMonday(Wt),Wt=t.timeDay.offset(Wt,(Or.V-1)*7),Or.y=Wt.getFullYear(),Or.m=Wt.getMonth(),Or.d=Wt.getDate()+(Or.w+6)%7)}else("W"in Or||"U"in Or)&&("w"in Or||(Or.w="u"in Or?Or.u%7:"W"in Or?1:0),tr="Z"in Or?n(i(Or.y,0,1)).getUTCDay():r(i(Or.y,0,1)).getDay(),Or.m=0,Or.d="W"in Or?(Or.w+6)%7+Or.W*7-(tr+5)%7:Or.w+Or.U*7-(tr+6)%7);return"Z"in Or?(Or.H+=Or.Z/100|0,Or.M+=Or.Z%100,n(Or)):r(Or)}}function Lt(Mi,sn,fi,Or){for(var st=0,Wt=sn.length,tr=fi.length,or,Nr;st=tr)return-1;if(or=sn.charCodeAt(st++),or===37){if(or=sn.charAt(st++),Nr=Jr[or in o?sn.charAt(st++):or],!Nr||(Or=Nr(Mi,fi,Or))<0)return-1}else if(or!=fi.charCodeAt(Or++))return-1}return Or}function vt(Mi,sn,fi){var Or=Et.exec(sn.slice(fi));return Or?(Mi.p=St[Or[0].toLowerCase()],fi+Or[0].length):-1}function Dt(Mi,sn,fi){var Or=Lr.exec(sn.slice(fi));return Or?(Mi.w=vr[Or[0].toLowerCase()],fi+Or[0].length):-1}function Bt(Mi,sn,fi){var Or=Zt.exec(sn.slice(fi));return Or?(Mi.w=qr[Or[0].toLowerCase()],fi+Or[0].length):-1}function sr(Mi,sn,fi){var Or=Ei.exec(sn.slice(fi));return Or?(Mi.m=Si[Or[0].toLowerCase()],fi+Or[0].length):-1}function br(Mi,sn,fi){var Or=Er.exec(sn.slice(fi));return Or?(Mi.m=si[Or[0].toLowerCase()],fi+Or[0].length):-1}function zr(Mi,sn,fi){return Lt(Mi,Fe,sn,fi)}function Tr(Mi,sn,fi){return Lt(Mi,Pe,sn,fi)}function Rr(Mi,sn,fi){return Lt(Mi,Ie,sn,fi)}function Br(Mi){return ue[Mi.getDay()]}function oi(Mi){return ye[Mi.getDay()]}function vi(Mi){return ht[Mi.getMonth()]}function Pi(Mi){return de[Mi.getMonth()]}function Yr(Mi){return lt[+(Mi.getHours()>=12)]}function Ni(Mi){return 1+~~(Mi.getMonth()/3)}function Ur(Mi){return ue[Mi.getUTCDay()]}function ti(Mi){return ye[Mi.getUTCDay()]}function ki(Mi){return ht[Mi.getUTCMonth()]}function ji(Mi){return de[Mi.getUTCMonth()]}function Vi(Mi){return lt[+(Mi.getUTCHours()>=12)]}function zi(Mi){return 1+~~(Mi.getUTCMonth()/3)}return{format:function(Mi){var sn=ci(Mi+="",xi);return sn.toString=function(){return Mi},sn},parse:function(Mi){var sn=Di(Mi+="",!1);return sn.toString=function(){return Mi},sn},utcFormat:function(Mi){var sn=ci(Mi+="",Hi);return sn.toString=function(){return Mi},sn},utcParse:function(Mi){var sn=Di(Mi+="",!0);return sn.toString=function(){return Mi},sn}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,u=/^%/,l=/[\\^$*+?|[\]().{}]/g;function f(_e,Fe,Pe){var Ie=_e<0?"-":"",lt=(Ie?-_e:_e)+"",ye=lt.length;return Ie+(ye68?1900:2e3),Pe+Ie[0].length):-1}function L(_e,Fe,Pe){var Ie=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Fe.slice(Pe,Pe+6));return Ie?(_e.Z=Ie[1]?0:-(Ie[2]+(Ie[3]||"00")),Pe+Ie[0].length):-1}function _(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+1));return Ie?(_e.q=Ie[0]*3-3,Pe+Ie[0].length):-1}function C(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.m=Ie[0]-1,Pe+Ie[0].length):-1}function M(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.d=+Ie[0],Pe+Ie[0].length):-1}function y(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+3));return Ie?(_e.m=0,_e.d=+Ie[0],Pe+Ie[0].length):-1}function z(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.H=+Ie[0],Pe+Ie[0].length):-1}function T(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.M=+Ie[0],Pe+Ie[0].length):-1}function F(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.S=+Ie[0],Pe+Ie[0].length):-1}function q(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+3));return Ie?(_e.L=+Ie[0],Pe+Ie[0].length):-1}function U(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+6));return Ie?(_e.L=Math.floor(Ie[0]/1e3),Pe+Ie[0].length):-1}function H(_e,Fe,Pe){var Ie=u.exec(Fe.slice(Pe,Pe+1));return Ie?Pe+Ie[0].length:-1}function j(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe));return Ie?(_e.Q=+Ie[0],Pe+Ie[0].length):-1}function G(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe));return Ie?(_e.s=+Ie[0],Pe+Ie[0].length):-1}function O(_e,Fe){return f(_e.getDate(),Fe,2)}function W(_e,Fe){return f(_e.getHours(),Fe,2)}function re(_e,Fe){return f(_e.getHours()%12||12,Fe,2)}function ne(_e,Fe){return f(1+t.timeDay.count(t.timeYear(_e),_e),Fe,3)}function be(_e,Fe){return f(_e.getMilliseconds(),Fe,3)}function ze(_e,Fe){return be(_e,Fe)+"000"}function Ce(_e,Fe){return f(_e.getMonth()+1,Fe,2)}function he(_e,Fe){return f(_e.getMinutes(),Fe,2)}function te(_e,Fe){return f(_e.getSeconds(),Fe,2)}function ke(_e){var Fe=_e.getDay();return Fe===0?7:Fe}function Ee(_e,Fe){return f(t.timeSunday.count(t.timeYear(_e)-1,_e),Fe,2)}function Me(_e,Fe){var Pe=_e.getDay();return _e=Pe>=4||Pe===0?t.timeThursday(_e):t.timeThursday.ceil(_e),f(t.timeThursday.count(t.timeYear(_e),_e)+(t.timeYear(_e).getDay()===4),Fe,2)}function Oe(_e){return _e.getDay()}function Re(_e,Fe){return f(t.timeMonday.count(t.timeYear(_e)-1,_e),Fe,2)}function me(_e,Fe){return f(_e.getFullYear()%100,Fe,2)}function Be(_e,Fe){return f(_e.getFullYear()%1e4,Fe,4)}function fe(_e){var Fe=_e.getTimezoneOffset();return(Fe>0?"-":(Fe*=-1,"+"))+f(Fe/60|0,"0",2)+f(Fe%60,"0",2)}function Ze(_e,Fe){return f(_e.getUTCDate(),Fe,2)}function et(_e,Fe){return f(_e.getUTCHours(),Fe,2)}function gt(_e,Fe){return f(_e.getUTCHours()%12||12,Fe,2)}function Pt(_e,Fe){return f(1+t.utcDay.count(t.utcYear(_e),_e),Fe,3)}function Qe(_e,Fe){return f(_e.getUTCMilliseconds(),Fe,3)}function Xe(_e,Fe){return Qe(_e,Fe)+"000"}function Tt(_e,Fe){return f(_e.getUTCMonth()+1,Fe,2)}function xt(_e,Fe){return f(_e.getUTCMinutes(),Fe,2)}function _t(_e,Fe){return f(_e.getUTCSeconds(),Fe,2)}function Ct(_e){var Fe=_e.getUTCDay();return Fe===0?7:Fe}function jt(_e,Fe){return f(t.utcSunday.count(t.utcYear(_e)-1,_e),Fe,2)}function At(_e,Fe){var Pe=_e.getUTCDay();return _e=Pe>=4||Pe===0?t.utcThursday(_e):t.utcThursday.ceil(_e),f(t.utcThursday.count(t.utcYear(_e),_e)+(t.utcYear(_e).getUTCDay()===4),Fe,2)}function Te(_e){return _e.getUTCDay()}function nt(_e,Fe){return f(t.utcMonday.count(t.utcYear(_e)-1,_e),Fe,2)}function ut(_e,Fe){return f(_e.getUTCFullYear()%100,Fe,2)}function ct(_e,Fe){return f(_e.getUTCFullYear()%1e4,Fe,4)}function rt(){return"+0000"}function je(){return"%"}function tt(_e){return+_e}function Je(_e){return Math.floor(+_e/1e3)}var Mt;Vt({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Vt(_e){return Mt=a(_e),e.timeFormat=Mt.format,e.timeParse=Mt.parse,e.utcFormat=Mt.utcFormat,e.utcParse=Mt.utcParse,Mt}var Kt="%Y-%m-%dT%H:%M:%S.%LZ";function ir(_e){return _e.toISOString()}var fr=Date.prototype.toISOString?ir:e.utcFormat(Kt);function Ot(_e){var Fe=new Date(_e);return isNaN(Fe)?null:Fe}var De=+new Date("2000-01-01T00:00:00.000Z")?Ot:e.utcParse(Kt);e.isoFormat=fr,e.isoParse=De,e.timeFormatDefaultLocale=Vt,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var EB=Ae((sL,Mee)=>{(function(e,t){typeof sL=="object"&&typeof Mee!="undefined"?t(sL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(sL,function(e){"use strict";function t(C){return Math.abs(C=Math.round(C))>=1e21?C.toLocaleString("en").replace(/,/g,""):C.toString(10)}function r(C,M){if((y=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var y,z=C.slice(0,y);return[z.length>1?z[0]+z.slice(2):z,+C.slice(y+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(y,z){for(var T=y.length,F=[],q=0,U=C[0],H=0;T>0&&U>0&&(H+U+1>z&&(U=Math.max(1,z-H)),F.push(y.substring(T-=U,T+U)),!((H+=U+1)>z));)U=C[q=(q+1)%C.length];return F.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(y){return C[+y]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(C){if(!(M=o.exec(C)))throw new Error("invalid format: "+C);var M;return new u({fill:M[1],align:M[2],sign:M[3],symbol:M[4],zero:M[5],width:M[6],comma:M[7],precision:M[8]&&M[8].slice(1),trim:M[9],type:M[10]})}s.prototype=u.prototype;function u(C){this.fill=C.fill===void 0?" ":C.fill+"",this.align=C.align===void 0?">":C.align+"",this.sign=C.sign===void 0?"-":C.sign+"",this.symbol=C.symbol===void 0?"":C.symbol+"",this.zero=!!C.zero,this.width=C.width===void 0?void 0:+C.width,this.comma=!!C.comma,this.precision=C.precision===void 0?void 0:+C.precision,this.trim=!!C.trim,this.type=C.type===void 0?"":C.type+""}u.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function l(C){e:for(var M=C.length,y=1,z=-1,T;y0&&(z=0);break}return z>0?C.slice(0,z)+C.slice(T+1):C}var f;function c(C,M){var y=r(C,M);if(!y)return C+"";var z=y[0],T=y[1],F=T-(f=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,q=z.length;return F===q?z:F>q?z+new Array(F-q+1).join("0"):F>0?z.slice(0,F)+"."+z.slice(F):"0."+new Array(1-F).join("0")+r(C,Math.max(0,M+F-1))[0]}function h(C,M){var y=r(C,M);if(!y)return C+"";var z=y[0],T=y[1];return T<0?"0."+new Array(-T).join("0")+z:z.length>T+1?z.slice(0,T+1)+"."+z.slice(T+1):z+new Array(T-z.length+2).join("0")}var d={"%":function(C,M){return(C*100).toFixed(M)},b:function(C){return Math.round(C).toString(2)},c:function(C){return C+""},d:t,e:function(C,M){return C.toExponential(M)},f:function(C,M){return C.toFixed(M)},g:function(C,M){return C.toPrecision(M)},o:function(C){return Math.round(C).toString(8)},p:function(C,M){return h(C*100,M)},r:h,s:c,X:function(C){return Math.round(C).toString(16).toUpperCase()},x:function(C){return Math.round(C).toString(16)}};function p(C){return C}var x=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function v(C){var M=C.grouping===void 0||C.thousands===void 0?p:i(x.call(C.grouping,Number),C.thousands+""),y=C.currency===void 0?"":C.currency[0]+"",z=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",F=C.numerals===void 0?p:a(x.call(C.numerals,String)),q=C.percent===void 0?"%":C.percent+"",U=C.minus===void 0?"-":C.minus+"",H=C.nan===void 0?"NaN":C.nan+"";function j(O){O=s(O);var W=O.fill,re=O.align,ne=O.sign,be=O.symbol,ze=O.zero,Ce=O.width,he=O.comma,te=O.precision,ke=O.trim,Ee=O.type;Ee==="n"?(he=!0,Ee="g"):d[Ee]||(te===void 0&&(te=12),ke=!0,Ee="g"),(ze||W==="0"&&re==="=")&&(ze=!0,W="0",re="=");var Me=be==="$"?y:be==="#"&&/[boxX]/.test(Ee)?"0"+Ee.toLowerCase():"",Oe=be==="$"?z:/[%p]/.test(Ee)?q:"",Re=d[Ee],me=/[defgprs%]/.test(Ee);te=te===void 0?6:/[gprs]/.test(Ee)?Math.max(1,Math.min(21,te)):Math.max(0,Math.min(20,te));function Be(fe){var Ze=Me,et=Oe,gt,Pt,Qe;if(Ee==="c")et=Re(fe)+et,fe="";else{fe=+fe;var Xe=fe<0||1/fe<0;if(fe=isNaN(fe)?H:Re(Math.abs(fe),te),ke&&(fe=l(fe)),Xe&&+fe==0&&ne!=="+"&&(Xe=!1),Ze=(Xe?ne==="("?ne:U:ne==="-"||ne==="("?"":ne)+Ze,et=(Ee==="s"?b[8+f/3]:"")+et+(Xe&&ne==="("?")":""),me){for(gt=-1,Pt=fe.length;++gtQe||Qe>57){et=(Qe===46?T+fe.slice(gt+1):fe.slice(gt))+et,fe=fe.slice(0,gt);break}}}he&&!ze&&(fe=M(fe,1/0));var Tt=Ze.length+fe.length+et.length,xt=Tt>1)+Ze+fe+et+xt.slice(Tt);break;default:fe=xt+Ze+fe+et;break}return F(fe)}return Be.toString=function(){return O+""},Be}function G(O,W){var re=j((O=s(O),O.type="f",O)),ne=Math.max(-8,Math.min(8,Math.floor(n(W)/3)))*3,be=Math.pow(10,-ne),ze=b[8+ne/3];return function(Ce){return re(be*Ce)+ze}}return{format:j,formatPrefix:G}}var k;E({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function E(C){return k=v(C),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function A(C){return Math.max(0,-n(Math.abs(C)))}function L(C,M){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(M)/3)))*3-n(Math.abs(C)))}function _(C,M){return C=Math.abs(C),M=Math.abs(M)-C,Math.max(0,n(M)-n(C))+1}e.FormatSpecifier=u,e.formatDefaultLocale=E,e.formatLocale=v,e.formatSpecifier=s,e.precisionFixed=A,e.precisionPrefix=L,e.precisionRound=_,Object.defineProperty(e,"__esModule",{value:!0})})});var kee=Ae((xrr,Eee)=>{"use strict";Eee.exports=function(e){for(var t=e.length,r,n=0;n13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var _u=Ae((brr,Cee)=>{"use strict";var Ltt=kee();Cee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&Ltt(r))return!1}else if(t!=="number")return!1;return e-e<1}});var ju=Ae((wrr,Lee)=>{"use strict";Lee.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var kB=Ae((lL,zee)=>{(function(e,t){typeof lL=="object"&&typeof zee!="undefined"?t(lL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(lL,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],f+=t[(s[u]&3)<<4|s[u+1]>>4],f+=t[(s[u+1]&15)<<2|s[u+2]>>6],f+=t[s[u+2]&63];return l%3===2?f=f.substring(0,f.length-1)+"=":l%3===1&&(f=f.substring(0,f.length-2)+"=="),f},a=function(o){var s=o.length*.75,u=o.length,l,f=0,c,h,d,p;o[o.length-1]==="="&&(s--,o[o.length-2]==="="&&s--);var x=new ArrayBuffer(s),b=new Uint8Array(x);for(l=0;l>4,b[f++]=(h&15)<<4|d>>2,b[f++]=(d&3)<<6|p&63;return x};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var yg=Ae((Trr,Pee)=>{"use strict";Pee.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var yp=Ae(my=>{"use strict";var ztt=kB().decode,Ptt=yg(),CB=Array.isArray,Itt=ArrayBuffer,Dtt=DataView;function Iee(e){return Itt.isView(e)&&!(e instanceof Dtt)}my.isTypedArray=Iee;function uL(e){return CB(e)||Iee(e)}my.isArrayOrTypedArray=uL;function Rtt(e){return!uL(e[0])}my.isArray1D=Rtt;my.ensureArray=function(e,t){return CB(e)||(e=[]),e.length=t,e};var Pd={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Pd.uint8c=Pd.u1c;Pd.uint8=Pd.u1;Pd.int8=Pd.i1;Pd.uint16=Pd.u2;Pd.int16=Pd.i2;Pd.uint32=Pd.u4;Pd.int32=Pd.i4;Pd.float32=Pd.f4;Pd.float64=Pd.f8;function LB(e){return e.constructor===ArrayBuffer}my.isArrayBuffer=LB;my.decodeTypedArraySpec=function(e){var t=[],r=Ftt(e),n=r.dtype,i=Pd[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;LB(o)||(o=ztt(o));var s=r.shape===void 0?[o.byteLength/a]:(""+r.shape).split(",");s.reverse();var u=s.length,l,f,c=+s[0],h=a*c,d=0;if(u===1)t=new i(o);else if(u===2)for(l=+s[1],f=0;f{"use strict";var Ree=_u(),PB=yp().isArrayOrTypedArray;Oee.exports=function(t,r){if(Ree(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s{"use strict";var t3=kM(),Utt=/^\w*$/,Vtt=0,Nee=1,fL=2,Uee=3,ob=4;Vee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,u={};r&&r.length?(s=t3(t,r),o=s.get()):o=t,r=r||"";var l={};if(o)for(a=0;a2)return u[d]=u[d]|fL,c.set(h,null);if(f){for(a=d;a{"use strict";var Htt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,Gtt=/^[^\.\[\]]+$/;Gee.exports=function(e,t){for(;t;){var r=e.match(Htt);if(r)e=r[1];else if(e.match(Gtt))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var cL=Ae((krr,jee)=>{"use strict";var Wtt=_u();jee.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return Wtt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Yee=Ae((Crr,Xee)=>{"use strict";var Zee=yp().isArrayOrTypedArray,CM=yg();Xee.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(Zee(i)&&Zee(a)&&CM(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function jtt(e,t){var r=e%t;return r<0?r+t:r}function Ztt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Kee.exports={mod:jtt,modHalf:Ztt}});var cd=Ae((zrr,hL)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function u(me,Be){if(me=me||"",Be=Be||{},me instanceof u)return me;if(!(this instanceof u))return new u(me,Be);var fe=l(me);this._originalInput=me,this._r=fe.r,this._g=fe.g,this._b=fe.b,this._a=fe.a,this._roundA=i(100*this._a)/100,this._format=Be.format||fe.format,this._gradientType=Be.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=fe.ok,this._tc_id=n++}u.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var me=this.toRgb();return(me.r*299+me.g*587+me.b*114)/1e3},getLuminance:function(){var me=this.toRgb(),Be,fe,Ze,et,gt,Pt;return Be=me.r/255,fe=me.g/255,Ze=me.b/255,Be<=.03928?et=Be/12.92:et=e.pow((Be+.055)/1.055,2.4),fe<=.03928?gt=fe/12.92:gt=e.pow((fe+.055)/1.055,2.4),Ze<=.03928?Pt=Ze/12.92:Pt=e.pow((Ze+.055)/1.055,2.4),.2126*et+.7152*gt+.0722*Pt},setAlpha:function(me){return this._a=O(me),this._roundA=i(100*this._a)/100,this},toHsv:function(){var me=d(this._r,this._g,this._b);return{h:me.h*360,s:me.s,v:me.v,a:this._a}},toHsvString:function(){var me=d(this._r,this._g,this._b),Be=i(me.h*360),fe=i(me.s*100),Ze=i(me.v*100);return this._a==1?"hsv("+Be+", "+fe+"%, "+Ze+"%)":"hsva("+Be+", "+fe+"%, "+Ze+"%, "+this._roundA+")"},toHsl:function(){var me=c(this._r,this._g,this._b);return{h:me.h*360,s:me.s,l:me.l,a:this._a}},toHslString:function(){var me=c(this._r,this._g,this._b),Be=i(me.h*360),fe=i(me.s*100),Ze=i(me.l*100);return this._a==1?"hsl("+Be+", "+fe+"%, "+Ze+"%)":"hsla("+Be+", "+fe+"%, "+Ze+"%, "+this._roundA+")"},toHex:function(me){return x(this._r,this._g,this._b,me)},toHexString:function(me){return"#"+this.toHex(me)},toHex8:function(me){return b(this._r,this._g,this._b,this._a,me)},toHex8String:function(me){return"#"+this.toHex8(me)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(W(this._r,255)*100)+"%",g:i(W(this._g,255)*100)+"%",b:i(W(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%)":"rgba("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:j[x(this._r,this._g,this._b,!0)]||!1},toFilter:function(me){var Be="#"+v(this._r,this._g,this._b,this._a),fe=Be,Ze=this._gradientType?"GradientType = 1, ":"";if(me){var et=u(me);fe="#"+v(et._r,et._g,et._b,et._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ze+"startColorstr="+Be+",endColorstr="+fe+")"},toString:function(me){var Be=!!me;me=me||this._format;var fe=!1,Ze=this._a<1&&this._a>=0,et=!Be&&Ze&&(me==="hex"||me==="hex6"||me==="hex3"||me==="hex4"||me==="hex8"||me==="name");return et?me==="name"&&this._a===0?this.toName():this.toRgbString():(me==="rgb"&&(fe=this.toRgbString()),me==="prgb"&&(fe=this.toPercentageRgbString()),(me==="hex"||me==="hex6")&&(fe=this.toHexString()),me==="hex3"&&(fe=this.toHexString(!0)),me==="hex4"&&(fe=this.toHex8String(!0)),me==="hex8"&&(fe=this.toHex8String()),me==="name"&&(fe=this.toName()),me==="hsl"&&(fe=this.toHslString()),me==="hsv"&&(fe=this.toHsvString()),fe||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(me,Be){var fe=me.apply(null,[this].concat([].slice.call(Be)));return this._r=fe._r,this._g=fe._g,this._b=fe._b,this.setAlpha(fe._a),this},lighten:function(){return this._applyModification(L,arguments)},brighten:function(){return this._applyModification(_,arguments)},darken:function(){return this._applyModification(C,arguments)},desaturate:function(){return this._applyModification(k,arguments)},saturate:function(){return this._applyModification(E,arguments)},greyscale:function(){return this._applyModification(A,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(me,Be){return me.apply(null,[this].concat([].slice.call(Be)))},analogous:function(){return this._applyCombination(q,arguments)},complement:function(){return this._applyCombination(y,arguments)},monochromatic:function(){return this._applyCombination(U,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(z,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},u.fromRatio=function(me,Be){if(typeof me=="object"){var fe={};for(var Ze in me)me.hasOwnProperty(Ze)&&(Ze==="a"?fe[Ze]=me[Ze]:fe[Ze]=he(me[Ze]));me=fe}return u(me,Be)};function l(me){var Be={r:0,g:0,b:0},fe=1,Ze=null,et=null,gt=null,Pt=!1,Qe=!1;return typeof me=="string"&&(me=Oe(me)),typeof me=="object"&&(Me(me.r)&&Me(me.g)&&Me(me.b)?(Be=f(me.r,me.g,me.b),Pt=!0,Qe=String(me.r).substr(-1)==="%"?"prgb":"rgb"):Me(me.h)&&Me(me.s)&&Me(me.v)?(Ze=he(me.s),et=he(me.v),Be=p(me.h,Ze,et),Pt=!0,Qe="hsv"):Me(me.h)&&Me(me.s)&&Me(me.l)&&(Ze=he(me.s),gt=he(me.l),Be=h(me.h,Ze,gt),Pt=!0,Qe="hsl"),me.hasOwnProperty("a")&&(fe=me.a)),fe=O(fe),{ok:Pt,format:me.format||Qe,r:a(255,o(Be.r,0)),g:a(255,o(Be.g,0)),b:a(255,o(Be.b,0)),a:fe}}function f(me,Be,fe){return{r:W(me,255)*255,g:W(Be,255)*255,b:W(fe,255)*255}}function c(me,Be,fe){me=W(me,255),Be=W(Be,255),fe=W(fe,255);var Ze=o(me,Be,fe),et=a(me,Be,fe),gt,Pt,Qe=(Ze+et)/2;if(Ze==et)gt=Pt=0;else{var Xe=Ze-et;switch(Pt=Qe>.5?Xe/(2-Ze-et):Xe/(Ze+et),Ze){case me:gt=(Be-fe)/Xe+(Be1&&(_t-=1),_t<1/6?Tt+(xt-Tt)*6*_t:_t<1/2?xt:_t<2/3?Tt+(xt-Tt)*(2/3-_t)*6:Tt}if(Be===0)Ze=et=gt=fe;else{var Qe=fe<.5?fe*(1+Be):fe+Be-fe*Be,Xe=2*fe-Qe;Ze=Pt(Xe,Qe,me+1/3),et=Pt(Xe,Qe,me),gt=Pt(Xe,Qe,me-1/3)}return{r:Ze*255,g:et*255,b:gt*255}}function d(me,Be,fe){me=W(me,255),Be=W(Be,255),fe=W(fe,255);var Ze=o(me,Be,fe),et=a(me,Be,fe),gt,Pt,Qe=Ze,Xe=Ze-et;if(Pt=Ze===0?0:Xe/Ze,Ze==et)gt=0;else{switch(Ze){case me:gt=(Be-fe)/Xe+(Be>1)+720)%360;--Be;)Ze.h=(Ze.h+et)%360,gt.push(u(Ze));return gt}function U(me,Be){Be=Be||6;for(var fe=u(me).toHsv(),Ze=fe.h,et=fe.s,gt=fe.v,Pt=[],Qe=1/Be;Be--;)Pt.push(u({h:Ze,s:et,v:gt})),gt=(gt+Qe)%1;return Pt}u.mix=function(me,Be,fe){fe=fe===0?0:fe||50;var Ze=u(me).toRgb(),et=u(Be).toRgb(),gt=fe/100,Pt={r:(et.r-Ze.r)*gt+Ze.r,g:(et.g-Ze.g)*gt+Ze.g,b:(et.b-Ze.b)*gt+Ze.b,a:(et.a-Ze.a)*gt+Ze.a};return u(Pt)},u.readability=function(me,Be){var fe=u(me),Ze=u(Be);return(e.max(fe.getLuminance(),Ze.getLuminance())+.05)/(e.min(fe.getLuminance(),Ze.getLuminance())+.05)},u.isReadable=function(me,Be,fe){var Ze=u.readability(me,Be),et,gt;switch(gt=!1,et=Re(fe),et.level+et.size){case"AAsmall":case"AAAlarge":gt=Ze>=4.5;break;case"AAlarge":gt=Ze>=3;break;case"AAAsmall":gt=Ze>=7;break}return gt},u.mostReadable=function(me,Be,fe){var Ze=null,et=0,gt,Pt,Qe,Xe;fe=fe||{},Pt=fe.includeFallbackColors,Qe=fe.level,Xe=fe.size;for(var Tt=0;Ttet&&(et=gt,Ze=u(Be[Tt]));return u.isReadable(me,Ze,{level:Qe,size:Xe})||!Pt?Ze:(fe.includeFallbackColors=!1,u.mostReadable(me,["#fff","#000"],fe))};var H=u.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},j=u.hexNames=G(H);function G(me){var Be={};for(var fe in me)me.hasOwnProperty(fe)&&(Be[me[fe]]=fe);return Be}function O(me){return me=parseFloat(me),(isNaN(me)||me<0||me>1)&&(me=1),me}function W(me,Be){be(me)&&(me="100%");var fe=ze(me);return me=a(Be,o(0,parseFloat(me))),fe&&(me=parseInt(me*Be,10)/100),e.abs(me-Be)<1e-6?1:me%Be/parseFloat(Be)}function re(me){return a(1,o(0,me))}function ne(me){return parseInt(me,16)}function be(me){return typeof me=="string"&&me.indexOf(".")!=-1&&parseFloat(me)===1}function ze(me){return typeof me=="string"&&me.indexOf("%")!=-1}function Ce(me){return me.length==1?"0"+me:""+me}function he(me){return me<=1&&(me=me*100+"%"),me}function te(me){return e.round(parseFloat(me)*255).toString(16)}function ke(me){return ne(me)/255}var Ee=function(){var me="[-\\+]?\\d+%?",Be="[-\\+]?\\d*\\.\\d+%?",fe="(?:"+Be+")|(?:"+me+")",Ze="[\\s|\\(]+("+fe+")[,|\\s]+("+fe+")[,|\\s]+("+fe+")\\s*\\)?",et="[\\s|\\(]+("+fe+")[,|\\s]+("+fe+")[,|\\s]+("+fe+")[,|\\s]+("+fe+")\\s*\\)?";return{CSS_UNIT:new RegExp(fe),rgb:new RegExp("rgb"+Ze),rgba:new RegExp("rgba"+et),hsl:new RegExp("hsl"+Ze),hsla:new RegExp("hsla"+et),hsv:new RegExp("hsv"+Ze),hsva:new RegExp("hsva"+et),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Me(me){return!!Ee.CSS_UNIT.exec(me)}function Oe(me){me=me.replace(t,"").replace(r,"").toLowerCase();var Be=!1;if(H[me])me=H[me],Be=!0;else if(me=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var fe;return(fe=Ee.rgb.exec(me))?{r:fe[1],g:fe[2],b:fe[3]}:(fe=Ee.rgba.exec(me))?{r:fe[1],g:fe[2],b:fe[3],a:fe[4]}:(fe=Ee.hsl.exec(me))?{h:fe[1],s:fe[2],l:fe[3]}:(fe=Ee.hsla.exec(me))?{h:fe[1],s:fe[2],l:fe[3],a:fe[4]}:(fe=Ee.hsv.exec(me))?{h:fe[1],s:fe[2],v:fe[3]}:(fe=Ee.hsva.exec(me))?{h:fe[1],s:fe[2],v:fe[3],a:fe[4]}:(fe=Ee.hex8.exec(me))?{r:ne(fe[1]),g:ne(fe[2]),b:ne(fe[3]),a:ke(fe[4]),format:Be?"name":"hex8"}:(fe=Ee.hex6.exec(me))?{r:ne(fe[1]),g:ne(fe[2]),b:ne(fe[3]),format:Be?"name":"hex"}:(fe=Ee.hex4.exec(me))?{r:ne(fe[1]+""+fe[1]),g:ne(fe[2]+""+fe[2]),b:ne(fe[3]+""+fe[3]),a:ke(fe[4]+""+fe[4]),format:Be?"name":"hex8"}:(fe=Ee.hex3.exec(me))?{r:ne(fe[1]+""+fe[1]),g:ne(fe[2]+""+fe[2]),b:ne(fe[3]+""+fe[3]),format:Be?"name":"hex"}:!1}function Re(me){var Be,fe;return me=me||{level:"AA",size:"small"},Be=(me.level||"AA").toUpperCase(),fe=(me.size||"small").toLowerCase(),Be!=="AA"&&Be!=="AAA"&&(Be="AA"),fe!=="small"&&fe!=="large"&&(fe="small"),{level:Be,size:fe}}typeof hL!="undefined"&&hL.exports?hL.exports=u:window.tinycolor=u})(Math)});var vu=Ae(PM=>{"use strict";var Jee=yg(),LM=Array.isArray;function Xtt(e,t){var r,n;for(r=0;r{"use strict";$ee.exports=function(e){var t=e.variantValues,r=e.editType,n=e.colorEditType;n===void 0&&(n=r);var i={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(i.valType="enumerated",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:n},weight:i,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(a.size.dflt="auto"),e.autoColor&&(a.color.dflt="auto"),e.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,e.noFontVariant||(a.variant.arrayOk=!0),e.noFontTextcase||(a.textcase.arrayOk=!0),e.noFontLineposition||(a.lineposition.arrayOk=!0),e.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}});var IM=Ae((Drr,Qee)=>{"use strict";Qee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var N1=Ae((Rrr,rte)=>{"use strict";var ete=IM(),tte=uc(),IB=tte({editType:"none"});IB.family.dflt=ete.HOVERFONT;IB.size.dflt=ete.HOVERFONTSIZE;rte.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:IB,grouptitlefont:tte({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i3=Ae((Frr,ite)=>{"use strict";var Ytt=uc(),dL=N1().hoverlabel,pL=vu().extendFlat;ite.exports={hoverlabel:{bgcolor:pL({},dL.bgcolor,{arrayOk:!0}),bordercolor:pL({},dL.bordercolor,{arrayOk:!0}),font:Ytt({arrayOk:!0,editType:"none"}),align:pL({},dL.align,{arrayOk:!0}),namelength:pL({},dL.namelength,{arrayOk:!0}),editType:"none"}}});var zf=Ae((qrr,nte)=>{"use strict";var Ktt=uc(),Jtt=i3();nte.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:Ktt({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:Jtt.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var sb=Ae((Brr,ste)=>{"use strict";var $tt=cd(),vL={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},ate=vL.RdBu;function Qtt(e,t){if(t||(t=ate),!e)return t;function r(){try{e=vL[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),ote(e)?e:t}function ote(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r{"use strict";lb.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];lb.defaultLine="#444";lb.lightLine="#eee";lb.background="#fff";lb.borderLine="#BEC8D9";lb.lightFraction=100*10/11});var Pl=Ae((Nrr,lte)=>{"use strict";var xv=cd(),trt=_u(),rrt=yp().isTypedArray,hd=lte.exports={},yL=Ih();hd.defaults=yL.defaults;var irt=hd.defaultLine=yL.defaultLine;hd.lightLine=yL.lightLine;var RB=hd.background=yL.background;hd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};hd.rgb=function(e){return hd.tinyRGB(xv(e))};hd.opacity=function(e){return e?xv(e).getAlpha():0};hd.addOpacity=function(e,t){var r=xv(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};hd.combine=function(e,t){var r=xv(e).toRgb();if(r.a===1)return xv(e).toRgbString();var n=xv(t||RB).toRgb(),i=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},a={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return xv(a).toRgbString()};hd.interpolate=function(e,t,r){var n=xv(e).toRgb(),i=xv(t).toRgb(),a={r:r*n.r+(1-r)*i.r,g:r*n.g+(1-r)*i.g,b:r*n.b+(1-r)*i.b};return xv(a).toRgbString()};hd.contrast=function(e,t,r){var n=xv(e);n.getAlpha()!==1&&(n=xv(hd.combine(e,RB)));var i=n.isDark()?t?n.lighten(t):RB:r?n.darken(r):irt;return i.toString()};hd.stroke=function(e,t){var r=xv(t);e.style({stroke:hd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};hd.fill=function(e,t){var r=xv(t);e.style({fill:hd.tinyRGB(r),"fill-opacity":r.getAlpha()})};hd.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r=0)))return e;if(a===3)n[a]>1&&(n[a]=1);else if(n[a]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return i?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var U1=Ae((Urr,ute)=>{"use strict";ute.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n3=Ae(fte=>{"use strict";fte.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var pte=Ae(bv=>{"use strict";var FB=_u(),cte=cd(),hte=vu().extendFlat,nrt=zf(),art=sb(),ort=Pl(),srt=U1().DESELECTDIM,a3=kM(),dte=n3().counter,lrt=r3().modHalf,dm=yp().isArrayOrTypedArray,V1=yp().isTypedArraySpec,H1=yp().decodeTypedArraySpec;bv.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dm(e)?e:V1(e)?H1(e):r)}},enumerated:{coerceFunction:function(e,t,r,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,n=0;nn.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}V1(e)&&(e=H1(e)),e%1||!FB(e)||n.min!==void 0&&en.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,n){if(typeof e!="string"){var i=typeof e=="number";n.strict===!0||!i?t.set(r):t.set(String(e))}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),cte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return cte(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(art.get(e,r))}},angle:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),e==="auto"?t.set("auto"):FB(e)?t.set(lrt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||dte(r);if(typeof e=="string"&&i.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!dte(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a{"use strict";var vte={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},yte={};function mte(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),mte(n,t[r]))}}mte(vte,yte);gte.exports={configAttributes:vte,dfltConfig:yte}});var BB=Ae((Wrr,_te)=>{"use strict";var qB=Nl(),urt=_u(),DM=[];_te.exports=function(e,t){if(DM.indexOf(e)!==-1)return;DM.push(e);var r=1e3;urt(t)?r=t:t==="long"&&(r=3e3);var n=qB.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(DM);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var u=DM.indexOf(s);u!==-1&&DM.splice(u,1),qB.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=qB.select(this);s.append("button").classed("notifier-close",!0).html("×").on("click",function(){s.transition().call(a)});for(var u=s.append("p"),l=o.split(//g),f=0;f{"use strict";var o3=ub().dfltConfig,OB=BB(),NB=xte.exports={};NB.log=function(){var e;if(o3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};NB.warn=function(){var e;if(o3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};NB.error=function(){var e;if(o3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var gL=Ae((Zrr,bte)=>{"use strict";bte.exports=function(){}});var UB=Ae((Xrr,wte)=>{"use strict";wte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{Tte.exports=frt;function frt(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Mte=Ae((Krr,Ste)=>{Ste.exports=crt;function crt(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var kte=Ae((Jrr,Ete)=>{Ete.exports=hrt;function hrt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var VB=Ae(($rr,Cte)=>{Cte.exports=drt;function drt(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var zte=Ae((Qrr,Lte)=>{Lte.exports=prt;function prt(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var Ite=Ae((eir,Pte)=>{Pte.exports=vrt;function vrt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],u=t[6],l=t[7],f=t[8],c=t[9],h=t[10],d=t[11],p=t[12],x=t[13],b=t[14],v=t[15],k=r*s-n*o,E=r*u-i*o,A=r*l-a*o,L=n*u-i*s,_=n*l-a*s,C=i*l-a*u,M=f*x-c*p,y=f*b-h*p,z=f*v-d*p,T=c*b-h*x,F=c*v-d*x,q=h*v-d*b,U=k*q-E*F+A*T+L*z-_*y+C*M;return U?(U=1/U,e[0]=(s*q-u*F+l*T)*U,e[1]=(i*F-n*q-a*T)*U,e[2]=(x*C-b*_+v*L)*U,e[3]=(h*_-c*C-d*L)*U,e[4]=(u*z-o*q-l*y)*U,e[5]=(r*q-i*z+a*y)*U,e[6]=(b*A-p*C-v*E)*U,e[7]=(f*C-h*A+d*E)*U,e[8]=(o*F-s*z+l*M)*U,e[9]=(n*z-r*F-a*M)*U,e[10]=(p*_-x*A+v*k)*U,e[11]=(c*A-f*_-d*k)*U,e[12]=(s*y-o*T-u*M)*U,e[13]=(r*T-n*y+i*M)*U,e[14]=(x*E-p*L-b*k)*U,e[15]=(f*L-c*E+h*k)*U,e):null}});var Rte=Ae((tir,Dte)=>{Dte.exports=yrt;function yrt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],u=t[6],l=t[7],f=t[8],c=t[9],h=t[10],d=t[11],p=t[12],x=t[13],b=t[14],v=t[15];return e[0]=s*(h*v-d*b)-c*(u*v-l*b)+x*(u*d-l*h),e[1]=-(n*(h*v-d*b)-c*(i*v-a*b)+x*(i*d-a*h)),e[2]=n*(u*v-l*b)-s*(i*v-a*b)+x*(i*l-a*u),e[3]=-(n*(u*d-l*h)-s*(i*d-a*h)+c*(i*l-a*u)),e[4]=-(o*(h*v-d*b)-f*(u*v-l*b)+p*(u*d-l*h)),e[5]=r*(h*v-d*b)-f*(i*v-a*b)+p*(i*d-a*h),e[6]=-(r*(u*v-l*b)-o*(i*v-a*b)+p*(i*l-a*u)),e[7]=r*(u*d-l*h)-o*(i*d-a*h)+f*(i*l-a*u),e[8]=o*(c*v-d*x)-f*(s*v-l*x)+p*(s*d-l*c),e[9]=-(r*(c*v-d*x)-f*(n*v-a*x)+p*(n*d-a*c)),e[10]=r*(s*v-l*x)-o*(n*v-a*x)+p*(n*l-a*s),e[11]=-(r*(s*d-l*c)-o*(n*d-a*c)+f*(n*l-a*s)),e[12]=-(o*(c*b-h*x)-f*(s*b-u*x)+p*(s*h-u*c)),e[13]=r*(c*b-h*x)-f*(n*b-i*x)+p*(n*h-i*c),e[14]=-(r*(s*b-u*x)-o*(n*b-i*x)+p*(n*u-i*s)),e[15]=r*(s*h-u*c)-o*(n*h-i*c)+f*(n*u-i*s),e}});var qte=Ae((rir,Fte)=>{Fte.exports=mrt;function mrt(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],u=e[7],l=e[8],f=e[9],c=e[10],h=e[11],d=e[12],p=e[13],x=e[14],b=e[15],v=t*o-r*a,k=t*s-n*a,E=t*u-i*a,A=r*s-n*o,L=r*u-i*o,_=n*u-i*s,C=l*p-f*d,M=l*x-c*d,y=l*b-h*d,z=f*x-c*p,T=f*b-h*p,F=c*b-h*x;return v*F-k*T+E*z+A*y-L*M+_*C}});var Ote=Ae((iir,Bte)=>{Bte.exports=grt;function grt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],u=t[5],l=t[6],f=t[7],c=t[8],h=t[9],d=t[10],p=t[11],x=t[12],b=t[13],v=t[14],k=t[15],E=r[0],A=r[1],L=r[2],_=r[3];return e[0]=E*n+A*s+L*c+_*x,e[1]=E*i+A*u+L*h+_*b,e[2]=E*a+A*l+L*d+_*v,e[3]=E*o+A*f+L*p+_*k,E=r[4],A=r[5],L=r[6],_=r[7],e[4]=E*n+A*s+L*c+_*x,e[5]=E*i+A*u+L*h+_*b,e[6]=E*a+A*l+L*d+_*v,e[7]=E*o+A*f+L*p+_*k,E=r[8],A=r[9],L=r[10],_=r[11],e[8]=E*n+A*s+L*c+_*x,e[9]=E*i+A*u+L*h+_*b,e[10]=E*a+A*l+L*d+_*v,e[11]=E*o+A*f+L*p+_*k,E=r[12],A=r[13],L=r[14],_=r[15],e[12]=E*n+A*s+L*c+_*x,e[13]=E*i+A*u+L*h+_*b,e[14]=E*a+A*l+L*d+_*v,e[15]=E*o+A*f+L*p+_*k,e}});var Ute=Ae((nir,Nte)=>{Nte.exports=_rt;function _rt(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,u,l,f,c,h,d,p,x,b,v;return t===e?(e[12]=t[0]*n+t[4]*i+t[8]*a+t[12],e[13]=t[1]*n+t[5]*i+t[9]*a+t[13],e[14]=t[2]*n+t[6]*i+t[10]*a+t[14],e[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],u=t[2],l=t[3],f=t[4],c=t[5],h=t[6],d=t[7],p=t[8],x=t[9],b=t[10],v=t[11],e[0]=o,e[1]=s,e[2]=u,e[3]=l,e[4]=f,e[5]=c,e[6]=h,e[7]=d,e[8]=p,e[9]=x,e[10]=b,e[11]=v,e[12]=o*n+f*i+p*a+t[12],e[13]=s*n+c*i+x*a+t[13],e[14]=u*n+h*i+b*a+t[14],e[15]=l*n+d*i+v*a+t[15]),e}});var Hte=Ae((air,Vte)=>{Vte.exports=xrt;function xrt(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Wte=Ae((oir,Gte)=>{Gte.exports=brt;function brt(e,t,r,n){var i=n[0],a=n[1],o=n[2],s=Math.sqrt(i*i+a*a+o*o),u,l,f,c,h,d,p,x,b,v,k,E,A,L,_,C,M,y,z,T,F,q,U,H;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,u=Math.sin(r),l=Math.cos(r),f=1-l,c=t[0],h=t[1],d=t[2],p=t[3],x=t[4],b=t[5],v=t[6],k=t[7],E=t[8],A=t[9],L=t[10],_=t[11],C=i*i*f+l,M=a*i*f+o*u,y=o*i*f-a*u,z=i*a*f-o*u,T=a*a*f+l,F=o*a*f+i*u,q=i*o*f+a*u,U=a*o*f-i*u,H=o*o*f+l,e[0]=c*C+x*M+E*y,e[1]=h*C+b*M+A*y,e[2]=d*C+v*M+L*y,e[3]=p*C+k*M+_*y,e[4]=c*z+x*T+E*F,e[5]=h*z+b*T+A*F,e[6]=d*z+v*T+L*F,e[7]=p*z+k*T+_*F,e[8]=c*q+x*U+E*H,e[9]=h*q+b*U+A*H,e[10]=d*q+v*U+L*H,e[11]=p*q+k*U+_*H,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Zte=Ae((sir,jte)=>{jte.exports=wrt;function wrt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],u=t[7],l=t[8],f=t[9],c=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+l*n,e[5]=o*i+f*n,e[6]=s*i+c*n,e[7]=u*i+h*n,e[8]=l*i-a*n,e[9]=f*i-o*n,e[10]=c*i-s*n,e[11]=h*i-u*n,e}});var Yte=Ae((lir,Xte)=>{Xte.exports=Trt;function Trt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],u=t[3],l=t[8],f=t[9],c=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-l*n,e[1]=o*i-f*n,e[2]=s*i-c*n,e[3]=u*i-h*n,e[8]=a*n+l*i,e[9]=o*n+f*i,e[10]=s*n+c*i,e[11]=u*n+h*i,e}});var Jte=Ae((uir,Kte)=>{Kte.exports=Art;function Art(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],u=t[3],l=t[4],f=t[5],c=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+l*n,e[1]=o*i+f*n,e[2]=s*i+c*n,e[3]=u*i+h*n,e[4]=l*i-a*n,e[5]=f*i-o*n,e[6]=c*i-s*n,e[7]=h*i-u*n,e}});var Qte=Ae((fir,$te)=>{$te.exports=Srt;function Srt(e,t,r){var n,i,a,o=r[0],s=r[1],u=r[2],l=Math.sqrt(o*o+s*s+u*u);return Math.abs(l)<1e-6?null:(l=1/l,o*=l,s*=l,u*=l,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+u*n,e[2]=u*o*a-s*n,e[3]=0,e[4]=o*s*a-u*n,e[5]=s*s*a+i,e[6]=u*s*a+o*n,e[7]=0,e[8]=o*u*a+s*n,e[9]=s*u*a-o*n,e[10]=u*u*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var tre=Ae((cir,ere)=>{ere.exports=Mrt;function Mrt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,u=i+i,l=a+a,f=n*s,c=n*u,h=n*l,d=i*u,p=i*l,x=a*l,b=o*s,v=o*u,k=o*l;return e[0]=1-(d+x),e[1]=c+k,e[2]=h-v,e[3]=0,e[4]=c-k,e[5]=1-(f+x),e[6]=p+b,e[7]=0,e[8]=h+v,e[9]=p-b,e[10]=1-(f+d),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var ire=Ae((hir,rre)=>{rre.exports=Ert;function Ert(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var are=Ae((dir,nre)=>{nre.exports=krt;function krt(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var sre=Ae((pir,ore)=>{ore.exports=Crt;function Crt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ure=Ae((vir,lre)=>{lre.exports=Lrt;function Lrt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var cre=Ae((yir,fre)=>{fre.exports=zrt;function zrt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var HB=Ae((mir,hre)=>{hre.exports=Prt;function Prt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,u=i+i,l=r*o,f=n*o,c=n*s,h=i*o,d=i*s,p=i*u,x=a*o,b=a*s,v=a*u;return e[0]=1-c-p,e[1]=f+v,e[2]=h-b,e[3]=0,e[4]=f-v,e[5]=1-l-p,e[6]=d+x,e[7]=0,e[8]=h+b,e[9]=d-x,e[10]=1-l-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var pre=Ae((gir,dre)=>{dre.exports=Irt;function Irt(e,t,r,n,i,a,o){var s=1/(r-t),u=1/(i-n),l=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*u,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*u,e[10]=(o+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*l,e[15]=0,e}});var yre=Ae((_ir,vre)=>{vre.exports=Drt;function Drt(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var gre=Ae((xir,mre)=>{mre.exports=Rrt;function Rrt(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),u=2/(o+s),l=2/(i+a);return e[0]=u,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=l,e[6]=0,e[7]=0,e[8]=-((o-s)*u*.5),e[9]=(i-a)*l*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var xre=Ae((bir,_re)=>{_re.exports=Frt;function Frt(e,t,r,n,i,a,o){var s=1/(t-r),u=1/(n-i),l=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*u,e[14]=(o+a)*l,e[15]=1,e}});var wre=Ae((wir,bre)=>{var qrt=VB();bre.exports=Brt;function Brt(e,t,r,n){var i,a,o,s,u,l,f,c,h,d,p=t[0],x=t[1],b=t[2],v=n[0],k=n[1],E=n[2],A=r[0],L=r[1],_=r[2];return Math.abs(p-A)<1e-6&&Math.abs(x-L)<1e-6&&Math.abs(b-_)<1e-6?qrt(e):(f=p-A,c=x-L,h=b-_,d=1/Math.sqrt(f*f+c*c+h*h),f*=d,c*=d,h*=d,i=k*h-E*c,a=E*f-v*h,o=v*c-k*f,d=Math.sqrt(i*i+a*a+o*o),d?(d=1/d,i*=d,a*=d,o*=d):(i=0,a=0,o=0),s=c*o-h*a,u=h*i-f*o,l=f*a-c*i,d=Math.sqrt(s*s+u*u+l*l),d?(d=1/d,s*=d,u*=d,l*=d):(s=0,u=0,l=0),e[0]=i,e[1]=s,e[2]=f,e[3]=0,e[4]=a,e[5]=u,e[6]=c,e[7]=0,e[8]=o,e[9]=l,e[10]=h,e[11]=0,e[12]=-(i*p+a*x+o*b),e[13]=-(s*p+u*x+l*b),e[14]=-(f*p+c*x+h*b),e[15]=1,e)}});var Are=Ae((Tir,Tre)=>{Tre.exports=Ort;function Ort(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var GB=Ae((Air,Sre)=>{Sre.exports={create:Ate(),clone:Mte(),copy:kte(),identity:VB(),transpose:zte(),invert:Ite(),adjoint:Rte(),determinant:qte(),multiply:Ote(),translate:Ute(),scale:Hte(),rotate:Wte(),rotateX:Zte(),rotateY:Yte(),rotateZ:Jte(),fromRotation:Qte(),fromRotationTranslation:tre(),fromScaling:ire(),fromTranslation:are(),fromXRotation:sre(),fromYRotation:ure(),fromZRotation:cre(),fromQuat:HB(),frustum:pre(),perspective:yre(),perspectiveFromFieldOfView:gre(),ortho:xre(),lookAt:wre(),str:Are()}});var _L=Ae(xh=>{"use strict";var Nrt=GB();xh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var Urt=Nl(),Mre=G1(),Vrt=_L(),Hrt=GB();function Grt(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function Wrt(e){var t=Urt.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function Ere(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function jrt(e,t){kre("global",e,t)}function kre(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);if(!(i&&i.matches(".no-inline-styles"))){i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a?a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):Mre.warn("addStyleRule failed"):Mre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function Zrt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&Ere(r)}function Xrt(e,t,r,n,i,a){var o=n.split(":"),s=i.split(":"),u="data-btn-style-event-added";a||(a=document),a.querySelectorAll(e).forEach(function(l){l.getAttribute(u)||(l.addEventListener("mouseenter",function(){var f=this.querySelector(r);f&&(f.style[o[0]]=o[1])}),l.addEventListener("mouseleave",function(){var f=this.querySelector(r);f&&(t&&this.matches(t)?f.style[o[0]]=o[1]:f.style[s[0]]=s[1])}),l.setAttribute(u,!0))})}function Yrt(e){var t=Lre(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=Cre(n);if(i){var a=Vrt.convertCssMatrix(i);r=Hrt.multiply(r,r,a)}}),r}function Cre(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function Lre(e){for(var t=[];Krt(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function Krt(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function Jrt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}zre.exports={getGraphDiv:Grt,isPlotDiv:Wrt,removeElement:Ere,addStyleRule:jrt,addRelatedStyleRule:kre,deleteRelatedStyleRule:Zrt,setStyleOnHover:Xrt,getFullTransformMatrix:Yrt,getElementTransformMatrix:Cre,getElementAndAncestors:Lre,equalDomRects:Jrt}});var FM=Ae((Eir,Pre)=>{"use strict";Pre.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var _c=Ae((kir,Ore)=>{"use strict";var Dre=vu().extendFlat,$rt=yg(),Rre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Fre={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Qrt=Rre.flags.slice().concat(["fullReplot"]),eit=Fre.flags.slice().concat("layoutReplot");Ore.exports={traces:Rre,layout:Fre,traceFlags:function(){return Ire(Qrt)},layoutFlags:function(){return Ire(eit)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";WB.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};WB.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var jB=Ae((Lir,Nre)=>{"use strict";Nre.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Du=Ae(xL=>{"use strict";var Ure=jB(),zir=Ure.FORMAT_LINK,Pir=Ure.DATE_FORMAT_LINK;function ZB(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var n=[],i=0;i{"use strict";function W1(e,t){return t?t.d2l(e):e}function Vre(e,t){return t?t.l2d(e):e}function tit(e){return e.x0}function rit(e){return e.x1}function iit(e){return e.y0}function nit(e){return e.y1}function Hre(e){return e.x0shift||0}function Gre(e){return e.x1shift||0}function Wre(e){return e.y0shift||0}function jre(e){return e.y1shift||0}function bL(e,t){return W1(e.x1,t)+Gre(e)-W1(e.x0,t)-Hre(e)}function wL(e,t,r){return W1(e.y1,r)+jre(e)-W1(e.y0,r)-Wre(e)}function ait(e,t){return Math.abs(bL(e,t))}function oit(e,t,r){return Math.abs(wL(e,t,r))}function sit(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(bL(e,t),2)+Math.pow(wL(e,t,r),2))}function lit(e,t){return Vre((W1(e.x1,t)+Gre(e)+W1(e.x0,t)+Hre(e))/2,t)}function uit(e,t,r){return Vre((W1(e.y1,r)+jre(e)+W1(e.y0,r)+Wre(e))/2,r)}function fit(e,t,r){return e.type!=="line"?void 0:wL(e,t,r)/bL(e,t)}Zre.exports={x0:tit,x1:rit,y0:iit,y1:nit,slope:fit,dx:bL,dy:wL,width:ait,height:oit,length:sit,xcenter:lit,ycenter:uit}});var Kre=Ae((Rir,Yre)=>{"use strict";var cit=_c().overrideAll,fb=zf(),Xre=uc(),hit=Id().dash,j1=vu().extendFlat,dit=Du().shapeTexttemplateAttrs,pit=TL();Yre.exports=cit({newshape:{visible:j1({},fb.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:j1({},fb.legend,{}),legendgroup:j1({},fb.legendgroup,{}),legendgrouptitle:{text:j1({},fb.legendgrouptitle.text,{}),font:Xre({})},legendrank:j1({},fb.legendrank,{}),legendwidth:j1({},fb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:j1({},hit,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:j1({},fb.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:dit({newshape:!0},{keys:Object.keys(pit)}),font:Xre({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var $re=Ae((Fir,Jre)=>{"use strict";var vit=Id().dash,yit=vu().extendFlat;Jre.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:yit({},vit,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var AL=Ae((qir,Qre)=>{"use strict";Qre.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var s3=Ae((Bir,iie)=>{"use strict";var XB=uc(),mit=FM(),SL=Ih(),eie=Kre(),tie=$re(),git=AL(),rie=vu().extendFlat,ML=XB({editType:"calc"});ML.family.dflt='"Open Sans", verdana, arial, sans-serif';ML.size.dflt=12;ML.color.dflt=SL.defaultLine;iie.exports={font:ML,title:{text:{valType:"string",editType:"layoutstyle"},font:XB({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:XB({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:rie(git({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:SL.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:SL.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:SL.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:eie.newshape,activeshape:eie.activeshape,newselection:tie.newselection,activeselection:tie.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:rie({},mit.transition,{editType:"none"})}});var nie=Bf(()=>{});var _it={};var aie=Bf(()=>{nie()});var Ul=Ae(df=>{"use strict";var l3=G1(),oie=gL(),sie=UB(),xit=yg(),bit=RM().addStyleRule,lie=vu(),wit=zf(),Tit=s3(),Ait=lie.extendFlat,YB=lie.extendDeepAll;df.modules={};df.allCategories={};df.allTypes=[];df.subplotsRegistry={};df.componentsRegistry={};df.layoutArrayContainers=[];df.layoutArrayRegexes=[];df.traceLayoutAttributes={};df.localeRegistry={};df.apiMethodRegistry={};df.collectableSubplotTypes=null;df.register=function(t){if(df.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r{"use strict";var Lit=e3().timeFormat,_ie=_u(),KB=G1(),X1=r3().mod,c3=ju(),_0=c3.BADNUM,wv=c3.ONEDAY,qM=c3.ONEHOUR,Z1=c3.ONEMIN,f3=c3.ONESEC,BM=c3.EPOCHJD,mg=Ul(),die=e3().utcFormat,zit=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Pit=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,pie=new Date().getFullYear()-70;function gg(e){return e&&mg.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}bh.dateTick0=function(e,t){var r=Iit(e,!!t);if(t<2)return r;var n=bh.dateTime2ms(r,e);return n+=wv*(t-1),bh.ms2DateTime(n,0,e)};function Iit(e,t){return gg(e)?t?mg.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:mg.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}bh.dfltRange=function(e){return gg(e)?mg.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};bh.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var kL,CL;bh.dateTime2ms=function(e,t){if(bh.isJSDate(e)){var r=e.getTimezoneOffset()*Z1,n=(e.getUTCMinutes()-e.getMinutes())*Z1+(e.getUTCSeconds()-e.getSeconds())*f3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*Z1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=kL&&e<=CL?e:_0}if(typeof e!="string"&&typeof e!="number")return _0;e=String(e);var a=gg(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.substr(1),t="");var s=a&&t.substr(0,7)==="chinese",u=e.match(s?Pit:zit);if(!u)return _0;var l=u[1],f=u[3]||"1",c=Number(u[5]||1),h=Number(u[7]||0),d=Number(u[9]||0),p=Number(u[11]||0);if(a){if(l.length===2)return _0;l=Number(l);var x;try{var b=mg.getComponentMethod("calendars","getCal")(t);if(s){var v=f.charAt(f.length-1)==="i";f=parseInt(f,10),x=b.newDate(l,b.toMonthIndex(l,f,v),c)}else x=b.newDate(l,Number(f),c)}catch(E){return _0}return x?(x.toJD()-BM)*wv+h*qM+d*Z1+p*f3:_0}l.length===2?l=(Number(l)+2e3-pie)%100+pie:l=Number(l),f-=1;var k=new Date(Date.UTC(2e3,f,c,h,d));return k.setUTCFullYear(l),k.getUTCMonth()!==f||k.getUTCDate()!==c?_0:k.getTime()+p*f3};kL=bh.MIN_MS=bh.dateTime2ms("-9999");CL=bh.MAX_MS=bh.dateTime2ms("9999-12-31 23:59:59.9999");bh.isDateTime=function(e,t){return bh.dateTime2ms(e,t)!==_0};function u3(e,t){return String(e+Math.pow(10,t)).substr(1)}var EL=90*wv,vie=3*qM,yie=5*Z1;bh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=kL&&e<=CL))return _0;t||(t=0);var n=Math.floor(X1(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,u,l,f;if(gg(r)){var c=Math.floor(i/wv)+BM,h=Math.floor(X1(e,wv));try{a=mg.getComponentMethod("calendars","getCal")(r).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){a=die("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t=kL+wv&&e<=CL-wv))return _0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=Lit("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return xie(n,i,a,o,s)};function xie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+u3(t,2)+":"+u3(r,2),(n||i)&&(e+=":"+u3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+u3(i,a)}return e}bh.cleanDate=function(e,t,r){if(e===_0)return t;if(bh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(gg(r))return KB.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=bh.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!bh.isDateTime(e,r))return KB.error("unrecognized date",e),t;return e};var Dit=/%\d?f/g,Rit=/%h/g,Fit={1:"1",2:"1",3:"2",4:"2"};function mie(e,t,r,n){e=e.replace(Dit,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(Rit,function(){return Fit[r("%q")(i)]}),gg(n))try{e=mg.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var qit=[59,59.9,59.99,59.999,59.9999];function Bit(e,t){var r=X1(e+.05,wv),n=u3(Math.floor(r/qM),2)+":"+u3(X1(Math.floor(r/Z1),60),2);if(t!=="M"){_ie(t)||(t=0);var i=Math.min(X1(e/f3,60),qit[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}bh.formatDate=function(e,t,r,n,i,a){if(i=gg(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` diff --git a/dist/plotly-with-meta.js b/dist/plotly-with-meta.js index 861985ed04f..97c87da1b7d 100644 --- a/dist/plotly-with-meta.js +++ b/dist/plotly-with-meta.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.2 +* plotly.js v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -69,7 +69,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); @@ -10179,15 +10179,9 @@ var Plotly = (() => { editType, description: [ "HTML font family - the typeface that will be applied by the web browser.", - "The web browser will only be able to apply a font if it is available on the system", - "which it operates. Provide multiple font families, separated by commas, to indicate", - "the preference in which to apply fonts if they aren't available on the system.", - "The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server,", - "where only a select number of", - "fonts are installed and supported.", - "These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*,", - "*Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*,", - "*PT Sans Narrow*, *Raleway*, *Times New Roman*." + "The web browser can only apply a font if it is available on the system where", + "it runs. Provide multiple font families, separated by commas, to indicate", + "the order in which to apply fonts if they aren't available." ].join(" ") }, size: { diff --git a/dist/plotly.js b/dist/plotly.js index 96fc5191ef3..96d9dc42218 100644 --- a/dist/plotly.js +++ b/dist/plotly.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.2 +* plotly.js v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -69,7 +69,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.2"; + exports.version = "3.0.3"; } }); diff --git a/dist/plotly.min.js b/dist/plotly.min.js index d96b693b179..dc9080ac776 100644 --- a/dist/plotly.min.js +++ b/dist/plotly.min.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.2 +* plotly.js v3.0.3 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Fet=Object.create;var ES=Object.defineProperty,qet=Object.defineProperties,Oet=Object.getOwnPropertyDescriptor,Bet=Object.getOwnPropertyDescriptors,Net=Object.getOwnPropertyNames,ree=Object.getOwnPropertySymbols,Uet=Object.getPrototypeOf,nee=Object.prototype.hasOwnProperty,Vet=Object.prototype.propertyIsEnumerable;var iee=(e,t,r)=>t in e?ES(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,aee=(e,t)=>{for(var r in t||(t={}))nee.call(t,r)&&iee(e,r,t[r]);if(ree)for(var r of ree(t))Vet.call(t,r)&&iee(e,r,t[r]);return e},oee=(e,t)=>qet(e,Bet(t));var Ll=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),see=(e,t)=>{for(var r in t)ES(e,r,{get:t[r],enumerable:!0})},lee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Net(t))!nee.call(e,i)&&i!==r&&ES(e,i,{get:()=>t[i],enumerable:!(n=Oet(t,i))||n.enumerable});return e};var Het=(e,t,r)=>(r=e!=null?Fet(Uet(e)):{},lee(t||!e||!e.__esModule?ES(r,"default",{value:e,enumerable:!0}):r,e)),B1=e=>lee(ES({},"__esModule",{value:!0}),e);var r6=ye(uee=>{"use strict";uee.version="3.0.2"});var fee=ye((cee,i6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof i6!="undefined"&&i6.exports&&(i6.exports=r[t])})("Promise",typeof window!="undefined"?window:cee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(E){return setImmediate(E)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(E,k,A,L){return Object.defineProperty(E,k,{value:A,writable:!0,configurable:L!==!1})}}catch(p){t=function(k,A,L){return k[A]=L,k}}n=function(){var E,k,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),k?k.next=A:E=A,k=A,A=void 0},drain:function(){var C=E;for(E=k=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,E){n.add(p,E),r||(r=a(n.drain))}function s(p){var E,k=typeof p;return p!=null&&(k=="object"||k=="function")&&(E=p.then),typeof E=="function"?E:!1}function l(){for(var p=0;p0&&o(l,k))}catch(A){f.call(new d(k),A)}}}function f(p){var E=this;E.triggered||(E.triggered=!0,E.def&&(E=E.def),E.msg=p,E.state=2,E.chain.length>0&&o(l,E))}function h(p,E,k,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(Z){return t.call(Z)},n=self.document;function i(Z){return Z&&(Z.ownerDocument||Z.document||Z).documentElement}function a(Z){return Z&&(Z.ownerDocument&&Z.ownerDocument.defaultView||Z.document&&Z||Z.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(Z){r=function(oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=oe[we];return Be}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(Z){var o=this.Element.prototype,s=o.setAttribute,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(oe,we){s.call(this,oe,we+"")},o.setAttributeNS=function(oe,we,Be){l.call(this,oe,we,Be+"")},u.setProperty=function(oe,we,Be){c.call(this,oe,we+"",Be)}}e.ascending=f;function f(Z,oe){return Zoe?1:Z>=oe?0:NaN}e.descending=function(Z,oe){return oeZ?1:oe>=Z?0:NaN},e.min=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}return Ue},e.max=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}return Ue},e.extent=function(Z,oe){var we=-1,Be=Z.length,Ue,We,wt;if(arguments.length===1){for(;++we=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt1)return wt/(zt-1)},e.deviation=function(){var Z=e.variance.apply(this,arguments);return Z&&Math.sqrt(Z)};function v(Z){return{left:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)<0?Be=We+1:Ue=We}return Be},right:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)>0?Ue=We:Be=We+1}return Be}}}var x=v(f);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(Z){return v(Z.length===1?function(oe,we){return f(Z(oe),we)}:Z)},e.shuffle=function(Z,oe,we){(Be=arguments.length)<3&&(we=Z.length,Be<2&&(oe=0));for(var Be=we-oe,Ue,We;Be;)We=Math.random()*Be--|0,Ue=Z[Be+oe],Z[Be+oe]=Z[We+oe],Z[We+oe]=Ue;return Z},e.permute=function(Z,oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=Z[oe[we]];return Be},e.pairs=function(Z){for(var oe=0,we=Z.length-1,Be,Ue=Z[0],We=new Array(we<0?0:we);oe=0;)for(wt=Z[oe],we=wt.length;--we>=0;)We[--Ue]=wt[we];return We};var p=Math.abs;e.range=function(Z,oe,we){if(arguments.length<3&&(we=1,arguments.length<2&&(oe=Z,Z=0)),(oe-Z)/we===1/0)throw new Error("infinite range");var Be=[],Ue=E(p(we)),We=-1,wt;if(Z*=Ue,oe*=Ue,we*=Ue,we<0)for(;(wt=Z+we*++We)>oe;)Be.push(wt/Ue);else for(;(wt=Z+we*++We)=oe.length)return Ue?Ue.call(Z,zt):Be?zt.sort(Be):zt;for(var lr=-1,Dr=zt.length,Ir=oe[or++],oi,ui,qr,Kr=new A,ii;++lr=oe.length)return tt;var or=[],lr=we[zt++];return tt.forEach(function(Dr,Ir){or.push({key:Dr,values:wt(Ir,zt)})}),lr?or.sort(function(Dr,Ir){return lr(Dr.key,Ir.key)}):or}return Z.map=function(tt,zt){return We(zt,tt,0)},Z.entries=function(tt){return wt(We(e.map,tt,0),0)},Z.key=function(tt){return oe.push(tt),Z},Z.sortKeys=function(tt){return we[oe.length-1]=tt,Z},Z.sortValues=function(tt){return Be=tt,Z},Z.rollup=function(tt){return Ue=tt,Z},Z},e.set=function(Z){var oe=new V;if(Z)for(var we=0,Be=Z.length;we=0&&(Be=Z.slice(we+1),Z=Z.slice(0,we)),Z)return arguments.length<2?this[Z].on(Be):this[Z].on(Be,oe);if(arguments.length===2){if(oe==null)for(Z in this)this.hasOwnProperty(Z)&&this[Z].on(Be,null);return this}};function ae(Z){var oe=[],we=new A;function Be(){for(var Ue=oe,We=-1,wt=Ue.length,tt;++We=0&&(we=Z.slice(0,oe))!=="xmlns"&&(Z=Z.slice(oe+1)),Ge.hasOwnProperty(we)?{space:Ge[we],local:Z}:Z}},Ce.attr=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node();return Z=e.ns.qualify(Z),Z.local?we.getAttributeNS(Z.space,Z.local):we.getAttribute(Z)}for(oe in Z)this.each(nt(oe,Z[oe]));return this}return this.each(nt(Z,oe))};function nt(Z,oe){Z=e.ns.qualify(Z);function we(){this.removeAttribute(Z)}function Be(){this.removeAttributeNS(Z.space,Z.local)}function Ue(){this.setAttribute(Z,oe)}function We(){this.setAttributeNS(Z.space,Z.local,oe)}function wt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttribute(Z):this.setAttribute(Z,zt)}function tt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttributeNS(Z.space,Z.local):this.setAttributeNS(Z.space,Z.local,zt)}return oe==null?Z.local?Be:we:typeof oe=="function"?Z.local?tt:wt:Z.local?We:Ue}function ct(Z){return Z.trim().replace(/\s+/g," ")}Ce.classed=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node(),Be=(Z=rt(Z)).length,Ue=-1;if(oe=we.classList){for(;++Ue=0;)(We=we[Be])&&(Ue&&Ue!==We.nextSibling&&Ue.parentNode.insertBefore(We,Ue),Ue=We);return this},Ce.sort=function(Z){Z=xt.apply(this,arguments);for(var oe=-1,we=this.length;++oe=oe&&(oe=Ue+1);!(zt=wt[oe])&&++oe0&&(Z=Z.slice(0,Ue));var wt=Ht.get(Z);wt&&(Z=wt,We=fr);function tt(){var lr=this[Be];lr&&(this.removeEventListener(Z,lr,lr.$),delete this[Be])}function zt(){var lr=We(oe,r(arguments));tt.call(this),this.addEventListener(Z,this[Be]=lr,lr.$=we),lr._=oe}function or(){var lr=new RegExp("^__on([^.]+)"+e.requote(Z)+"$"),Dr;for(var Ir in this)if(Dr=Ir.match(lr)){var oi=this[Ir];this.removeEventListener(Dr[1],oi,oi.$),delete this[Ir]}}return Ue?oe?zt:tt:oe?W:or}var Ht=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Ht.forEach(function(Z){"on"+Z in n&&Ht.remove(Z)});function $t(Z,oe){return function(we){var Be=e.event;e.event=we,oe[0]=this.__data__;try{Z.apply(this,oe)}finally{e.event=Be}}}function fr(Z,oe){var we=$t(Z,oe);return function(Be){var Ue=this,We=Be.relatedTarget;(!We||We!==Ue&&!(We.compareDocumentPosition(Ue)&8))&&we.call(Ue,Be)}}var _r,Br=0;function Or(Z){var oe=".dragsuppress-"+ ++Br,we="click"+oe,Be=e.select(a(Z)).on("touchmove"+oe,_e).on("dragstart"+oe,_e).on("selectstart"+oe,_e);if(_r==null&&(_r="onselectstart"in Z?!1:G(Z.style,"userSelect")),_r){var Ue=i(Z).style,We=Ue[_r];Ue[_r]="none"}return function(wt){if(Be.on(oe,null),_r&&(Ue[_r]=We),wt){var tt=function(){Be.on(we,null)};Be.on(we,function(){_e(),tt()},!0),setTimeout(tt,0)}}}e.mouse=function(Z){return ut(Z,Me())};var Nr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ut(Z,oe){oe.changedTouches&&(oe=oe.changedTouches[0]);var we=Z.ownerSVGElement||Z;if(we.createSVGPoint){var Be=we.createSVGPoint();if(Nr<0){var Ue=a(Z);if(Ue.scrollX||Ue.scrollY){we=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var We=we[0][0].getScreenCTM();Nr=!(We.f||We.e),we.remove()}}return Nr?(Be.x=oe.pageX,Be.y=oe.pageY):(Be.x=oe.clientX,Be.y=oe.clientY),Be=Be.matrixTransform(Z.getScreenCTM().inverse()),[Be.x,Be.y]}var wt=Z.getBoundingClientRect();return[oe.clientX-wt.left-Z.clientLeft,oe.clientY-wt.top-Z.clientTop]}e.touch=function(Z,oe,we){if(arguments.length<3&&(we=oe,oe=Me().changedTouches),oe){for(var Be=0,Ue=oe.length,We;Be0?1:Z<0?-1:0}function Vt(Z,oe,we){return(oe[0]-Z[0])*(we[1]-Z[1])-(oe[1]-Z[1])*(we[0]-Z[0])}function ar(Z){return Z>1?0:Z<-1?Xe:Math.acos(Z)}function Qr(Z){return Z>1?xe:Z<-1?-xe:Math.asin(Z)}function ai(Z){return((Z=Math.exp(Z))-1/Z)/2}function jr(Z){return((Z=Math.exp(Z))+1/Z)/2}function ri(Z){return((Z=Math.exp(2*Z))-1)/(Z+1)}function bi(Z){return(Z=Math.sin(Z/2))*Z}var nn=Math.SQRT2,Wi=2,Ni=4;e.interpolateZoom=function(Z,oe){var we=Z[0],Be=Z[1],Ue=Z[2],We=oe[0],wt=oe[1],tt=oe[2],zt=We-we,or=wt-Be,lr=zt*zt+or*or,Dr,Ir;if(lr0&&(pn=pn.transition().duration(wt)),pn.call(ci.event)}function ga(){Kr&&Kr.domain(qr.range().map(function(pn){return(pn-Z.x)/Z.k}).map(qr.invert)),vi&&vi.domain(ii.range().map(function(pn){return(pn-Z.y)/Z.k}).map(ii.invert))}function ya(pn){tt++||pn({type:"zoomstart"})}function so(pn){ga(),pn({type:"zoom",scale:Z.k,translate:[Z.x,Z.y]})}function wa(pn){--tt||(pn({type:"zoomend"}),we=null)}function io(){var pn=this,za=ui.of(pn,arguments),Lo=0,Fo=e.select(a(pn)).on(or,fu).on(lr,dl),js=Jr(e.mouse(pn)),xl=Or(pn);ea.call(pn),ya(za);function fu(){Lo=1,En(e.mouse(pn),js),so(za)}function dl(){Fo.on(or,null).on(lr,null),xl(Lo),wa(za)}}function Ss(){var pn=this,za=ui.of(pn,arguments),Lo={},Fo=0,js,xl=".zoom-"+e.event.changedTouches[0].identifier,fu="touchmove"+xl,dl="touchend"+xl,xc=[],At=e.select(pn),Er=Or(pn);wi(),ya(za),At.on(zt,null).on(Ir,wi);function Wr(){var Bi=e.touches(pn);return js=Z.k,Bi.forEach(function(cn){cn.identifier in Lo&&(Lo[cn.identifier]=Jr(cn))}),Bi}function wi(){var Bi=e.event.target;e.select(Bi).on(fu,Ui).on(dl,Oi),xc.push(Bi);for(var cn=e.event.changedTouches,On=0,Bn=cn.length;On1){var Rn=yn[0],Dn=yn[1],fn=Rn[0]-Dn[0],Ai=Rn[1]-Dn[1];Fo=fn*fn+Ai*Ai}}function Ui(){var Bi=e.touches(pn),cn,On,Bn,yn;ea.call(pn);for(var to=0,Rn=Bi.length;to1?1:oe,we=we<0?0:we>1?1:we,Ue=we<=.5?we*(1+oe):we+oe-we*oe,Be=2*we-Ue;function We(tt){return tt>360?tt-=360:tt<0&&(tt+=360),tt<60?Be+(Ue-Be)*tt/60:tt<180?Ue:tt<240?Be+(Ue-Be)*(240-tt)/60:Be}function wt(tt){return Math.round(We(tt)*255)}return new Fa(wt(Z+120),wt(Z),wt(Z-120))}e.hcl=Zt;function Zt(Z,oe,we){return this instanceof Zt?(this.h=+Z,this.c=+oe,void(this.l=+we)):arguments.length<2?Z instanceof Zt?new Zt(Z.h,Z.c,Z.l):Z instanceof Zr?Ki(Z.l,Z.a,Z.b):Ki((Z=xn((Z=e.rgb(Z)).r,Z.g,Z.b)).l,Z.a,Z.b):new Zt(Z,oe,we)}var yr=Zt.prototype=new Wn;yr.brighter=function(Z){return new Zt(this.h,this.c,Math.min(100,this.l+Vr*(arguments.length?Z:1)))},yr.darker=function(Z){return new Zt(this.h,this.c,Math.max(0,this.l-Vr*(arguments.length?Z:1)))},yr.rgb=function(){return Fr(this.h,this.c,this.l).rgb()};function Fr(Z,oe,we){return isNaN(Z)&&(Z=0),isNaN(oe)&&(oe=0),new Zr(we,Math.cos(Z*=Se)*oe,Math.sin(Z)*oe)}e.lab=Zr;function Zr(Z,oe,we){return this instanceof Zr?(this.l=+Z,this.a=+oe,void(this.b=+we)):arguments.length<2?Z instanceof Zr?new Zr(Z.l,Z.a,Z.b):Z instanceof Zt?Fr(Z.h,Z.c,Z.l):xn((Z=Fa(Z)).r,Z.g,Z.b):new Zr(Z,oe,we)}var Vr=18,gi=.95047,Si=1,Mi=1.08883,Pi=Zr.prototype=new Wn;Pi.brighter=function(Z){return new Zr(Math.min(100,this.l+Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.darker=function(Z){return new Zr(Math.max(0,this.l-Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.rgb=function(){return Gi(this.l,this.a,this.b)};function Gi(Z,oe,we){var Be=(Z+16)/116,Ue=Be+oe/500,We=Be-we/200;return Ue=ka(Ue)*gi,Be=ka(Be)*Si,We=ka(We)*Mi,new Fa(la(3.2404542*Ue-1.5371385*Be-.4985314*We),la(-.969266*Ue+1.8760108*Be+.041556*We),la(.0556434*Ue-.2040259*Be+1.0572252*We))}function Ki(Z,oe,we){return Z>0?new Zt(Math.atan2(we,oe)*lt,Math.sqrt(oe*oe+we*we),Z):new Zt(NaN,NaN,Z)}function ka(Z){return Z>.206893034?Z*Z*Z:(Z-4/29)/7.787037}function jn(Z){return Z>.008856?Math.pow(Z,1/3):7.787037*Z+4/29}function la(Z){return Math.round(255*(Z<=.00304?12.92*Z:1.055*Math.pow(Z,1/2.4)-.055))}e.rgb=Fa;function Fa(Z,oe,we){return this instanceof Fa?(this.r=~~Z,this.g=~~oe,void(this.b=~~we)):arguments.length<2?Z instanceof Fa?new Fa(Z.r,Z.g,Z.b):Ha(""+Z,Fa,jt):new Fa(Z,oe,we)}function Ra(Z){return new Fa(Z>>16,Z>>8&255,Z&255)}function jo(Z){return Ra(Z)+""}var oa=Fa.prototype=new Wn;oa.brighter=function(Z){Z=Math.pow(.7,arguments.length?Z:1);var oe=this.r,we=this.g,Be=this.b,Ue=30;return!oe&&!we&&!Be?new Fa(Ue,Ue,Ue):(oe&&oe>4,Be=Be>>4|Be,Ue=zt&240,Ue=Ue>>4|Ue,We=zt&15,We=We<<4|We):Z.length===7&&(Be=(zt&16711680)>>16,Ue=(zt&65280)>>8,We=zt&255)),oe(Be,Ue,We))}function oo(Z,oe,we){var Be=Math.min(Z/=255,oe/=255,we/=255),Ue=Math.max(Z,oe,we),We=Ue-Be,wt,tt,zt=(Ue+Be)/2;return We?(tt=zt<.5?We/(Ue+Be):We/(2-Ue-Be),Z==Ue?wt=(oe-we)/We+(oe0&&zt<1?0:wt),new It(wt,tt,zt)}function xn(Z,oe,we){Z=_t(Z),oe=_t(oe),we=_t(we);var Be=jn((.4124564*Z+.3575761*oe+.1804375*we)/gi),Ue=jn((.2126729*Z+.7151522*oe+.072175*we)/Si),We=jn((.0193339*Z+.119192*oe+.9503041*we)/Mi);return Zr(116*Ue-16,500*(Be-Ue),200*(Ue-We))}function _t(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function br(Z){var oe=parseFloat(Z);return Z.charAt(Z.length-1)==="%"?Math.round(oe*2.55):oe}var Hr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Hr.forEach(function(Z,oe){Hr.set(Z,Ra(oe))});function ti(Z){return typeof Z=="function"?Z:function(){return Z}}e.functor=ti,e.xhr=zi(H);function zi(Z){return function(oe,we,Be){return arguments.length===2&&typeof we=="function"&&(Be=we,we=null),Yi(oe,we,Z,Be)}}function Yi(Z,oe,we,Be){var Ue={},We=e.dispatch("beforesend","progress","load","error"),wt={},tt=new XMLHttpRequest,zt=null;self.XDomainRequest&&!("withCredentials"in tt)&&/^(http(s)?:)?\/\//.test(Z)&&(tt=new XDomainRequest),"onload"in tt?tt.onload=tt.onerror=or:tt.onreadystatechange=function(){tt.readyState>3&&or()};function or(){var lr=tt.status,Dr;if(!lr&&hi(tt)||lr>=200&&lr<300||lr===304){try{Dr=we.call(Ue,tt)}catch(Ir){We.error.call(Ue,Ir);return}We.load.call(Ue,Dr)}else We.error.call(Ue,tt)}return tt.onprogress=function(lr){var Dr=e.event;e.event=lr;try{We.progress.call(Ue,tt)}finally{e.event=Dr}},Ue.header=function(lr,Dr){return lr=(lr+"").toLowerCase(),arguments.length<2?wt[lr]:(Dr==null?delete wt[lr]:wt[lr]=Dr+"",Ue)},Ue.mimeType=function(lr){return arguments.length?(oe=lr==null?null:lr+"",Ue):oe},Ue.responseType=function(lr){return arguments.length?(zt=lr,Ue):zt},Ue.response=function(lr){return we=lr,Ue},["get","post"].forEach(function(lr){Ue[lr]=function(){return Ue.send.apply(Ue,[lr].concat(r(arguments)))}}),Ue.send=function(lr,Dr,Ir){if(arguments.length===2&&typeof Dr=="function"&&(Ir=Dr,Dr=null),tt.open(lr,Z,!0),oe!=null&&!("accept"in wt)&&(wt.accept=oe+",*/*"),tt.setRequestHeader)for(var oi in wt)tt.setRequestHeader(oi,wt[oi]);return oe!=null&&tt.overrideMimeType&&tt.overrideMimeType(oe),zt!=null&&(tt.responseType=zt),Ir!=null&&Ue.on("error",Ir).on("load",function(ui){Ir(null,ui)}),We.beforesend.call(Ue,tt),tt.send(Dr==null?null:Dr),Ue},Ue.abort=function(){return tt.abort(),Ue},e.rebind(Ue,We,"on"),Be==null?Ue:Ue.get(an(Be))}function an(Z){return Z.length===1?function(oe,we){Z(oe==null?we:null)}:Z}function hi(Z){var oe=Z.responseType;return oe&&oe!=="text"?Z.response:Z.responseText}e.dsv=function(Z,oe){var we=new RegExp('["'+Z+` +"use strict";var Plotly=(()=>{var Fet=Object.create;var ES=Object.defineProperty,qet=Object.defineProperties,Oet=Object.getOwnPropertyDescriptor,Bet=Object.getOwnPropertyDescriptors,Net=Object.getOwnPropertyNames,ree=Object.getOwnPropertySymbols,Uet=Object.getPrototypeOf,nee=Object.prototype.hasOwnProperty,Vet=Object.prototype.propertyIsEnumerable;var iee=(e,t,r)=>t in e?ES(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,aee=(e,t)=>{for(var r in t||(t={}))nee.call(t,r)&&iee(e,r,t[r]);if(ree)for(var r of ree(t))Vet.call(t,r)&&iee(e,r,t[r]);return e},oee=(e,t)=>qet(e,Bet(t));var Ll=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),see=(e,t)=>{for(var r in t)ES(e,r,{get:t[r],enumerable:!0})},lee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Net(t))!nee.call(e,i)&&i!==r&&ES(e,i,{get:()=>t[i],enumerable:!(n=Oet(t,i))||n.enumerable});return e};var Het=(e,t,r)=>(r=e!=null?Fet(Uet(e)):{},lee(t||!e||!e.__esModule?ES(r,"default",{value:e,enumerable:!0}):r,e)),B1=e=>lee(ES({},"__esModule",{value:!0}),e);var r6=ye(uee=>{"use strict";uee.version="3.0.3"});var fee=ye((cee,i6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof i6!="undefined"&&i6.exports&&(i6.exports=r[t])})("Promise",typeof window!="undefined"?window:cee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(E){return setImmediate(E)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(E,k,A,L){return Object.defineProperty(E,k,{value:A,writable:!0,configurable:L!==!1})}}catch(p){t=function(k,A,L){return k[A]=L,k}}n=function(){var E,k,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),k?k.next=A:E=A,k=A,A=void 0},drain:function(){var C=E;for(E=k=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,E){n.add(p,E),r||(r=a(n.drain))}function s(p){var E,k=typeof p;return p!=null&&(k=="object"||k=="function")&&(E=p.then),typeof E=="function"?E:!1}function l(){for(var p=0;p0&&o(l,k))}catch(A){f.call(new d(k),A)}}}function f(p){var E=this;E.triggered||(E.triggered=!0,E.def&&(E=E.def),E.msg=p,E.state=2,E.chain.length>0&&o(l,E))}function h(p,E,k,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(Z){return t.call(Z)},n=self.document;function i(Z){return Z&&(Z.ownerDocument||Z.document||Z).documentElement}function a(Z){return Z&&(Z.ownerDocument&&Z.ownerDocument.defaultView||Z.document&&Z||Z.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(Z){r=function(oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=oe[we];return Be}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(Z){var o=this.Element.prototype,s=o.setAttribute,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(oe,we){s.call(this,oe,we+"")},o.setAttributeNS=function(oe,we,Be){l.call(this,oe,we,Be+"")},u.setProperty=function(oe,we,Be){c.call(this,oe,we+"",Be)}}e.ascending=f;function f(Z,oe){return Zoe?1:Z>=oe?0:NaN}e.descending=function(Z,oe){return oeZ?1:oe>=Z?0:NaN},e.min=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}return Ue},e.max=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}return Ue},e.extent=function(Z,oe){var we=-1,Be=Z.length,Ue,We,wt;if(arguments.length===1){for(;++we=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt1)return wt/(zt-1)},e.deviation=function(){var Z=e.variance.apply(this,arguments);return Z&&Math.sqrt(Z)};function v(Z){return{left:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)<0?Be=We+1:Ue=We}return Be},right:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)>0?Ue=We:Be=We+1}return Be}}}var x=v(f);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(Z){return v(Z.length===1?function(oe,we){return f(Z(oe),we)}:Z)},e.shuffle=function(Z,oe,we){(Be=arguments.length)<3&&(we=Z.length,Be<2&&(oe=0));for(var Be=we-oe,Ue,We;Be;)We=Math.random()*Be--|0,Ue=Z[Be+oe],Z[Be+oe]=Z[We+oe],Z[We+oe]=Ue;return Z},e.permute=function(Z,oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=Z[oe[we]];return Be},e.pairs=function(Z){for(var oe=0,we=Z.length-1,Be,Ue=Z[0],We=new Array(we<0?0:we);oe=0;)for(wt=Z[oe],we=wt.length;--we>=0;)We[--Ue]=wt[we];return We};var p=Math.abs;e.range=function(Z,oe,we){if(arguments.length<3&&(we=1,arguments.length<2&&(oe=Z,Z=0)),(oe-Z)/we===1/0)throw new Error("infinite range");var Be=[],Ue=E(p(we)),We=-1,wt;if(Z*=Ue,oe*=Ue,we*=Ue,we<0)for(;(wt=Z+we*++We)>oe;)Be.push(wt/Ue);else for(;(wt=Z+we*++We)=oe.length)return Ue?Ue.call(Z,zt):Be?zt.sort(Be):zt;for(var lr=-1,Dr=zt.length,Ir=oe[or++],oi,ui,qr,Kr=new A,ii;++lr=oe.length)return tt;var or=[],lr=we[zt++];return tt.forEach(function(Dr,Ir){or.push({key:Dr,values:wt(Ir,zt)})}),lr?or.sort(function(Dr,Ir){return lr(Dr.key,Ir.key)}):or}return Z.map=function(tt,zt){return We(zt,tt,0)},Z.entries=function(tt){return wt(We(e.map,tt,0),0)},Z.key=function(tt){return oe.push(tt),Z},Z.sortKeys=function(tt){return we[oe.length-1]=tt,Z},Z.sortValues=function(tt){return Be=tt,Z},Z.rollup=function(tt){return Ue=tt,Z},Z},e.set=function(Z){var oe=new V;if(Z)for(var we=0,Be=Z.length;we=0&&(Be=Z.slice(we+1),Z=Z.slice(0,we)),Z)return arguments.length<2?this[Z].on(Be):this[Z].on(Be,oe);if(arguments.length===2){if(oe==null)for(Z in this)this.hasOwnProperty(Z)&&this[Z].on(Be,null);return this}};function ae(Z){var oe=[],we=new A;function Be(){for(var Ue=oe,We=-1,wt=Ue.length,tt;++We=0&&(we=Z.slice(0,oe))!=="xmlns"&&(Z=Z.slice(oe+1)),Ge.hasOwnProperty(we)?{space:Ge[we],local:Z}:Z}},Ce.attr=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node();return Z=e.ns.qualify(Z),Z.local?we.getAttributeNS(Z.space,Z.local):we.getAttribute(Z)}for(oe in Z)this.each(nt(oe,Z[oe]));return this}return this.each(nt(Z,oe))};function nt(Z,oe){Z=e.ns.qualify(Z);function we(){this.removeAttribute(Z)}function Be(){this.removeAttributeNS(Z.space,Z.local)}function Ue(){this.setAttribute(Z,oe)}function We(){this.setAttributeNS(Z.space,Z.local,oe)}function wt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttribute(Z):this.setAttribute(Z,zt)}function tt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttributeNS(Z.space,Z.local):this.setAttributeNS(Z.space,Z.local,zt)}return oe==null?Z.local?Be:we:typeof oe=="function"?Z.local?tt:wt:Z.local?We:Ue}function ct(Z){return Z.trim().replace(/\s+/g," ")}Ce.classed=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node(),Be=(Z=rt(Z)).length,Ue=-1;if(oe=we.classList){for(;++Ue=0;)(We=we[Be])&&(Ue&&Ue!==We.nextSibling&&Ue.parentNode.insertBefore(We,Ue),Ue=We);return this},Ce.sort=function(Z){Z=xt.apply(this,arguments);for(var oe=-1,we=this.length;++oe=oe&&(oe=Ue+1);!(zt=wt[oe])&&++oe0&&(Z=Z.slice(0,Ue));var wt=Ht.get(Z);wt&&(Z=wt,We=fr);function tt(){var lr=this[Be];lr&&(this.removeEventListener(Z,lr,lr.$),delete this[Be])}function zt(){var lr=We(oe,r(arguments));tt.call(this),this.addEventListener(Z,this[Be]=lr,lr.$=we),lr._=oe}function or(){var lr=new RegExp("^__on([^.]+)"+e.requote(Z)+"$"),Dr;for(var Ir in this)if(Dr=Ir.match(lr)){var oi=this[Ir];this.removeEventListener(Dr[1],oi,oi.$),delete this[Ir]}}return Ue?oe?zt:tt:oe?W:or}var Ht=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Ht.forEach(function(Z){"on"+Z in n&&Ht.remove(Z)});function $t(Z,oe){return function(we){var Be=e.event;e.event=we,oe[0]=this.__data__;try{Z.apply(this,oe)}finally{e.event=Be}}}function fr(Z,oe){var we=$t(Z,oe);return function(Be){var Ue=this,We=Be.relatedTarget;(!We||We!==Ue&&!(We.compareDocumentPosition(Ue)&8))&&we.call(Ue,Be)}}var _r,Br=0;function Or(Z){var oe=".dragsuppress-"+ ++Br,we="click"+oe,Be=e.select(a(Z)).on("touchmove"+oe,_e).on("dragstart"+oe,_e).on("selectstart"+oe,_e);if(_r==null&&(_r="onselectstart"in Z?!1:G(Z.style,"userSelect")),_r){var Ue=i(Z).style,We=Ue[_r];Ue[_r]="none"}return function(wt){if(Be.on(oe,null),_r&&(Ue[_r]=We),wt){var tt=function(){Be.on(we,null)};Be.on(we,function(){_e(),tt()},!0),setTimeout(tt,0)}}}e.mouse=function(Z){return ut(Z,Me())};var Nr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ut(Z,oe){oe.changedTouches&&(oe=oe.changedTouches[0]);var we=Z.ownerSVGElement||Z;if(we.createSVGPoint){var Be=we.createSVGPoint();if(Nr<0){var Ue=a(Z);if(Ue.scrollX||Ue.scrollY){we=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var We=we[0][0].getScreenCTM();Nr=!(We.f||We.e),we.remove()}}return Nr?(Be.x=oe.pageX,Be.y=oe.pageY):(Be.x=oe.clientX,Be.y=oe.clientY),Be=Be.matrixTransform(Z.getScreenCTM().inverse()),[Be.x,Be.y]}var wt=Z.getBoundingClientRect();return[oe.clientX-wt.left-Z.clientLeft,oe.clientY-wt.top-Z.clientTop]}e.touch=function(Z,oe,we){if(arguments.length<3&&(we=oe,oe=Me().changedTouches),oe){for(var Be=0,Ue=oe.length,We;Be0?1:Z<0?-1:0}function Vt(Z,oe,we){return(oe[0]-Z[0])*(we[1]-Z[1])-(oe[1]-Z[1])*(we[0]-Z[0])}function ar(Z){return Z>1?0:Z<-1?Xe:Math.acos(Z)}function Qr(Z){return Z>1?xe:Z<-1?-xe:Math.asin(Z)}function ai(Z){return((Z=Math.exp(Z))-1/Z)/2}function jr(Z){return((Z=Math.exp(Z))+1/Z)/2}function ri(Z){return((Z=Math.exp(2*Z))-1)/(Z+1)}function bi(Z){return(Z=Math.sin(Z/2))*Z}var nn=Math.SQRT2,Wi=2,Ni=4;e.interpolateZoom=function(Z,oe){var we=Z[0],Be=Z[1],Ue=Z[2],We=oe[0],wt=oe[1],tt=oe[2],zt=We-we,or=wt-Be,lr=zt*zt+or*or,Dr,Ir;if(lr0&&(pn=pn.transition().duration(wt)),pn.call(ci.event)}function ga(){Kr&&Kr.domain(qr.range().map(function(pn){return(pn-Z.x)/Z.k}).map(qr.invert)),vi&&vi.domain(ii.range().map(function(pn){return(pn-Z.y)/Z.k}).map(ii.invert))}function ya(pn){tt++||pn({type:"zoomstart"})}function so(pn){ga(),pn({type:"zoom",scale:Z.k,translate:[Z.x,Z.y]})}function wa(pn){--tt||(pn({type:"zoomend"}),we=null)}function io(){var pn=this,za=ui.of(pn,arguments),Lo=0,Fo=e.select(a(pn)).on(or,fu).on(lr,dl),js=Jr(e.mouse(pn)),xl=Or(pn);ea.call(pn),ya(za);function fu(){Lo=1,En(e.mouse(pn),js),so(za)}function dl(){Fo.on(or,null).on(lr,null),xl(Lo),wa(za)}}function Ss(){var pn=this,za=ui.of(pn,arguments),Lo={},Fo=0,js,xl=".zoom-"+e.event.changedTouches[0].identifier,fu="touchmove"+xl,dl="touchend"+xl,xc=[],At=e.select(pn),Er=Or(pn);wi(),ya(za),At.on(zt,null).on(Ir,wi);function Wr(){var Bi=e.touches(pn);return js=Z.k,Bi.forEach(function(cn){cn.identifier in Lo&&(Lo[cn.identifier]=Jr(cn))}),Bi}function wi(){var Bi=e.event.target;e.select(Bi).on(fu,Ui).on(dl,Oi),xc.push(Bi);for(var cn=e.event.changedTouches,On=0,Bn=cn.length;On1){var Rn=yn[0],Dn=yn[1],fn=Rn[0]-Dn[0],Ai=Rn[1]-Dn[1];Fo=fn*fn+Ai*Ai}}function Ui(){var Bi=e.touches(pn),cn,On,Bn,yn;ea.call(pn);for(var to=0,Rn=Bi.length;to1?1:oe,we=we<0?0:we>1?1:we,Ue=we<=.5?we*(1+oe):we+oe-we*oe,Be=2*we-Ue;function We(tt){return tt>360?tt-=360:tt<0&&(tt+=360),tt<60?Be+(Ue-Be)*tt/60:tt<180?Ue:tt<240?Be+(Ue-Be)*(240-tt)/60:Be}function wt(tt){return Math.round(We(tt)*255)}return new Fa(wt(Z+120),wt(Z),wt(Z-120))}e.hcl=Zt;function Zt(Z,oe,we){return this instanceof Zt?(this.h=+Z,this.c=+oe,void(this.l=+we)):arguments.length<2?Z instanceof Zt?new Zt(Z.h,Z.c,Z.l):Z instanceof Zr?Ki(Z.l,Z.a,Z.b):Ki((Z=xn((Z=e.rgb(Z)).r,Z.g,Z.b)).l,Z.a,Z.b):new Zt(Z,oe,we)}var yr=Zt.prototype=new Wn;yr.brighter=function(Z){return new Zt(this.h,this.c,Math.min(100,this.l+Vr*(arguments.length?Z:1)))},yr.darker=function(Z){return new Zt(this.h,this.c,Math.max(0,this.l-Vr*(arguments.length?Z:1)))},yr.rgb=function(){return Fr(this.h,this.c,this.l).rgb()};function Fr(Z,oe,we){return isNaN(Z)&&(Z=0),isNaN(oe)&&(oe=0),new Zr(we,Math.cos(Z*=Se)*oe,Math.sin(Z)*oe)}e.lab=Zr;function Zr(Z,oe,we){return this instanceof Zr?(this.l=+Z,this.a=+oe,void(this.b=+we)):arguments.length<2?Z instanceof Zr?new Zr(Z.l,Z.a,Z.b):Z instanceof Zt?Fr(Z.h,Z.c,Z.l):xn((Z=Fa(Z)).r,Z.g,Z.b):new Zr(Z,oe,we)}var Vr=18,gi=.95047,Si=1,Mi=1.08883,Pi=Zr.prototype=new Wn;Pi.brighter=function(Z){return new Zr(Math.min(100,this.l+Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.darker=function(Z){return new Zr(Math.max(0,this.l-Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.rgb=function(){return Gi(this.l,this.a,this.b)};function Gi(Z,oe,we){var Be=(Z+16)/116,Ue=Be+oe/500,We=Be-we/200;return Ue=ka(Ue)*gi,Be=ka(Be)*Si,We=ka(We)*Mi,new Fa(la(3.2404542*Ue-1.5371385*Be-.4985314*We),la(-.969266*Ue+1.8760108*Be+.041556*We),la(.0556434*Ue-.2040259*Be+1.0572252*We))}function Ki(Z,oe,we){return Z>0?new Zt(Math.atan2(we,oe)*lt,Math.sqrt(oe*oe+we*we),Z):new Zt(NaN,NaN,Z)}function ka(Z){return Z>.206893034?Z*Z*Z:(Z-4/29)/7.787037}function jn(Z){return Z>.008856?Math.pow(Z,1/3):7.787037*Z+4/29}function la(Z){return Math.round(255*(Z<=.00304?12.92*Z:1.055*Math.pow(Z,1/2.4)-.055))}e.rgb=Fa;function Fa(Z,oe,we){return this instanceof Fa?(this.r=~~Z,this.g=~~oe,void(this.b=~~we)):arguments.length<2?Z instanceof Fa?new Fa(Z.r,Z.g,Z.b):Ha(""+Z,Fa,jt):new Fa(Z,oe,we)}function Ra(Z){return new Fa(Z>>16,Z>>8&255,Z&255)}function jo(Z){return Ra(Z)+""}var oa=Fa.prototype=new Wn;oa.brighter=function(Z){Z=Math.pow(.7,arguments.length?Z:1);var oe=this.r,we=this.g,Be=this.b,Ue=30;return!oe&&!we&&!Be?new Fa(Ue,Ue,Ue):(oe&&oe>4,Be=Be>>4|Be,Ue=zt&240,Ue=Ue>>4|Ue,We=zt&15,We=We<<4|We):Z.length===7&&(Be=(zt&16711680)>>16,Ue=(zt&65280)>>8,We=zt&255)),oe(Be,Ue,We))}function oo(Z,oe,we){var Be=Math.min(Z/=255,oe/=255,we/=255),Ue=Math.max(Z,oe,we),We=Ue-Be,wt,tt,zt=(Ue+Be)/2;return We?(tt=zt<.5?We/(Ue+Be):We/(2-Ue-Be),Z==Ue?wt=(oe-we)/We+(oe0&&zt<1?0:wt),new It(wt,tt,zt)}function xn(Z,oe,we){Z=_t(Z),oe=_t(oe),we=_t(we);var Be=jn((.4124564*Z+.3575761*oe+.1804375*we)/gi),Ue=jn((.2126729*Z+.7151522*oe+.072175*we)/Si),We=jn((.0193339*Z+.119192*oe+.9503041*we)/Mi);return Zr(116*Ue-16,500*(Be-Ue),200*(Ue-We))}function _t(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function br(Z){var oe=parseFloat(Z);return Z.charAt(Z.length-1)==="%"?Math.round(oe*2.55):oe}var Hr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Hr.forEach(function(Z,oe){Hr.set(Z,Ra(oe))});function ti(Z){return typeof Z=="function"?Z:function(){return Z}}e.functor=ti,e.xhr=zi(H);function zi(Z){return function(oe,we,Be){return arguments.length===2&&typeof we=="function"&&(Be=we,we=null),Yi(oe,we,Z,Be)}}function Yi(Z,oe,we,Be){var Ue={},We=e.dispatch("beforesend","progress","load","error"),wt={},tt=new XMLHttpRequest,zt=null;self.XDomainRequest&&!("withCredentials"in tt)&&/^(http(s)?:)?\/\//.test(Z)&&(tt=new XDomainRequest),"onload"in tt?tt.onload=tt.onerror=or:tt.onreadystatechange=function(){tt.readyState>3&&or()};function or(){var lr=tt.status,Dr;if(!lr&&hi(tt)||lr>=200&&lr<300||lr===304){try{Dr=we.call(Ue,tt)}catch(Ir){We.error.call(Ue,Ir);return}We.load.call(Ue,Dr)}else We.error.call(Ue,tt)}return tt.onprogress=function(lr){var Dr=e.event;e.event=lr;try{We.progress.call(Ue,tt)}finally{e.event=Dr}},Ue.header=function(lr,Dr){return lr=(lr+"").toLowerCase(),arguments.length<2?wt[lr]:(Dr==null?delete wt[lr]:wt[lr]=Dr+"",Ue)},Ue.mimeType=function(lr){return arguments.length?(oe=lr==null?null:lr+"",Ue):oe},Ue.responseType=function(lr){return arguments.length?(zt=lr,Ue):zt},Ue.response=function(lr){return we=lr,Ue},["get","post"].forEach(function(lr){Ue[lr]=function(){return Ue.send.apply(Ue,[lr].concat(r(arguments)))}}),Ue.send=function(lr,Dr,Ir){if(arguments.length===2&&typeof Dr=="function"&&(Ir=Dr,Dr=null),tt.open(lr,Z,!0),oe!=null&&!("accept"in wt)&&(wt.accept=oe+",*/*"),tt.setRequestHeader)for(var oi in wt)tt.setRequestHeader(oi,wt[oi]);return oe!=null&&tt.overrideMimeType&&tt.overrideMimeType(oe),zt!=null&&(tt.responseType=zt),Ir!=null&&Ue.on("error",Ir).on("load",function(ui){Ir(null,ui)}),We.beforesend.call(Ue,tt),tt.send(Dr==null?null:Dr),Ue},Ue.abort=function(){return tt.abort(),Ue},e.rebind(Ue,We,"on"),Be==null?Ue:Ue.get(an(Be))}function an(Z){return Z.length===1?function(oe,we){Z(oe==null?we:null)}:Z}function hi(Z){var oe=Z.responseType;return oe&&oe!=="text"?Z.response:Z.responseText}e.dsv=function(Z,oe){var we=new RegExp('["'+Z+` ]`),Be=Z.charCodeAt(0);function Ue(or,lr,Dr){arguments.length<3&&(Dr=lr,lr=null);var Ir=Yi(or,oe,lr==null?We:wt(lr),Dr);return Ir.row=function(oi){return arguments.length?Ir.response((lr=oi)==null?We:wt(oi)):lr},Ir}function We(or){return Ue.parse(or.responseText)}function wt(or){return function(lr){return Ue.parse(lr.responseText,or)}}Ue.parse=function(or,lr){var Dr;return Ue.parseRows(or,function(Ir,oi){if(Dr)return Dr(Ir,oi-1);var ui=function(qr){for(var Kr={},ii=Ir.length,vi=0;vi=ui)return Ir;if(vi)return vi=!1,Dr;var un=qr;if(or.charCodeAt(un)===34){for(var dn=un;dn++24?(isFinite(oe)&&(clearTimeout(Sa),Sa=setTimeout(ho,oe)),Fn=0):(Fn=1,go(ho))}e.timer.flush=function(){Mo(),xo()};function Mo(){for(var Z=Date.now(),oe=Ji;oe;)Z>=oe.t&&oe.c(Z-oe.t)&&(oe.c=null),oe=oe.n;return Z}function xo(){for(var Z,oe=Ji,we=1/0;oe;)oe.c?(oe.t=0;--tt)qr.push(Ue[or[Dr[tt]][2]]);for(tt=+oi;tt1&&Vt(Z[we[Be-2]],Z[we[Be-1]],Z[Ue])<=0;)--Be;we[Be++]=Ue}return we.slice(0,Be)}function Xs(Z,oe){return Z[0]-oe[0]||Z[1]-oe[1]}e.geom.polygon=function(Z){return ie(Z,wl),Z};var wl=e.geom.polygon.prototype=[];wl.area=function(){for(var Z=-1,oe=this.length,we,Be=this[oe-1],Ue=0;++ZYe)tt=tt.L;else if(wt=oe-vo(tt,we),wt>Ye){if(!tt.R){Be=tt;break}tt=tt.R}else{We>-Ye?(Be=tt.P,Ue=tt):wt>-Ye?(Be=tt,Ue=tt.N):Be=Ue=tt;break}var zt=ms(Z);if(Hs.insert(Be,zt),!(!Be&&!Ue)){if(Be===Ue){ko(Be),Ue=ms(Be.site),Hs.insert(zt,Ue),zt.edge=Ue.edge=cf(Be.site,zt.site),Zn(Be),Zn(Ue);return}if(!Ue){zt.edge=cf(Be.site,zt.site);return}ko(Be),ko(Ue);var or=Be.site,lr=or.x,Dr=or.y,Ir=Z.x-lr,oi=Z.y-Dr,ui=Ue.site,qr=ui.x-lr,Kr=ui.y-Dr,ii=2*(Ir*Kr-oi*qr),vi=Ir*Ir+oi*oi,ci=qr*qr+Kr*Kr,Jr={x:(Kr*vi-oi*ci)/ii+lr,y:(Ir*ci-qr*vi)/ii+Dr};Al(Ue.edge,or,ui,Jr),zt.edge=cf(or,Z,null,Jr),Ue.edge=cf(Z,ui,null,Jr),Zn(Be),Zn(Ue)}}function Rl(Z,oe){var we=Z.site,Be=we.x,Ue=we.y,We=Ue-oe;if(!We)return Be;var wt=Z.P;if(!wt)return-1/0;we=wt.site;var tt=we.x,zt=we.y,or=zt-oe;if(!or)return tt;var lr=tt-Be,Dr=1/We-1/or,Ir=lr/or;return Dr?(-Ir+Math.sqrt(Ir*Ir-2*Dr*(lr*lr/(-2*or)-zt+or/2+Ue-We/2)))/Dr+Be:(Be+tt)/2}function vo(Z,oe){var we=Z.N;if(we)return Rl(we,oe);var Be=Z.site;return Be.y===oe?Be.x:1/0}function Zl(Z){this.site=Z,this.edges=[]}Zl.prototype.prepare=function(){for(var Z=this.edges,oe=Z.length,we;oe--;)we=Z[oe].edge,(!we.b||!we.a)&&Z.splice(oe,1);return Z.sort(Xl),Z.length};function Ks(Z){for(var oe=Z[0][0],we=Z[1][0],Be=Z[0][1],Ue=Z[1][1],We,wt,tt,zt,or=Ys,lr=or.length,Dr,Ir,oi,ui,qr,Kr;lr--;)if(Dr=or[lr],!(!Dr||!Dr.prepare()))for(oi=Dr.edges,ui=oi.length,Ir=0;IrYe||p(zt-wt)>Ye)&&(oi.splice(Ir,0,new Gc(rh(Dr.site,Kr,p(tt-oe)Ye?{x:oe,y:p(We-oe)Ye?{x:p(wt-Ue)Ye?{x:we,y:p(We-we)Ye?{x:p(wt-Be)=-Ve)){var Ir=zt*zt+or*or,oi=lr*lr+Kr*Kr,ui=(Kr*Ir-or*oi)/Dr,qr=(zt*oi-lr*Ir)/Dr,Kr=qr+tt,ii=Hu.pop()||new Ec;ii.arc=Z,ii.site=Ue,ii.x=ui+wt,ii.y=Kr+Math.sqrt(ui*ui+qr*qr),ii.cy=Kr,Z.circle=ii;for(var vi=null,ci=Ql._;ci;)if(ii.y0)){if(qr/=oi,oi<0){if(qr0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}if(qr=we-tt,!(!oi&&qr<0)){if(qr/=oi,oi<0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}else if(oi>0){if(qr0)){if(qr/=ui,ui<0){if(qr0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}if(qr=Be-zt,!(!ui&&qr<0)){if(qr/=ui,ui<0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}else if(ui>0){if(qr0&&(Ue.a={x:tt+Dr*oi,y:zt+Dr*ui}),Ir<1&&(Ue.b={x:tt+Ir*oi,y:zt+Ir*ui}),Ue}}}}}}function Tl(Z){for(var oe=ml,we=Co(Z[0][0],Z[0][1],Z[1][0],Z[1][1]),Be=oe.length,Ue;Be--;)Ue=oe[Be],(!uf(Ue,Z)||!we(Ue)||p(Ue.a.x-Ue.b.x)=We)return;if(lr>Ir){if(!Be)Be={x:ui,y:wt};else if(Be.y>=tt)return;we={x:ui,y:tt}}else{if(!Be)Be={x:ui,y:tt};else if(Be.y1)if(lr>Ir){if(!Be)Be={x:(wt-ii)/Kr,y:wt};else if(Be.y>=tt)return;we={x:(tt-ii)/Kr,y:tt}}else{if(!Be)Be={x:(tt-ii)/Kr,y:tt};else if(Be.y=We)return;we={x:We,y:Kr*We+ii}}else{if(!Be)Be={x:We,y:Kr*We+ii};else if(Be.x=lr&&ii.x<=Ir&&ii.y>=Dr&&ii.y<=oi?[[lr,oi],[Ir,oi],[Ir,Dr],[lr,Dr]]:[];vi.point=zt[qr]}),or}function tt(zt){return zt.map(function(or,lr){return{x:Math.round(Be(or,lr)/Ye)*Ye,y:Math.round(Ue(or,lr)/Ye)*Ye,i:lr}})}return wt.links=function(zt){return jc(tt(zt)).edges.filter(function(or){return or.l&&or.r}).map(function(or){return{source:zt[or.l.i],target:zt[or.r.i]}})},wt.triangles=function(zt){var or=[];return jc(tt(zt)).cells.forEach(function(lr,Dr){for(var Ir=lr.site,oi=lr.edges.sort(Xl),ui=-1,qr=oi.length,Kr,ii,vi=oi[qr-1].edge,ci=vi.l===Ir?vi.r:vi.l;++uici&&(ci=lr.x),lr.y>Jr&&(Jr=lr.y),oi.push(lr.x),ui.push(lr.y);else for(qr=0;qrci&&(ci=un),dn>Jr&&(Jr=dn),oi.push(un),ui.push(dn)}var En=ci-ii,Nn=Jr-vi;En>Nn?Jr=vi+En:ci=ii+Nn;function ga(wa,io,Ss,_s,Ns,pn,za,Lo){if(!(isNaN(Ss)||isNaN(_s)))if(wa.leaf){var Fo=wa.x,js=wa.y;if(Fo!=null)if(p(Fo-Ss)+p(js-_s)<.01)ya(wa,io,Ss,_s,Ns,pn,za,Lo);else{var xl=wa.point;wa.x=wa.y=wa.point=null,ya(wa,xl,Fo,js,Ns,pn,za,Lo),ya(wa,io,Ss,_s,Ns,pn,za,Lo)}else wa.x=Ss,wa.y=_s,wa.point=io}else ya(wa,io,Ss,_s,Ns,pn,za,Lo)}function ya(wa,io,Ss,_s,Ns,pn,za,Lo){var Fo=(Ns+za)*.5,js=(pn+Lo)*.5,xl=Ss>=Fo,fu=_s>=js,dl=fu<<1|xl;wa.leaf=!1,wa=wa.nodes[dl]||(wa.nodes[dl]=Hl()),xl?Ns=Fo:za=Fo,fu?pn=js:Lo=js,ga(wa,io,Ss,_s,Ns,pn,za,Lo)}var so=Hl();if(so.add=function(wa){ga(so,wa,+Dr(wa,++qr),+Ir(wa,qr),ii,vi,ci,Jr)},so.visit=function(wa){Js(wa,so,ii,vi,ci,Jr)},so.find=function(wa){return hc(so,wa[0],wa[1],ii,vi,ci,Jr)},qr=-1,oe==null){for(;++qrWe||Ir>wt||oi=un,Nn=we>=dn,ga=Nn<<1|En,ya=ga+4;gawe&&(We=oe.slice(we,We),tt[wt]?tt[wt]+=We:tt[++wt]=We),(Be=Be[0])===(Ue=Ue[0])?tt[wt]?tt[wt]+=Ue:tt[++wt]=Ue:(tt[++wt]=null,zt.push({i:wt,x:$s(Be,Ue)})),we=dc.lastIndex;return we=0&&!(Be=e.interpolators[we](Z,oe)););return Be}e.interpolators=[function(Z,oe){var we=typeof oe;return(we==="string"?Hr.has(oe.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(oe)?Cc:hs:oe instanceof Wn?Cc:Array.isArray(oe)?ec:we==="object"&&isNaN(oe)?ws:$s)(Z,oe)}],e.interpolateArray=ec;function ec(Z,oe){var we=[],Be=[],Ue=Z.length,We=oe.length,wt=Math.min(Z.length,oe.length),tt;for(tt=0;tt=0?Z.slice(0,oe):Z,Be=oe>=0?Z.slice(oe+1):"in";return we=ov.get(we)||Ps,Be=wo.get(Be)||H,Od(Be(we.apply(null,t.call(arguments,1))))};function Od(Z){return function(oe){return oe<=0?0:oe>=1?1:Z(oe)}}function $o(Z){return function(oe){return 1-Z(1-oe)}}function Ja(Z){return function(oe){return .5*(oe<.5?Z(2*oe):2-Z(2-2*oe))}}function Ef(Z){return Z*Z}function tc(Z){return Z*Z*Z}function uu(Z){if(Z<=0)return 0;if(Z>=1)return 1;var oe=Z*Z,we=oe*Z;return 4*(Z<.5?we:3*(Z-oe)+we-.75)}function Mh(Z){return function(oe){return Math.pow(oe,Z)}}function Wc(Z){return 1-Math.cos(Z*xe)}function kf(Z){return Math.pow(2,10*(Z-1))}function Ml(Z){return 1-Math.sqrt(1-Z*Z)}function Yh(Z,oe){var we;return arguments.length<2&&(oe=.45),arguments.length?we=oe/ht*Math.asin(1/Z):(Z=1,we=oe/4),function(Be){return 1+Z*Math.pow(2,-10*Be)*Math.sin((Be-we)*ht/oe)}}function Eh(Z){return Z||(Z=1.70158),function(oe){return oe*oe*((Z+1)*oe-Z)}}function nh(Z){return Z<1/2.75?7.5625*Z*Z:Z<2/2.75?7.5625*(Z-=1.5/2.75)*Z+.75:Z<2.5/2.75?7.5625*(Z-=2.25/2.75)*Z+.9375:7.5625*(Z-=2.625/2.75)*Z+.984375}e.interpolateHcl=hf;function hf(Z,oe){Z=e.hcl(Z),oe=e.hcl(oe);var we=Z.h,Be=Z.c,Ue=Z.l,We=oe.h-we,wt=oe.c-Be,tt=oe.l-Ue;return isNaN(wt)&&(wt=0,Be=isNaN(Be)?oe.c:Be),isNaN(We)?(We=0,we=isNaN(we)?oe.h:we):We>180?We-=360:We<-180&&(We+=360),function(zt){return Fr(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateHsl=kh;function kh(Z,oe){Z=e.hsl(Z),oe=e.hsl(oe);var we=Z.h,Be=Z.s,Ue=Z.l,We=oe.h-we,wt=oe.s-Be,tt=oe.l-Ue;return isNaN(wt)&&(wt=0,Be=isNaN(Be)?oe.s:Be),isNaN(We)?(We=0,we=isNaN(we)?oe.h:we):We>180?We-=360:We<-180&&(We+=360),function(zt){return jt(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateLab=Kh;function Kh(Z,oe){Z=e.lab(Z),oe=e.lab(oe);var we=Z.l,Be=Z.a,Ue=Z.b,We=oe.l-we,wt=oe.a-Be,tt=oe.b-Ue;return function(zt){return Gi(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateRound=rc;function rc(Z,oe){return oe-=Z,function(we){return Math.round(Z+oe*we)}}e.transform=function(Z){var oe=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(we){if(we!=null){oe.setAttribute("transform",we);var Be=oe.transform.baseVal.consolidate()}return new ah(Be?Be.matrix:Nf)})(Z)};function ah(Z){var oe=[Z.a,Z.b],we=[Z.c,Z.d],Be=df(oe),Ue=Zc(oe,we),We=df(Cu(we,oe,-Ue))||0;oe[0]*we[1]180?oe+=360:oe-Z>180&&(Z+=360),Be.push({i:we.push(Xc(we)+"rotate(",null,")")-2,x:$s(Z,oe)})):oe&&we.push(Xc(we)+"rotate("+oe+")")}function Bd(Z,oe,we,Be){Z!==oe?Be.push({i:we.push(Xc(we)+"skewX(",null,")")-2,x:$s(Z,oe)}):oe&&we.push(Xc(we)+"skewX("+oe+")")}function Jh(Z,oe,we,Be){if(Z[0]!==oe[0]||Z[1]!==oe[1]){var Ue=we.push(Xc(we)+"scale(",null,",",null,")");Be.push({i:Ue-4,x:$s(Z[0],oe[0])},{i:Ue-2,x:$s(Z[1],oe[1])})}else(oe[0]!==1||oe[1]!==1)&&we.push(Xc(we)+"scale("+oe+")")}function Cf(Z,oe){var we=[],Be=[];return Z=e.transform(Z),oe=e.transform(oe),ds(Z.translate,oe.translate,we,Be),Ch(Z.rotate,oe.rotate,we,Be),Bd(Z.skew,oe.skew,we,Be),Jh(Z.scale,oe.scale,we,Be),Z=oe=null,function(Ue){for(var We=-1,wt=Be.length,tt;++We0?We=Jr:(we.c=null,we.t=NaN,we=null,oe.end({type:"end",alpha:We=0})):Jr>0&&(oe.start({type:"start",alpha:We=Jr}),we=Oo(Z.tick)),Z):We},Z.start=function(){var Jr,un=oi.length,dn=ui.length,En=Be[0],Nn=Be[1],ga,ya;for(Jr=0;Jr=0;)We.push(lr=or[zt]),lr.parent=tt,lr.depth=tt.depth+1;we&&(tt.value=0),tt.children=or}else we&&(tt.value=+we.call(Be,tt,tt.depth)||0),delete tt.children;return vc(Ue,function(Dr){var Ir,oi;Z&&(Ir=Dr.children)&&Ir.sort(Z),we&&(oi=Dr.parent)&&(oi.value+=Dr.value)}),wt}return Be.sort=function(Ue){return arguments.length?(Z=Ue,Be):Z},Be.children=function(Ue){return arguments.length?(oe=Ue,Be):oe},Be.value=function(Ue){return arguments.length?(we=Ue,Be):we},Be.revalue=function(Ue){return we&&(Pc(Ue,function(We){We.children&&(We.value=0)}),vc(Ue,function(We){var wt;We.children||(We.value=+we.call(Be,We,We.depth)||0),(wt=We.parent)&&(wt.value+=We.value)})),Ue},Be};function Gu(Z,oe){return e.rebind(Z,oe,"sort","children","value"),Z.nodes=Z,Z.links=Iu,Z}function Pc(Z,oe){for(var we=[Z];(Z=we.pop())!=null;)if(oe(Z),(Ue=Z.children)&&(Be=Ue.length))for(var Be,Ue;--Be>=0;)we.push(Ue[Be])}function vc(Z,oe){for(var we=[Z],Be=[];(Z=we.pop())!=null;)if(Be.push(Z),(wt=Z.children)&&(We=wt.length))for(var Ue=-1,We,wt;++UeUe&&(Ue=tt),Be.push(tt)}for(wt=0;wtBe&&(we=oe,Be=Ue);return we}function Is(Z){return Z.reduce(Pf,0)}function Pf(Z,oe){return Z+oe[1]}e.layout.histogram=function(){var Z=!0,oe=Number,we=Vf,Be=Ic;function Ue(We,Ir){for(var tt=[],zt=We.map(oe,this),or=we.call(this,zt,Ir),lr=Be.call(this,or,zt,Ir),Dr,Ir=-1,oi=zt.length,ui=lr.length-1,qr=Z?1:1/oi,Kr;++Ir0)for(Ir=-1;++Ir=or[0]&&Kr<=or[1]&&(Dr=tt[e.bisect(lr,Kr,1,ui)-1],Dr.y+=qr,Dr.push(We[Ir]));return tt}return Ue.value=function(We){return arguments.length?(oe=We,Ue):oe},Ue.range=function(We){return arguments.length?(we=ti(We),Ue):we},Ue.bins=function(We){return arguments.length?(Be=typeof We=="number"?function(wt){return ju(wt,We)}:ti(We),Ue):Be},Ue.frequency=function(We){return arguments.length?(Z=!!We,Ue):Z},Ue};function Ic(Z,oe){return ju(Z,Math.ceil(Math.log(oe.length)/Math.LN2+1))}function ju(Z,oe){for(var we=-1,Be=+Z[0],Ue=(Z[1]-Be)/oe,We=[];++we<=oe;)We[we]=Ue*we+Be;return We}function Vf(Z){return[e.min(Z),e.max(Z)]}e.layout.pack=function(){var Z=e.layout.hierarchy().sort(pc),oe=0,we=[1,1],Be;function Ue(We,wt){var tt=Z.call(this,We,wt),zt=tt[0],or=we[0],lr=we[1],Dr=Be==null?Math.sqrt:typeof Be=="function"?Be:function(){return Be};if(zt.x=zt.y=0,vc(zt,function(oi){oi.r=+Dr(oi.value)}),vc(zt,Ih),oe){var Ir=oe*(Be?1:Math.max(2*zt.r/or,2*zt.r/lr))/2;vc(zt,function(oi){oi.r+=Ir}),vc(zt,Ih),vc(zt,function(oi){oi.r-=Ir})}return gc(zt,or/2,lr/2,Be?1:1/Math.max(2*zt.r/or,2*zt.r/lr)),tt}return Ue.size=function(We){return arguments.length?(we=We,Ue):we},Ue.radius=function(We){return arguments.length?(Be=We==null||typeof We=="function"?We:+We,Ue):Be},Ue.padding=function(We){return arguments.length?(oe=+We,Ue):oe},Gu(Ue,Z)};function pc(Z,oe){return Z.value-oe.value}function pf(Z,oe){var we=Z._pack_next;Z._pack_next=oe,oe._pack_prev=Z,oe._pack_next=we,we._pack_prev=oe}function Ph(Z,oe){Z._pack_next=oe,oe._pack_prev=Z}function Dl(Z,oe){var we=oe.x-Z.x,Be=oe.y-Z.y,Ue=Z.r+oe.r;return .999*Ue*Ue>we*we+Be*Be}function Ih(Z){if(!(oe=Z.children)||!(Ir=oe.length))return;var oe,we=1/0,Be=-1/0,Ue=1/0,We=-1/0,wt,tt,zt,or,lr,Dr,Ir;function oi(Jr){we=Math.min(Jr.x-Jr.r,we),Be=Math.max(Jr.x+Jr.r,Be),Ue=Math.min(Jr.y-Jr.r,Ue),We=Math.max(Jr.y+Jr.r,We)}if(oe.forEach(Wu),wt=oe[0],wt.x=-wt.r,wt.y=0,oi(wt),Ir>1&&(tt=oe[1],tt.x=tt.r,tt.y=0,oi(tt),Ir>2))for(zt=oe[2],hl(wt,tt,zt),oi(zt),pf(wt,zt),wt._pack_prev=zt,pf(zt,tt),tt=wt._pack_next,or=3;orKr.x&&(Kr=un),un.depth>ii.depth&&(ii=un)});var vi=oe(qr,Kr)/2-qr.x,ci=we[0]/(Kr.x+oe(Kr,qr)/2+vi),Jr=we[1]/(ii.depth||1);Pc(oi,function(un){un.x=(un.x+vi)*ci,un.y=un.depth*Jr})}return Ir}function We(lr){for(var Dr={A:null,children:[lr]},Ir=[Dr],oi;(oi=Ir.pop())!=null;)for(var ui=oi.children,qr,Kr=0,ii=ui.length;Kr0&&(nc(gt(qr,lr,Ir),lr,un),ii+=un,vi+=un),ci+=qr.m,ii+=oi.m,Jr+=Kr.m,vi+=ui.m;qr&&!Kc(ui)&&(ui.t=qr,ui.m+=ci-vi),oi&&!mc(Kr)&&(Kr.t=oi,Kr.m+=ii-Jr,Ir=lr)}return Ir}function or(lr){lr.x*=we[0],lr.y=lr.depth*we[1]}return Ue.separation=function(lr){return arguments.length?(oe=lr,Ue):oe},Ue.size=function(lr){return arguments.length?(Be=(we=lr)==null?or:null,Ue):Be?null:we},Ue.nodeSize=function(lr){return arguments.length?(Be=(we=lr)==null?null:or,Ue):Be?we:null},Gu(Ue,Z)};function iu(Z,oe){return Z.parent==oe.parent?1:2}function mc(Z){var oe=Z.children;return oe.length?oe[0]:Z.t}function Kc(Z){var oe=Z.children,we;return(we=oe.length)?oe[we-1]:Z.t}function nc(Z,oe,we){var Be=we/(oe.i-Z.i);oe.c-=Be,oe.s+=we,Z.c+=Be,oe.z+=we,oe.m+=we}function gf(Z){for(var oe=0,we=0,Be=Z.children,Ue=Be.length,We;--Ue>=0;)We=Be[Ue],We.z+=oe,We.m+=oe,oe+=We.s+(we+=We.c)}function gt(Z,oe,we){return Z.a.parent===oe.parent?Z.a:we}e.layout.cluster=function(){var Z=e.layout.hierarchy().sort(null).value(null),oe=iu,we=[1,1],Be=!1;function Ue(We,wt){var tt=Z.call(this,We,wt),zt=tt[0],or,lr=0;vc(zt,function(qr){var Kr=qr.children;Kr&&Kr.length?(qr.x=wr(Kr),qr.y=Bt(Kr)):(qr.x=or?lr+=oe(qr,or):0,qr.y=0,or=qr)});var Dr=vr(zt),Ir=Ur(zt),oi=Dr.x-oe(Dr,Ir)/2,ui=Ir.x+oe(Ir,Dr)/2;return vc(zt,Be?function(qr){qr.x=(qr.x-zt.x)*we[0],qr.y=(zt.y-qr.y)*we[1]}:function(qr){qr.x=(qr.x-oi)/(ui-oi)*we[0],qr.y=(1-(zt.y?qr.y/zt.y:1))*we[1]}),tt}return Ue.separation=function(We){return arguments.length?(oe=We,Ue):oe},Ue.size=function(We){return arguments.length?(Be=(we=We)==null,Ue):Be?null:we},Ue.nodeSize=function(We){return arguments.length?(Be=(we=We)!=null,Ue):Be?we:null},Gu(Ue,Z)};function Bt(Z){return 1+e.max(Z,function(oe){return oe.y})}function wr(Z){return Z.reduce(function(oe,we){return oe+we.x},0)/Z.length}function vr(Z){var oe=Z.children;return oe&&oe.length?vr(oe[0]):Z}function Ur(Z){var oe=Z.children,we;return oe&&(we=oe.length)?Ur(oe[we-1]):Z}e.layout.treemap=function(){var Z=e.layout.hierarchy(),oe=Math.round,we=[1,1],Be=null,Ue=fi,We=!1,wt,tt="squarify",zt=.5*(1+Math.sqrt(5));function or(qr,Kr){for(var ii=-1,vi=qr.length,ci,Jr;++ii0;)vi.push(Jr=ci[Nn-1]),vi.area+=Jr.area,tt!=="squarify"||(dn=Ir(vi,En))<=un?(ci.pop(),un=dn):(vi.area-=vi.pop().area,oi(vi,En,ii,!1),En=Math.min(ii.dx,ii.dy),vi.length=vi.area=0,un=1/0);vi.length&&(oi(vi,En,ii,!0),vi.length=vi.area=0),Kr.forEach(lr)}}function Dr(qr){var Kr=qr.children;if(Kr&&Kr.length){var ii=Ue(qr),vi=Kr.slice(),ci,Jr=[];for(or(vi,ii.dx*ii.dy/qr.value),Jr.area=0;ci=vi.pop();)Jr.push(ci),Jr.area+=ci.area,ci.z!=null&&(oi(Jr,ci.z?ii.dx:ii.dy,ii,!vi.length),Jr.length=Jr.area=0);Kr.forEach(Dr)}}function Ir(qr,Kr){for(var ii=qr.area,vi,ci=0,Jr=1/0,un=-1,dn=qr.length;++unci&&(ci=vi));return ii*=ii,Kr*=Kr,ii?Math.max(Kr*ci*zt/ii,ii/(Kr*Jr*zt)):1/0}function oi(qr,Kr,ii,vi){var ci=-1,Jr=qr.length,un=ii.x,dn=ii.y,En=Kr?oe(qr.area/Kr):0,Nn;if(Kr==ii.dx){for((vi||En>ii.dy)&&(En=ii.dy);++ciii.dx)&&(En=ii.dx);++ci1);return Z+oe*Be*Math.sqrt(-2*Math.log(We)/We)}},logNormal:function(){var Z=e.random.normal.apply(e,arguments);return function(){return Math.exp(Z())}},bates:function(Z){var oe=e.random.irwinHall(Z);return function(){return oe()/Z}},irwinHall:function(Z){return function(){for(var oe=0,we=0;we2?mi:hn,or=Be?Lu:pd;return Ue=zt(Z,oe,or,we),We=zt(oe,Z,or,Sl),tt}function tt(zt){return Ue(zt)}return tt.invert=function(zt){return We(zt)},tt.domain=function(zt){return arguments.length?(Z=zt.map(Number),wt()):Z},tt.range=function(zt){return arguments.length?(oe=zt,wt()):oe},tt.rangeRound=function(zt){return tt.range(zt).interpolate(rc)},tt.clamp=function(zt){return arguments.length?(Be=zt,wt()):Be},tt.interpolate=function(zt){return arguments.length?(we=zt,wt()):we},tt.ticks=function(zt){return qa(Z,zt)},tt.tickFormat=function(zt,or){return d3_scale_linearTickFormat(Z,zt,or)},tt.nice=function(zt){return Ta(Z,zt),wt()},tt.copy=function(){return Pn(Z,oe,we,Be)},wt()}function Ma(Z,oe){return e.rebind(Z,oe,"range","rangeRound","interpolate","clamp")}function Ta(Z,oe){return Ti(Z,qi(Ea(Z,oe)[2])),Ti(Z,qi(Ea(Z,oe)[2])),Z}function Ea(Z,oe){oe==null&&(oe=10);var we=Fi(Z),Be=we[1]-we[0],Ue=Math.pow(10,Math.floor(Math.log(Be/oe)/Math.LN10)),We=oe/Be*Ue;return We<=.15?Ue*=10:We<=.35?Ue*=5:We<=.75&&(Ue*=2),we[0]=Math.ceil(we[0]/Ue)*Ue,we[1]=Math.floor(we[1]/Ue)*Ue+Ue*.5,we[2]=Ue,we}function qa(Z,oe){return e.range.apply(e,Ea(Z,oe))}var Cn={s:1,g:1,p:1,r:1,e:1};function sn(Z){return-Math.floor(Math.log(Z)/Math.LN10+.01)}function Ua(Z,oe){var we=sn(oe[2]);return Z in Cn?Math.abs(we-sn(Math.max(p(oe[0]),p(oe[1]))))+ +(Z!=="e"):we-(Z==="%")*2}e.scale.log=function(){return mo(e.scale.linear().domain([0,1]),10,!0,[1,10])};function mo(Z,oe,we,Be){function Ue(tt){return(we?Math.log(tt<0?0:tt):-Math.log(tt>0?0:-tt))/Math.log(oe)}function We(tt){return we?Math.pow(oe,tt):-Math.pow(oe,-tt)}function wt(tt){return Z(Ue(tt))}return wt.invert=function(tt){return We(Z.invert(tt))},wt.domain=function(tt){return arguments.length?(we=tt[0]>=0,Z.domain((Be=tt.map(Number)).map(Ue)),wt):Be},wt.base=function(tt){return arguments.length?(oe=+tt,Z.domain(Be.map(Ue)),wt):oe},wt.nice=function(){var tt=Ti(Be.map(Ue),we?Math:Xo);return Z.domain(tt),Be=tt.map(We),wt},wt.ticks=function(){var tt=Fi(Be),zt=[],or=tt[0],lr=tt[1],Dr=Math.floor(Ue(or)),Ir=Math.ceil(Ue(lr)),oi=oe%1?2:oe;if(isFinite(Ir-Dr)){if(we){for(;Dr0;ui--)zt.push(We(Dr)*ui);for(Dr=0;zt[Dr]lr;Ir--);zt=zt.slice(Dr,Ir)}return zt},wt.copy=function(){return mo(Z.copy(),oe,we,Be)},Ma(wt,Z)}var Xo={floor:function(Z){return-Math.ceil(-Z)},ceil:function(Z){return-Math.floor(-Z)}};e.scale.pow=function(){return Ts(e.scale.linear(),1,[0,1])};function Ts(Z,oe,we){var Be=Qo(oe),Ue=Qo(1/oe);function We(wt){return Z(Be(wt))}return We.invert=function(wt){return Ue(Z.invert(wt))},We.domain=function(wt){return arguments.length?(Z.domain((we=wt.map(Number)).map(Be)),We):we},We.ticks=function(wt){return qa(we,wt)},We.tickFormat=function(wt,tt){return d3_scale_linearTickFormat(we,wt,tt)},We.nice=function(wt){return We.domain(Ta(we,wt))},We.exponent=function(wt){return arguments.length?(Be=Qo(oe=wt),Ue=Qo(1/oe),Z.domain(we.map(Be)),We):oe},We.copy=function(){return Ts(Z.copy(),oe,we)},Ma(We,Z)}function Qo(Z){return function(oe){return oe<0?-Math.pow(-oe,Z):Math.pow(oe,Z)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return ys([],{t:"range",a:[[]]})};function ys(Z,oe){var we,Be,Ue;function We(tt){return Be[((we.get(tt)||(oe.t==="range"?we.set(tt,Z.push(tt)):NaN))-1)%Be.length]}function wt(tt,zt){return e.range(Z.length).map(function(or){return tt+zt*or})}return We.domain=function(tt){if(!arguments.length)return Z;Z=[],we=new A;for(var zt=-1,or=tt.length,lr;++zt0?we[We-1]:Z[0],WeIr?0:1;if(lr=Le)return zt(lr,ui)+(or?zt(or,1-ui):"")+"Z";var qr,Kr,ii,vi,ci=0,Jr=0,un,dn,En,Nn,ga,ya,so,wa,io=[];if((vi=(+wt.apply(this,arguments)||0)/2)&&(ii=Be===Ru?Math.sqrt(or*or+lr*lr):+Be.apply(this,arguments),ui||(Jr*=-1),lr&&(Jr=Qr(ii/lr*Math.sin(vi))),or&&(ci=Qr(ii/or*Math.sin(vi)))),lr){un=lr*Math.cos(Dr+Jr),dn=lr*Math.sin(Dr+Jr),En=lr*Math.cos(Ir-Jr),Nn=lr*Math.sin(Ir-Jr);var Ss=Math.abs(Ir-Dr-2*Jr)<=Xe?0:1;if(Jr&&Dc(un,dn,En,Nn)===ui^Ss){var _s=(Dr+Ir)/2;un=lr*Math.cos(_s),dn=lr*Math.sin(_s),En=Nn=null}}else un=dn=0;if(or){ga=or*Math.cos(Ir-ci),ya=or*Math.sin(Ir-ci),so=or*Math.cos(Dr+ci),wa=or*Math.sin(Dr+ci);var Ns=Math.abs(Dr-Ir+2*ci)<=Xe?0:1;if(ci&&Dc(ga,ya,so,wa)===1-ui^Ns){var pn=(Dr+Ir)/2;ga=or*Math.cos(pn),ya=or*Math.sin(pn),so=wa=null}}else ga=ya=0;if(oi>Ye&&(qr=Math.min(Math.abs(lr-or)/2,+we.apply(this,arguments)))>.001){Kr=or0?0:1}function Da(Z,oe,we,Be,Ue){var We=Z[0]-oe[0],wt=Z[1]-oe[1],tt=(Ue?Be:-Be)/Math.sqrt(We*We+wt*wt),zt=tt*wt,or=-tt*We,lr=Z[0]+zt,Dr=Z[1]+or,Ir=oe[0]+zt,oi=oe[1]+or,ui=(lr+Ir)/2,qr=(Dr+oi)/2,Kr=Ir-lr,ii=oi-Dr,vi=Kr*Kr+ii*ii,ci=we-Be,Jr=lr*oi-Ir*Dr,un=(ii<0?-1:1)*Math.sqrt(Math.max(0,ci*ci*vi-Jr*Jr)),dn=(Jr*ii-Kr*un)/vi,En=(-Jr*Kr-ii*un)/vi,Nn=(Jr*ii+Kr*un)/vi,ga=(-Jr*Kr+ii*un)/vi,ya=dn-ui,so=En-qr,wa=Nn-ui,io=ga-qr;return ya*ya+so*so>wa*wa+io*io&&(dn=Nn,En=ga),[[dn-zt,En-or],[dn*we/ci,En*we/ci]]}function eo(){return!0}function $c(Z){var oe=zs,we=ks,Be=eo,Ue=_c,We=Ue.key,wt=.7;function tt(zt){var or=[],lr=[],Dr=-1,Ir=zt.length,oi,ui=ti(oe),qr=ti(we);function Kr(){or.push("M",Ue(Z(lr),wt))}for(;++Dr1?Z.join("L"):Z+"Z"}function le(Z){return Z.join("L")+"Z"}function w(Z){for(var oe=0,we=Z.length,Be=Z[0],Ue=[Be[0],",",Be[1]];++oe1&&Ue.push("H",Be[0]),Ue.join("")}function B(Z){for(var oe=0,we=Z.length,Be=Z[0],Ue=[Be[0],",",Be[1]];++oe1){tt=oe[1],We=Z[zt],zt++,Be+="C"+(Ue[0]+wt[0])+","+(Ue[1]+wt[1])+","+(We[0]-tt[0])+","+(We[1]-tt[1])+","+We[0]+","+We[1];for(var or=2;or9&&(We=we*3/Math.sqrt(We),wt[tt]=We*Be,wt[tt+1]=We*Ue));for(tt=-1;++tt<=zt;)We=(Z[Math.min(zt,tt+1)][0]-Z[Math.max(0,tt-1)][0])/(6*(1+wt[tt]*wt[tt])),oe.push([We||0,wt[tt]*We||0]);return oe}function Mt(Z){return Z.length<3?_c(Z):Z[0]+je(Z,et(Z))}e.svg.line.radial=function(){var Z=$c(Dt);return Z.radius=Z.x,delete Z.x,Z.angle=Z.y,delete Z.y,Z};function Dt(Z){for(var oe,we=-1,Be=Z.length,Ue,We;++weXe)+",1 "+Dr}function or(lr,Dr,Ir,oi){return"Q 0,0 "+oi}return We.radius=function(lr){return arguments.length?(we=ti(lr),We):we},We.source=function(lr){return arguments.length?(Z=ti(lr),We):Z},We.target=function(lr){return arguments.length?(oe=ti(lr),We):oe},We.startAngle=function(lr){return arguments.length?(Be=ti(lr),We):Be},We.endAngle=function(lr){return arguments.length?(Ue=ti(lr),We):Ue},We};function Rr(Z){return Z.radius}e.svg.diagonal=function(){var Z=tr,oe=mr,we=zr;function Be(Ue,We){var wt=Z.call(this,Ue,We),tt=oe.call(this,Ue,We),zt=(wt.y+tt.y)/2,or=[wt,{x:wt.x,y:zt},{x:tt.x,y:zt},tt];return or=or.map(we),"M"+or[0]+"C"+or[1]+" "+or[2]+" "+or[3]}return Be.source=function(Ue){return arguments.length?(Z=ti(Ue),Be):Z},Be.target=function(Ue){return arguments.length?(oe=ti(Ue),Be):oe},Be.projection=function(Ue){return arguments.length?(we=Ue,Be):we},Be};function zr(Z){return[Z.x,Z.y]}e.svg.diagonal.radial=function(){var Z=e.svg.diagonal(),oe=zr,we=Z.projection;return Z.projection=function(Be){return arguments.length?we(Xr(oe=Be)):oe},Z};function Xr(Z){return function(){var oe=Z.apply(this,arguments),we=oe[0],Be=oe[1]-xe;return[we*Math.cos(Be),we*Math.sin(Be)]}}e.svg.symbol=function(){var Z=Li,oe=di;function we(Be,Ue){return(Qi.get(Z.call(this,Be,Ue))||Ci)(oe.call(this,Be,Ue))}return we.type=function(Be){return arguments.length?(Z=ti(Be),we):Z},we.size=function(Be){return arguments.length?(oe=ti(Be),we):oe},we};function di(){return 64}function Li(){return"circle"}function Ci(Z){var oe=Math.sqrt(Z/Xe);return"M0,"+oe+"A"+oe+","+oe+" 0 1,1 0,"+-oe+"A"+oe+","+oe+" 0 1,1 0,"+oe+"Z"}var Qi=e.map({circle:Ci,cross:function(Z){var oe=Math.sqrt(Z/5)/2;return"M"+-3*oe+","+-oe+"H"+-oe+"V"+-3*oe+"H"+oe+"V"+-oe+"H"+3*oe+"V"+oe+"H"+oe+"V"+3*oe+"H"+-oe+"V"+oe+"H"+-3*oe+"Z"},diamond:function(Z){var oe=Math.sqrt(Z/(2*pa)),we=oe*pa;return"M0,"+-oe+"L"+we+",0 0,"+oe+" "+-we+",0Z"},square:function(Z){var oe=Math.sqrt(Z)/2;return"M"+-oe+","+-oe+"L"+oe+","+-oe+" "+oe+","+oe+" "+-oe+","+oe+"Z"},"triangle-down":function(Z){var oe=Math.sqrt(Z/Mn),we=oe*Mn/2;return"M0,"+we+"L"+oe+","+-we+" "+-oe+","+-we+"Z"},"triangle-up":function(Z){var oe=Math.sqrt(Z/Mn),we=oe*Mn/2;return"M0,"+-we+"L"+oe+","+we+" "+-oe+","+we+"Z"}});e.svg.symbolTypes=Qi.keys();var Mn=Math.sqrt(3),pa=Math.tan(30*Se);Ce.transition=function(Z){for(var oe=Ro||++co,we=po(Z),Be=[],Ue,We,wt=Ds||{time:Date.now(),ease:uu,delay:0,duration:250},tt=-1,zt=this.length;++tt0;)Dr[--vi].call(Z,ii);if(Kr>=1)return wt.event&&wt.event.end.call(Z,Z.__data__,oe),--We.count?delete We[Be]:delete Z[we],1}wt||(tt=Ue.time,zt=Oo(Ir,0,tt),wt=We[Be]={tween:new A,time:tt,timer:zt,delay:Ue.delay,duration:Ue.duration,ease:Ue.ease,index:oe},Ue=null,++We.count)}e.svg.axis=function(){var Z=e.scale.linear(),oe=Gl,we=6,Be=6,Ue=3,We=[10],wt=null,tt;function zt(or){or.each(function(){var lr=e.select(this),Dr=this.__chart__||Z,Ir=this.__chart__=Z.copy(),oi=wt==null?Ir.ticks?Ir.ticks.apply(Ir,We):Ir.domain():wt,ui=tt==null?Ir.tickFormat?Ir.tickFormat.apply(Ir,We):H:tt,qr=lr.selectAll(".tick").data(oi,Ir),Kr=qr.enter().insert("g",".domain").attr("class","tick").style("opacity",Ye),ii=e.transition(qr.exit()).style("opacity",Ye).remove(),vi=e.transition(qr.order()).style("opacity",1),ci=Math.max(we,0)+Ue,Jr,un=Xi(Ir),dn=lr.selectAll(".domain").data([0]),En=(dn.enter().append("path").attr("class","domain"),e.transition(dn));Kr.append("line"),Kr.append("text");var Nn=Kr.select("line"),ga=vi.select("line"),ya=qr.select("text").text(ui),so=Kr.select("text"),wa=vi.select("text"),io=oe==="top"||oe==="left"?-1:1,Ss,_s,Ns,pn;if(oe==="bottom"||oe==="top"?(Jr=cu,Ss="x",Ns="y",_s="x2",pn="y2",ya.attr("dy",io<0?"0em":".71em").style("text-anchor","middle"),En.attr("d","M"+un[0]+","+io*Be+"V0H"+un[1]+"V"+io*Be)):(Jr=el,Ss="y",Ns="x",_s="y2",pn="x2",ya.attr("dy",".32em").style("text-anchor",io<0?"end":"start"),En.attr("d","M"+io*Be+","+un[0]+"H0V"+un[1]+"H"+io*Be)),Nn.attr(pn,io*we),so.attr(Ns,io*ci),ga.attr(_s,0).attr(pn,io*we),wa.attr(Ss,0).attr(Ns,io*ci),Ir.rangeBand){var za=Ir,Lo=za.rangeBand()/2;Dr=Ir=function(Fo){return za(Fo)+Lo}}else Dr.rangeBand?Dr=Ir:ii.call(Jr,Ir,Dr);Kr.call(Jr,Dr,Ir),vi.call(Jr,Ir,Ir)})}return zt.scale=function(or){return arguments.length?(Z=or,zt):Z},zt.orient=function(or){return arguments.length?(oe=or in Zu?or+"":Gl,zt):oe},zt.ticks=function(){return arguments.length?(We=r(arguments),zt):We},zt.tickValues=function(or){return arguments.length?(wt=or,zt):wt},zt.tickFormat=function(or){return arguments.length?(tt=or,zt):tt},zt.tickSize=function(or){var lr=arguments.length;return lr?(we=+or,Be=+arguments[lr-1],zt):we},zt.innerTickSize=function(or){return arguments.length?(we=+or,zt):we},zt.outerTickSize=function(or){return arguments.length?(Be=+or,zt):Be},zt.tickPadding=function(or){return arguments.length?(Ue=+or,zt):Ue},zt.tickSubdivide=function(){return arguments.length&&zt},zt};var Gl="bottom",Zu={top:1,right:1,bottom:1,left:1};function cu(Z,oe,we){Z.attr("transform",function(Be){var Ue=oe(Be);return"translate("+(isFinite(Ue)?Ue:we(Be))+",0)"})}function el(Z,oe,we){Z.attr("transform",function(Be){var Ue=oe(Be);return"translate(0,"+(isFinite(Ue)?Ue:we(Be))+")"})}e.svg.brush=function(){var Z=ke(lr,"brushstart","brush","brushend"),oe=null,we=null,Be=[0,0],Ue=[0,0],We,wt,tt=!0,zt=!0,or=zc[0];function lr(qr){qr.each(function(){var Kr=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",ui).on("touchstart.brush",ui),ii=Kr.selectAll(".background").data([0]);ii.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Kr.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var vi=Kr.selectAll(".resize").data(or,H);vi.exit().remove(),vi.enter().append("g").attr("class",function(dn){return"resize "+dn}).style("cursor",function(dn){return au[dn]}).append("rect").attr("x",function(dn){return/[ew]$/.test(dn)?-3:null}).attr("y",function(dn){return/^[ns]/.test(dn)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),vi.style("display",lr.empty()?"none":null);var ci=e.transition(Kr),Jr=e.transition(ii),un;oe&&(un=Xi(oe),Jr.attr("x",un[0]).attr("width",un[1]-un[0]),Ir(ci)),we&&(un=Xi(we),Jr.attr("y",un[0]).attr("height",un[1]-un[0]),oi(ci)),Dr(ci)})}lr.event=function(qr){qr.each(function(){var Kr=Z.of(this,arguments),ii={x:Be,y:Ue,i:We,j:wt},vi=this.__chart__||ii;this.__chart__=ii,Ro?e.select(this).transition().each("start.brush",function(){We=vi.i,wt=vi.j,Be=vi.x,Ue=vi.y,Kr({type:"brushstart"})}).tween("brush:brush",function(){var ci=ec(Be,ii.x),Jr=ec(Ue,ii.y);return We=wt=null,function(un){Be=ii.x=ci(un),Ue=ii.y=Jr(un),Kr({type:"brush",mode:"resize"})}}).each("end.brush",function(){We=ii.i,wt=ii.j,Kr({type:"brush",mode:"resize"}),Kr({type:"brushend"})}):(Kr({type:"brushstart"}),Kr({type:"brush",mode:"resize"}),Kr({type:"brushend"}))})};function Dr(qr){qr.selectAll(".resize").attr("transform",function(Kr){return"translate("+Be[+/e$/.test(Kr)]+","+Ue[+/^s/.test(Kr)]+")"})}function Ir(qr){qr.select(".extent").attr("x",Be[0]),qr.selectAll(".extent,.n>rect,.s>rect").attr("width",Be[1]-Be[0])}function oi(qr){qr.select(".extent").attr("y",Ue[0]),qr.selectAll(".extent,.e>rect,.w>rect").attr("height",Ue[1]-Ue[0])}function ui(){var qr=this,Kr=e.select(e.event.target),ii=Z.of(qr,arguments),vi=e.select(qr),ci=Kr.datum(),Jr=!/^(n|s)$/.test(ci)&&oe,un=!/^(e|w)$/.test(ci)&&we,dn=Kr.classed("extent"),En=Or(qr),Nn,ga=e.mouse(qr),ya,so=e.select(a(qr)).on("keydown.brush",Ss).on("keyup.brush",_s);if(e.event.changedTouches?so.on("touchmove.brush",Ns).on("touchend.brush",za):so.on("mousemove.brush",Ns).on("mouseup.brush",za),vi.interrupt().selectAll("*").interrupt(),dn)ga[0]=Be[0]-ga[0],ga[1]=Ue[0]-ga[1];else if(ci){var wa=+/w$/.test(ci),io=+/^n/.test(ci);ya=[Be[1-wa]-ga[0],Ue[1-io]-ga[1]],ga[0]=Be[wa],ga[1]=Ue[io]}else e.event.altKey&&(Nn=ga.slice());vi.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Kr.style("cursor")),ii({type:"brushstart"}),Ns();function Ss(){e.event.keyCode==32&&(dn||(Nn=null,ga[0]-=Be[1],ga[1]-=Ue[1],dn=2),_e())}function _s(){e.event.keyCode==32&&dn==2&&(ga[0]+=Be[1],ga[1]+=Ue[1],dn=0,_e())}function Ns(){var Lo=e.mouse(qr),Fo=!1;ya&&(Lo[0]+=ya[0],Lo[1]+=ya[1]),dn||(e.event.altKey?(Nn||(Nn=[(Be[0]+Be[1])/2,(Ue[0]+Ue[1])/2]),ga[0]=Be[+(Lo[0]{(function(e,t){typeof a6=="object"&&typeof hee!="undefined"?t(a6):(e=e||self,t(e.d3=e.d3||{}))})(a6,function(e){"use strict";var t=new Date,r=new Date;function n(Ke,xt,bt,Lt){function St(Et){return Ke(Et=arguments.length===0?new Date:new Date(+Et)),Et}return St.floor=function(Et){return Ke(Et=new Date(+Et)),Et},St.ceil=function(Et){return Ke(Et=new Date(Et-1)),xt(Et,1),Ke(Et),Et},St.round=function(Et){var dt=St(Et),Ht=St.ceil(Et);return Et-dt0))return $t;do $t.push(fr=new Date(+Et)),xt(Et,Ht),Ke(Et);while(fr=dt)for(;Ke(dt),!Et(dt);)dt.setTime(dt-1)},function(dt,Ht){if(dt>=dt)if(Ht<0)for(;++Ht<=0;)for(;xt(dt,-1),!Et(dt););else for(;--Ht>=0;)for(;xt(dt,1),!Et(dt););})},bt&&(St.count=function(Et,dt){return t.setTime(+Et),r.setTime(+dt),Ke(t),Ke(r),Math.floor(bt(t,r))},St.every=function(Et){return Et=Math.floor(Et),!isFinite(Et)||!(Et>0)?null:Et>1?St.filter(Lt?function(dt){return Lt(dt)%Et===0}:function(dt){return St.count(0,dt)%Et===0}):St}),St}var i=n(function(){},function(Ke,xt){Ke.setTime(+Ke+xt)},function(Ke,xt){return xt-Ke});i.every=function(Ke){return Ke=Math.floor(Ke),!isFinite(Ke)||!(Ke>0)?null:Ke>1?n(function(xt){xt.setTime(Math.floor(xt/Ke)*Ke)},function(xt,bt){xt.setTime(+xt+bt*Ke)},function(xt,bt){return(bt-xt)/Ke}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,c=6048e5,f=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds())},function(Ke,xt){Ke.setTime(+Ke+xt*o)},function(Ke,xt){return(xt-Ke)/o},function(Ke){return Ke.getUTCSeconds()}),h=f.range,d=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds()-Ke.getSeconds()*o)},function(Ke,xt){Ke.setTime(+Ke+xt*s)},function(Ke,xt){return(xt-Ke)/s},function(Ke){return Ke.getMinutes()}),v=d.range,x=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds()-Ke.getSeconds()*o-Ke.getMinutes()*s)},function(Ke,xt){Ke.setTime(+Ke+xt*l)},function(Ke,xt){return(xt-Ke)/l},function(Ke){return Ke.getHours()}),b=x.range,p=n(function(Ke){Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setDate(Ke.getDate()+xt)},function(Ke,xt){return(xt-Ke-(xt.getTimezoneOffset()-Ke.getTimezoneOffset())*s)/u},function(Ke){return Ke.getDate()-1}),E=p.range;function k(Ke){return n(function(xt){xt.setDate(xt.getDate()-(xt.getDay()+7-Ke)%7),xt.setHours(0,0,0,0)},function(xt,bt){xt.setDate(xt.getDate()+bt*7)},function(xt,bt){return(bt-xt-(bt.getTimezoneOffset()-xt.getTimezoneOffset())*s)/c})}var A=k(0),L=k(1),_=k(2),C=k(3),M=k(4),g=k(5),P=k(6),T=A.range,F=L.range,q=_.range,V=C.range,H=M.range,X=g.range,G=P.range,N=n(function(Ke){Ke.setDate(1),Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setMonth(Ke.getMonth()+xt)},function(Ke,xt){return xt.getMonth()-Ke.getMonth()+(xt.getFullYear()-Ke.getFullYear())*12},function(Ke){return Ke.getMonth()}),W=N.range,re=n(function(Ke){Ke.setMonth(0,1),Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setFullYear(Ke.getFullYear()+xt)},function(Ke,xt){return xt.getFullYear()-Ke.getFullYear()},function(Ke){return Ke.getFullYear()});re.every=function(Ke){return!isFinite(Ke=Math.floor(Ke))||!(Ke>0)?null:n(function(xt){xt.setFullYear(Math.floor(xt.getFullYear()/Ke)*Ke),xt.setMonth(0,1),xt.setHours(0,0,0,0)},function(xt,bt){xt.setFullYear(xt.getFullYear()+bt*Ke)})};var ae=re.range,_e=n(function(Ke){Ke.setUTCSeconds(0,0)},function(Ke,xt){Ke.setTime(+Ke+xt*s)},function(Ke,xt){return(xt-Ke)/s},function(Ke){return Ke.getUTCMinutes()}),Me=_e.range,ke=n(function(Ke){Ke.setUTCMinutes(0,0,0)},function(Ke,xt){Ke.setTime(+Ke+xt*l)},function(Ke,xt){return(xt-Ke)/l},function(Ke){return Ke.getUTCHours()}),ge=ke.range,ie=n(function(Ke){Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCDate(Ke.getUTCDate()+xt)},function(Ke,xt){return(xt-Ke)/u},function(Ke){return Ke.getUTCDate()-1}),Te=ie.range;function Ee(Ke){return n(function(xt){xt.setUTCDate(xt.getUTCDate()-(xt.getUTCDay()+7-Ke)%7),xt.setUTCHours(0,0,0,0)},function(xt,bt){xt.setUTCDate(xt.getUTCDate()+bt*7)},function(xt,bt){return(bt-xt)/c})}var Ae=Ee(0),ze=Ee(1),Ce=Ee(2),me=Ee(3),Re=Ee(4),ce=Ee(5),Ge=Ee(6),nt=Ae.range,ct=ze.range,qt=Ce.range,rt=me.range,ot=Re.range,Rt=ce.range,kt=Ge.range,Ct=n(function(Ke){Ke.setUTCDate(1),Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCMonth(Ke.getUTCMonth()+xt)},function(Ke,xt){return xt.getUTCMonth()-Ke.getUTCMonth()+(xt.getUTCFullYear()-Ke.getUTCFullYear())*12},function(Ke){return Ke.getUTCMonth()}),Yt=Ct.range,xr=n(function(Ke){Ke.setUTCMonth(0,1),Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCFullYear(Ke.getUTCFullYear()+xt)},function(Ke,xt){return xt.getUTCFullYear()-Ke.getUTCFullYear()},function(Ke){return Ke.getUTCFullYear()});xr.every=function(Ke){return!isFinite(Ke=Math.floor(Ke))||!(Ke>0)?null:n(function(xt){xt.setUTCFullYear(Math.floor(xt.getUTCFullYear()/Ke)*Ke),xt.setUTCMonth(0,1),xt.setUTCHours(0,0,0,0)},function(xt,bt){xt.setUTCFullYear(xt.getUTCFullYear()+bt*Ke)})};var er=xr.range;e.timeDay=p,e.timeDays=E,e.timeFriday=g,e.timeFridays=X,e.timeHour=x,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=v,e.timeMonday=L,e.timeMondays=F,e.timeMonth=N,e.timeMonths=W,e.timeSaturday=P,e.timeSaturdays=G,e.timeSecond=f,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=H,e.timeTuesday=_,e.timeTuesdays=q,e.timeWednesday=C,e.timeWednesdays=V,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=ae,e.utcDay=ie,e.utcDays=Te,e.utcFriday=ce,e.utcFridays=Rt,e.utcHour=ke,e.utcHours=ge,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=_e,e.utcMinutes=Me,e.utcMonday=ze,e.utcMondays=ct,e.utcMonth=Ct,e.utcMonths=Yt,e.utcSaturday=Ge,e.utcSaturdays=kt,e.utcSecond=f,e.utcSeconds=h,e.utcSunday=Ae,e.utcSundays=nt,e.utcThursday=Re,e.utcThursdays=ot,e.utcTuesday=Ce,e.utcTuesdays=qt,e.utcWednesday=me,e.utcWednesdays=rt,e.utcWeek=Ae,e.utcWeeks=nt,e.utcYear=xr,e.utcYears=er,Object.defineProperty(e,"__esModule",{value:!0})})});var e3=ye((o6,dee)=>{(function(e,t){typeof o6=="object"&&typeof dee!="undefined"?t(o6,gq()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(o6,function(e,t){"use strict";function r(Ne){if(0<=Ne.y&&Ne.y<100){var Ye=new Date(-1,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L);return Ye.setFullYear(Ne.y),Ye}return new Date(Ne.y,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L)}function n(Ne){if(0<=Ne.y&&Ne.y<100){var Ye=new Date(Date.UTC(-1,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L));return Ye.setUTCFullYear(Ne.y),Ye}return new Date(Date.UTC(Ne.y,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L))}function i(Ne,Ye,Ve){return{y:Ne,m:Ye,d:Ve,H:0,M:0,S:0,L:0}}function a(Ne){var Ye=Ne.dateTime,Ve=Ne.date,Xe=Ne.time,ht=Ne.periods,Le=Ne.days,xe=Ne.shortDays,Se=Ne.months,lt=Ne.shortMonths,Gt=h(ht),Vt=d(ht),ar=h(Le),Qr=d(Le),ai=h(xe),jr=d(xe),ri=h(Se),bi=d(Se),nn=h(lt),Wi=d(lt),Ni={a:Si,A:Mi,b:Pi,B:Gi,c:null,d:N,e:N,f:Me,H:W,I:re,j:ae,L:_e,m:ke,M:ge,p:Ki,q:ka,Q:dt,s:Ht,S:ie,u:Te,U:Ee,V:Ae,w:ze,W:Ce,x:null,X:null,y:me,Y:Re,Z:ce,"%":Et},_n={a:jn,A:la,b:Fa,B:Ra,c:null,d:Ge,e:Ge,f:ot,H:nt,I:ct,j:qt,L:rt,m:Rt,M:kt,p:jo,q:oa,Q:dt,s:Ht,S:Ct,u:Yt,U:xr,V:er,w:Ke,W:xt,x:null,X:null,y:bt,Y:Lt,Z:St,"%":Et},$i={a:jt,A:Zt,b:yr,B:Fr,c:Zr,d:M,e:M,f:V,H:P,I:P,j:g,L:q,m:C,M:T,p:ft,q:_,Q:X,s:G,S:F,u:x,U:b,V:p,w:v,W:E,x:Vr,X:gi,y:A,Y:k,Z:L,"%":H};Ni.x=zn(Ve,Ni),Ni.X=zn(Xe,Ni),Ni.c=zn(Ye,Ni),_n.x=zn(Ve,_n),_n.X=zn(Xe,_n),_n.c=zn(Ye,_n);function zn(Sn,Ha){return function(oo){var xn=[],_t=-1,br=0,Hr=Sn.length,ti,zi,Yi;for(oo instanceof Date||(oo=new Date(+oo));++_t53)return null;"w"in xn||(xn.w=1),"Z"in xn?(br=n(i(xn.y,0,1)),Hr=br.getUTCDay(),br=Hr>4||Hr===0?t.utcMonday.ceil(br):t.utcMonday(br),br=t.utcDay.offset(br,(xn.V-1)*7),xn.y=br.getUTCFullYear(),xn.m=br.getUTCMonth(),xn.d=br.getUTCDate()+(xn.w+6)%7):(br=r(i(xn.y,0,1)),Hr=br.getDay(),br=Hr>4||Hr===0?t.timeMonday.ceil(br):t.timeMonday(br),br=t.timeDay.offset(br,(xn.V-1)*7),xn.y=br.getFullYear(),xn.m=br.getMonth(),xn.d=br.getDate()+(xn.w+6)%7)}else("W"in xn||"U"in xn)&&("w"in xn||(xn.w="u"in xn?xn.u%7:"W"in xn?1:0),Hr="Z"in xn?n(i(xn.y,0,1)).getUTCDay():r(i(xn.y,0,1)).getDay(),xn.m=0,xn.d="W"in xn?(xn.w+6)%7+xn.W*7-(Hr+5)%7:xn.w+xn.U*7-(Hr+6)%7);return"Z"in xn?(xn.H+=xn.Z/100|0,xn.M+=xn.Z%100,n(xn)):r(xn)}}function It(Sn,Ha,oo,xn){for(var _t=0,br=Ha.length,Hr=oo.length,ti,zi;_t=Hr)return-1;if(ti=Ha.charCodeAt(_t++),ti===37){if(ti=Ha.charAt(_t++),zi=$i[ti in o?Ha.charAt(_t++):ti],!zi||(xn=zi(Sn,oo,xn))<0)return-1}else if(ti!=oo.charCodeAt(xn++))return-1}return xn}function ft(Sn,Ha,oo){var xn=Gt.exec(Ha.slice(oo));return xn?(Sn.p=Vt[xn[0].toLowerCase()],oo+xn[0].length):-1}function jt(Sn,Ha,oo){var xn=ai.exec(Ha.slice(oo));return xn?(Sn.w=jr[xn[0].toLowerCase()],oo+xn[0].length):-1}function Zt(Sn,Ha,oo){var xn=ar.exec(Ha.slice(oo));return xn?(Sn.w=Qr[xn[0].toLowerCase()],oo+xn[0].length):-1}function yr(Sn,Ha,oo){var xn=nn.exec(Ha.slice(oo));return xn?(Sn.m=Wi[xn[0].toLowerCase()],oo+xn[0].length):-1}function Fr(Sn,Ha,oo){var xn=ri.exec(Ha.slice(oo));return xn?(Sn.m=bi[xn[0].toLowerCase()],oo+xn[0].length):-1}function Zr(Sn,Ha,oo){return It(Sn,Ye,Ha,oo)}function Vr(Sn,Ha,oo){return It(Sn,Ve,Ha,oo)}function gi(Sn,Ha,oo){return It(Sn,Xe,Ha,oo)}function Si(Sn){return xe[Sn.getDay()]}function Mi(Sn){return Le[Sn.getDay()]}function Pi(Sn){return lt[Sn.getMonth()]}function Gi(Sn){return Se[Sn.getMonth()]}function Ki(Sn){return ht[+(Sn.getHours()>=12)]}function ka(Sn){return 1+~~(Sn.getMonth()/3)}function jn(Sn){return xe[Sn.getUTCDay()]}function la(Sn){return Le[Sn.getUTCDay()]}function Fa(Sn){return lt[Sn.getUTCMonth()]}function Ra(Sn){return Se[Sn.getUTCMonth()]}function jo(Sn){return ht[+(Sn.getUTCHours()>=12)]}function oa(Sn){return 1+~~(Sn.getUTCMonth()/3)}return{format:function(Sn){var Ha=zn(Sn+="",Ni);return Ha.toString=function(){return Sn},Ha},parse:function(Sn){var Ha=Wn(Sn+="",!1);return Ha.toString=function(){return Sn},Ha},utcFormat:function(Sn){var Ha=zn(Sn+="",_n);return Ha.toString=function(){return Sn},Ha},utcParse:function(Sn){var Ha=Wn(Sn+="",!0);return Ha.toString=function(){return Sn},Ha}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function c(Ne,Ye,Ve){var Xe=Ne<0?"-":"",ht=(Xe?-Ne:Ne)+"",Le=ht.length;return Xe+(Le68?1900:2e3),Ve+Xe[0].length):-1}function L(Ne,Ye,Ve){var Xe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ye.slice(Ve,Ve+6));return Xe?(Ne.Z=Xe[1]?0:-(Xe[2]+(Xe[3]||"00")),Ve+Xe[0].length):-1}function _(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+1));return Xe?(Ne.q=Xe[0]*3-3,Ve+Xe[0].length):-1}function C(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.m=Xe[0]-1,Ve+Xe[0].length):-1}function M(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.d=+Xe[0],Ve+Xe[0].length):-1}function g(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+3));return Xe?(Ne.m=0,Ne.d=+Xe[0],Ve+Xe[0].length):-1}function P(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.H=+Xe[0],Ve+Xe[0].length):-1}function T(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.M=+Xe[0],Ve+Xe[0].length):-1}function F(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.S=+Xe[0],Ve+Xe[0].length):-1}function q(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+3));return Xe?(Ne.L=+Xe[0],Ve+Xe[0].length):-1}function V(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+6));return Xe?(Ne.L=Math.floor(Xe[0]/1e3),Ve+Xe[0].length):-1}function H(Ne,Ye,Ve){var Xe=l.exec(Ye.slice(Ve,Ve+1));return Xe?Ve+Xe[0].length:-1}function X(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve));return Xe?(Ne.Q=+Xe[0],Ve+Xe[0].length):-1}function G(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve));return Xe?(Ne.s=+Xe[0],Ve+Xe[0].length):-1}function N(Ne,Ye){return c(Ne.getDate(),Ye,2)}function W(Ne,Ye){return c(Ne.getHours(),Ye,2)}function re(Ne,Ye){return c(Ne.getHours()%12||12,Ye,2)}function ae(Ne,Ye){return c(1+t.timeDay.count(t.timeYear(Ne),Ne),Ye,3)}function _e(Ne,Ye){return c(Ne.getMilliseconds(),Ye,3)}function Me(Ne,Ye){return _e(Ne,Ye)+"000"}function ke(Ne,Ye){return c(Ne.getMonth()+1,Ye,2)}function ge(Ne,Ye){return c(Ne.getMinutes(),Ye,2)}function ie(Ne,Ye){return c(Ne.getSeconds(),Ye,2)}function Te(Ne){var Ye=Ne.getDay();return Ye===0?7:Ye}function Ee(Ne,Ye){return c(t.timeSunday.count(t.timeYear(Ne)-1,Ne),Ye,2)}function Ae(Ne,Ye){var Ve=Ne.getDay();return Ne=Ve>=4||Ve===0?t.timeThursday(Ne):t.timeThursday.ceil(Ne),c(t.timeThursday.count(t.timeYear(Ne),Ne)+(t.timeYear(Ne).getDay()===4),Ye,2)}function ze(Ne){return Ne.getDay()}function Ce(Ne,Ye){return c(t.timeMonday.count(t.timeYear(Ne)-1,Ne),Ye,2)}function me(Ne,Ye){return c(Ne.getFullYear()%100,Ye,2)}function Re(Ne,Ye){return c(Ne.getFullYear()%1e4,Ye,4)}function ce(Ne){var Ye=Ne.getTimezoneOffset();return(Ye>0?"-":(Ye*=-1,"+"))+c(Ye/60|0,"0",2)+c(Ye%60,"0",2)}function Ge(Ne,Ye){return c(Ne.getUTCDate(),Ye,2)}function nt(Ne,Ye){return c(Ne.getUTCHours(),Ye,2)}function ct(Ne,Ye){return c(Ne.getUTCHours()%12||12,Ye,2)}function qt(Ne,Ye){return c(1+t.utcDay.count(t.utcYear(Ne),Ne),Ye,3)}function rt(Ne,Ye){return c(Ne.getUTCMilliseconds(),Ye,3)}function ot(Ne,Ye){return rt(Ne,Ye)+"000"}function Rt(Ne,Ye){return c(Ne.getUTCMonth()+1,Ye,2)}function kt(Ne,Ye){return c(Ne.getUTCMinutes(),Ye,2)}function Ct(Ne,Ye){return c(Ne.getUTCSeconds(),Ye,2)}function Yt(Ne){var Ye=Ne.getUTCDay();return Ye===0?7:Ye}function xr(Ne,Ye){return c(t.utcSunday.count(t.utcYear(Ne)-1,Ne),Ye,2)}function er(Ne,Ye){var Ve=Ne.getUTCDay();return Ne=Ve>=4||Ve===0?t.utcThursday(Ne):t.utcThursday.ceil(Ne),c(t.utcThursday.count(t.utcYear(Ne),Ne)+(t.utcYear(Ne).getUTCDay()===4),Ye,2)}function Ke(Ne){return Ne.getUTCDay()}function xt(Ne,Ye){return c(t.utcMonday.count(t.utcYear(Ne)-1,Ne),Ye,2)}function bt(Ne,Ye){return c(Ne.getUTCFullYear()%100,Ye,2)}function Lt(Ne,Ye){return c(Ne.getUTCFullYear()%1e4,Ye,4)}function St(){return"+0000"}function Et(){return"%"}function dt(Ne){return+Ne}function Ht(Ne){return Math.floor(+Ne/1e3)}var $t;fr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function fr(Ne){return $t=a(Ne),e.timeFormat=$t.format,e.timeParse=$t.parse,e.utcFormat=$t.utcFormat,e.utcParse=$t.utcParse,$t}var _r="%Y-%m-%dT%H:%M:%S.%LZ";function Br(Ne){return Ne.toISOString()}var Or=Date.prototype.toISOString?Br:e.utcFormat(_r);function Nr(Ne){var Ye=new Date(Ne);return isNaN(Ye)?null:Ye}var ut=+new Date("2000-01-01T00:00:00.000Z")?Nr:e.utcParse(_r);e.isoFormat=Or,e.isoParse=ut,e.timeFormatDefaultLocale=fr,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var mq=ye((s6,vee)=>{(function(e,t){typeof s6=="object"&&typeof vee!="undefined"?t(s6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(s6,function(e){"use strict";function t(C){return Math.abs(C=Math.round(C))>=1e21?C.toLocaleString("en").replace(/,/g,""):C.toString(10)}function r(C,M){if((g=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var g,P=C.slice(0,g);return[P.length>1?P[0]+P.slice(2):P,+C.slice(g+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(g,P){for(var T=g.length,F=[],q=0,V=C[0],H=0;T>0&&V>0&&(H+V+1>P&&(V=Math.max(1,P-H)),F.push(g.substring(T-=V,T+V)),!((H+=V+1)>P));)V=C[q=(q+1)%C.length];return F.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(g){return C[+g]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(C){if(!(M=o.exec(C)))throw new Error("invalid format: "+C);var M;return new l({fill:M[1],align:M[2],sign:M[3],symbol:M[4],zero:M[5],width:M[6],comma:M[7],precision:M[8]&&M[8].slice(1),trim:M[9],type:M[10]})}s.prototype=l.prototype;function l(C){this.fill=C.fill===void 0?" ":C.fill+"",this.align=C.align===void 0?">":C.align+"",this.sign=C.sign===void 0?"-":C.sign+"",this.symbol=C.symbol===void 0?"":C.symbol+"",this.zero=!!C.zero,this.width=C.width===void 0?void 0:+C.width,this.comma=!!C.comma,this.precision=C.precision===void 0?void 0:+C.precision,this.trim=!!C.trim,this.type=C.type===void 0?"":C.type+""}l.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(C){e:for(var M=C.length,g=1,P=-1,T;g0&&(P=0);break}return P>0?C.slice(0,P)+C.slice(T+1):C}var c;function f(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1],F=T-(c=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,q=P.length;return F===q?P:F>q?P+new Array(F-q+1).join("0"):F>0?P.slice(0,F)+"."+P.slice(F):"0."+new Array(1-F).join("0")+r(C,Math.max(0,M+F-1))[0]}function h(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1];return T<0?"0."+new Array(-T).join("0")+P:P.length>T+1?P.slice(0,T+1)+"."+P.slice(T+1):P+new Array(T-P.length+2).join("0")}var d={"%":function(C,M){return(C*100).toFixed(M)},b:function(C){return Math.round(C).toString(2)},c:function(C){return C+""},d:t,e:function(C,M){return C.toExponential(M)},f:function(C,M){return C.toFixed(M)},g:function(C,M){return C.toPrecision(M)},o:function(C){return Math.round(C).toString(8)},p:function(C,M){return h(C*100,M)},r:h,s:f,X:function(C){return Math.round(C).toString(16).toUpperCase()},x:function(C){return Math.round(C).toString(16)}};function v(C){return C}var x=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function p(C){var M=C.grouping===void 0||C.thousands===void 0?v:i(x.call(C.grouping,Number),C.thousands+""),g=C.currency===void 0?"":C.currency[0]+"",P=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",F=C.numerals===void 0?v:a(x.call(C.numerals,String)),q=C.percent===void 0?"%":C.percent+"",V=C.minus===void 0?"-":C.minus+"",H=C.nan===void 0?"NaN":C.nan+"";function X(N){N=s(N);var W=N.fill,re=N.align,ae=N.sign,_e=N.symbol,Me=N.zero,ke=N.width,ge=N.comma,ie=N.precision,Te=N.trim,Ee=N.type;Ee==="n"?(ge=!0,Ee="g"):d[Ee]||(ie===void 0&&(ie=12),Te=!0,Ee="g"),(Me||W==="0"&&re==="=")&&(Me=!0,W="0",re="=");var Ae=_e==="$"?g:_e==="#"&&/[boxX]/.test(Ee)?"0"+Ee.toLowerCase():"",ze=_e==="$"?P:/[%p]/.test(Ee)?q:"",Ce=d[Ee],me=/[defgprs%]/.test(Ee);ie=ie===void 0?6:/[gprs]/.test(Ee)?Math.max(1,Math.min(21,ie)):Math.max(0,Math.min(20,ie));function Re(ce){var Ge=Ae,nt=ze,ct,qt,rt;if(Ee==="c")nt=Ce(ce)+nt,ce="";else{ce=+ce;var ot=ce<0||1/ce<0;if(ce=isNaN(ce)?H:Ce(Math.abs(ce),ie),Te&&(ce=u(ce)),ot&&+ce==0&&ae!=="+"&&(ot=!1),Ge=(ot?ae==="("?ae:V:ae==="-"||ae==="("?"":ae)+Ge,nt=(Ee==="s"?b[8+c/3]:"")+nt+(ot&&ae==="("?")":""),me){for(ct=-1,qt=ce.length;++ctrt||rt>57){nt=(rt===46?T+ce.slice(ct+1):ce.slice(ct))+nt,ce=ce.slice(0,ct);break}}}ge&&!Me&&(ce=M(ce,1/0));var Rt=Ge.length+ce.length+nt.length,kt=Rt>1)+Ge+ce+nt+kt.slice(Rt);break;default:ce=kt+Ge+ce+nt;break}return F(ce)}return Re.toString=function(){return N+""},Re}function G(N,W){var re=X((N=s(N),N.type="f",N)),ae=Math.max(-8,Math.min(8,Math.floor(n(W)/3)))*3,_e=Math.pow(10,-ae),Me=b[8+ae/3];return function(ke){return re(_e*ke)+Me}}return{format:X,formatPrefix:G}}var E;k({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function k(C){return E=p(C),e.format=E.format,e.formatPrefix=E.formatPrefix,E}function A(C){return Math.max(0,-n(Math.abs(C)))}function L(C,M){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(M)/3)))*3-n(Math.abs(C)))}function _(C,M){return C=Math.abs(C),M=Math.abs(M)-C,Math.max(0,n(M)-n(C))+1}e.FormatSpecifier=l,e.formatDefaultLocale=k,e.formatLocale=p,e.formatSpecifier=s,e.precisionFixed=A,e.precisionPrefix=L,e.precisionRound=_,Object.defineProperty(e,"__esModule",{value:!0})})});var gee=ye((Yer,pee)=>{"use strict";pee.exports=function(e){for(var t=e.length,r,n=0;n13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var uo=ye((Ker,mee)=>{"use strict";var Get=gee();mee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&Get(r))return!1}else if(t!=="number")return!1;return e-e<1}});var es=ye((Jer,yee)=>{"use strict";yee.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var yq=ye((l6,_ee)=>{(function(e,t){typeof l6=="object"&&typeof _ee!="undefined"?t(l6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(l6,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],c+=t[(s[l]&3)<<4|s[l+1]>>4],c+=t[(s[l+1]&15)<<2|s[l+2]>>6],c+=t[s[l+2]&63];return u%3===2?c=c.substring(0,c.length-1)+"=":u%3===1&&(c=c.substring(0,c.length-2)+"=="),c},a=function(o){var s=o.length*.75,l=o.length,u,c=0,f,h,d,v;o[o.length-1]==="="&&(s--,o[o.length-2]==="="&&s--);var x=new ArrayBuffer(s),b=new Uint8Array(x);for(u=0;u>4,b[c++]=(h&15)<<4|d>>2,b[c++]=(d&3)<<6|v&63;return x};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var gy=ye(($er,xee)=>{"use strict";xee.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var vv=ye(mg=>{"use strict";var jet=yq().decode,Wet=gy(),_q=Array.isArray,Zet=ArrayBuffer,Xet=DataView;function bee(e){return Zet.isView(e)&&!(e instanceof Xet)}mg.isTypedArray=bee;function u6(e){return _q(e)||bee(e)}mg.isArrayOrTypedArray=u6;function Yet(e){return!u6(e[0])}mg.isArray1D=Yet;mg.ensureArray=function(e,t){return _q(e)||(e=[]),e.length=t,e};var Md={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Md.uint8c=Md.u1c;Md.uint8=Md.u1;Md.int8=Md.i1;Md.uint16=Md.u2;Md.int16=Md.i2;Md.uint32=Md.u4;Md.int32=Md.i4;Md.float32=Md.f4;Md.float64=Md.f8;function xq(e){return e.constructor===ArrayBuffer}mg.isArrayBuffer=xq;mg.decodeTypedArraySpec=function(e){var t=[],r=Ket(e),n=r.dtype,i=Md[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;xq(o)||(o=jet(o));var s=r.shape===void 0?[o.byteLength/a]:(""+r.shape).split(",");s.reverse();var l=s.length,u,c,f=+s[0],h=a*f,d=0;if(l===1)t=new i(o);else if(l===2)for(u=+s[1],c=0;c{"use strict";var Tee=uo(),wq=vv().isArrayOrTypedArray;Eee.exports=function(t,r){if(Tee(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s{"use strict";var t3=kS(),ttt=/^\w*$/,rtt=0,kee=1,c6=2,Cee=3,ob=4;Lee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,l={};r&&r.length?(s=t3(t,r),o=s.get()):o=t,r=r||"";var u={};if(o)for(a=0;a2)return l[d]=l[d]|c6,f.set(h,null);if(c){for(a=d;a{"use strict";var itt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,ntt=/^[^\.\[\]]+$/;Iee.exports=function(e,t){for(;t;){var r=e.match(itt);if(r)e=r[1];else if(e.match(ntt))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var f6=ye((itr,Dee)=>{"use strict";var att=uo();Dee.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return att(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var qee=ye((ntr,Fee)=>{"use strict";var zee=vv().isArrayOrTypedArray,CS=gy();Fee.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(zee(i)&&zee(a)&&CS(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function ott(e,t){var r=e%t;return r<0?r+t:r}function stt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Oee.exports={mod:ott,modHalf:stt}});var id=ye((otr,h6)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(me,Re){if(me=me||"",Re=Re||{},me instanceof l)return me;if(!(this instanceof l))return new l(me,Re);var ce=u(me);this._originalInput=me,this._r=ce.r,this._g=ce.g,this._b=ce.b,this._a=ce.a,this._roundA=i(100*this._a)/100,this._format=Re.format||ce.format,this._gradientType=Re.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=ce.ok,this._tc_id=n++}l.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var me=this.toRgb();return(me.r*299+me.g*587+me.b*114)/1e3},getLuminance:function(){var me=this.toRgb(),Re,ce,Ge,nt,ct,qt;return Re=me.r/255,ce=me.g/255,Ge=me.b/255,Re<=.03928?nt=Re/12.92:nt=e.pow((Re+.055)/1.055,2.4),ce<=.03928?ct=ce/12.92:ct=e.pow((ce+.055)/1.055,2.4),Ge<=.03928?qt=Ge/12.92:qt=e.pow((Ge+.055)/1.055,2.4),.2126*nt+.7152*ct+.0722*qt},setAlpha:function(me){return this._a=N(me),this._roundA=i(100*this._a)/100,this},toHsv:function(){var me=d(this._r,this._g,this._b);return{h:me.h*360,s:me.s,v:me.v,a:this._a}},toHsvString:function(){var me=d(this._r,this._g,this._b),Re=i(me.h*360),ce=i(me.s*100),Ge=i(me.v*100);return this._a==1?"hsv("+Re+", "+ce+"%, "+Ge+"%)":"hsva("+Re+", "+ce+"%, "+Ge+"%, "+this._roundA+")"},toHsl:function(){var me=f(this._r,this._g,this._b);return{h:me.h*360,s:me.s,l:me.l,a:this._a}},toHslString:function(){var me=f(this._r,this._g,this._b),Re=i(me.h*360),ce=i(me.s*100),Ge=i(me.l*100);return this._a==1?"hsl("+Re+", "+ce+"%, "+Ge+"%)":"hsla("+Re+", "+ce+"%, "+Ge+"%, "+this._roundA+")"},toHex:function(me){return x(this._r,this._g,this._b,me)},toHexString:function(me){return"#"+this.toHex(me)},toHex8:function(me){return b(this._r,this._g,this._b,this._a,me)},toHex8String:function(me){return"#"+this.toHex8(me)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(W(this._r,255)*100)+"%",g:i(W(this._g,255)*100)+"%",b:i(W(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%)":"rgba("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:X[x(this._r,this._g,this._b,!0)]||!1},toFilter:function(me){var Re="#"+p(this._r,this._g,this._b,this._a),ce=Re,Ge=this._gradientType?"GradientType = 1, ":"";if(me){var nt=l(me);ce="#"+p(nt._r,nt._g,nt._b,nt._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ge+"startColorstr="+Re+",endColorstr="+ce+")"},toString:function(me){var Re=!!me;me=me||this._format;var ce=!1,Ge=this._a<1&&this._a>=0,nt=!Re&&Ge&&(me==="hex"||me==="hex6"||me==="hex3"||me==="hex4"||me==="hex8"||me==="name");return nt?me==="name"&&this._a===0?this.toName():this.toRgbString():(me==="rgb"&&(ce=this.toRgbString()),me==="prgb"&&(ce=this.toPercentageRgbString()),(me==="hex"||me==="hex6")&&(ce=this.toHexString()),me==="hex3"&&(ce=this.toHexString(!0)),me==="hex4"&&(ce=this.toHex8String(!0)),me==="hex8"&&(ce=this.toHex8String()),me==="name"&&(ce=this.toName()),me==="hsl"&&(ce=this.toHslString()),me==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(me,Re){var ce=me.apply(null,[this].concat([].slice.call(Re)));return this._r=ce._r,this._g=ce._g,this._b=ce._b,this.setAlpha(ce._a),this},lighten:function(){return this._applyModification(L,arguments)},brighten:function(){return this._applyModification(_,arguments)},darken:function(){return this._applyModification(C,arguments)},desaturate:function(){return this._applyModification(E,arguments)},saturate:function(){return this._applyModification(k,arguments)},greyscale:function(){return this._applyModification(A,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(me,Re){return me.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(q,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(V,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},l.fromRatio=function(me,Re){if(typeof me=="object"){var ce={};for(var Ge in me)me.hasOwnProperty(Ge)&&(Ge==="a"?ce[Ge]=me[Ge]:ce[Ge]=ge(me[Ge]));me=ce}return l(me,Re)};function u(me){var Re={r:0,g:0,b:0},ce=1,Ge=null,nt=null,ct=null,qt=!1,rt=!1;return typeof me=="string"&&(me=ze(me)),typeof me=="object"&&(Ae(me.r)&&Ae(me.g)&&Ae(me.b)?(Re=c(me.r,me.g,me.b),qt=!0,rt=String(me.r).substr(-1)==="%"?"prgb":"rgb"):Ae(me.h)&&Ae(me.s)&&Ae(me.v)?(Ge=ge(me.s),nt=ge(me.v),Re=v(me.h,Ge,nt),qt=!0,rt="hsv"):Ae(me.h)&&Ae(me.s)&&Ae(me.l)&&(Ge=ge(me.s),ct=ge(me.l),Re=h(me.h,Ge,ct),qt=!0,rt="hsl"),me.hasOwnProperty("a")&&(ce=me.a)),ce=N(ce),{ok:qt,format:me.format||rt,r:a(255,o(Re.r,0)),g:a(255,o(Re.g,0)),b:a(255,o(Re.b,0)),a:ce}}function c(me,Re,ce){return{r:W(me,255)*255,g:W(Re,255)*255,b:W(ce,255)*255}}function f(me,Re,ce){me=W(me,255),Re=W(Re,255),ce=W(ce,255);var Ge=o(me,Re,ce),nt=a(me,Re,ce),ct,qt,rt=(Ge+nt)/2;if(Ge==nt)ct=qt=0;else{var ot=Ge-nt;switch(qt=rt>.5?ot/(2-Ge-nt):ot/(Ge+nt),Ge){case me:ct=(Re-ce)/ot+(Re1&&(Ct-=1),Ct<1/6?Rt+(kt-Rt)*6*Ct:Ct<1/2?kt:Ct<2/3?Rt+(kt-Rt)*(2/3-Ct)*6:Rt}if(Re===0)Ge=nt=ct=ce;else{var rt=ce<.5?ce*(1+Re):ce+Re-ce*Re,ot=2*ce-rt;Ge=qt(ot,rt,me+1/3),nt=qt(ot,rt,me),ct=qt(ot,rt,me-1/3)}return{r:Ge*255,g:nt*255,b:ct*255}}function d(me,Re,ce){me=W(me,255),Re=W(Re,255),ce=W(ce,255);var Ge=o(me,Re,ce),nt=a(me,Re,ce),ct,qt,rt=Ge,ot=Ge-nt;if(qt=Ge===0?0:ot/Ge,Ge==nt)ct=0;else{switch(Ge){case me:ct=(Re-ce)/ot+(Re>1)+720)%360;--Re;)Ge.h=(Ge.h+nt)%360,ct.push(l(Ge));return ct}function V(me,Re){Re=Re||6;for(var ce=l(me).toHsv(),Ge=ce.h,nt=ce.s,ct=ce.v,qt=[],rt=1/Re;Re--;)qt.push(l({h:Ge,s:nt,v:ct})),ct=(ct+rt)%1;return qt}l.mix=function(me,Re,ce){ce=ce===0?0:ce||50;var Ge=l(me).toRgb(),nt=l(Re).toRgb(),ct=ce/100,qt={r:(nt.r-Ge.r)*ct+Ge.r,g:(nt.g-Ge.g)*ct+Ge.g,b:(nt.b-Ge.b)*ct+Ge.b,a:(nt.a-Ge.a)*ct+Ge.a};return l(qt)},l.readability=function(me,Re){var ce=l(me),Ge=l(Re);return(e.max(ce.getLuminance(),Ge.getLuminance())+.05)/(e.min(ce.getLuminance(),Ge.getLuminance())+.05)},l.isReadable=function(me,Re,ce){var Ge=l.readability(me,Re),nt,ct;switch(ct=!1,nt=Ce(ce),nt.level+nt.size){case"AAsmall":case"AAAlarge":ct=Ge>=4.5;break;case"AAlarge":ct=Ge>=3;break;case"AAAsmall":ct=Ge>=7;break}return ct},l.mostReadable=function(me,Re,ce){var Ge=null,nt=0,ct,qt,rt,ot;ce=ce||{},qt=ce.includeFallbackColors,rt=ce.level,ot=ce.size;for(var Rt=0;Rtnt&&(nt=ct,Ge=l(Re[Rt]));return l.isReadable(me,Ge,{level:rt,size:ot})||!qt?Ge:(ce.includeFallbackColors=!1,l.mostReadable(me,["#fff","#000"],ce))};var H=l.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},X=l.hexNames=G(H);function G(me){var Re={};for(var ce in me)me.hasOwnProperty(ce)&&(Re[me[ce]]=ce);return Re}function N(me){return me=parseFloat(me),(isNaN(me)||me<0||me>1)&&(me=1),me}function W(me,Re){_e(me)&&(me="100%");var ce=Me(me);return me=a(Re,o(0,parseFloat(me))),ce&&(me=parseInt(me*Re,10)/100),e.abs(me-Re)<1e-6?1:me%Re/parseFloat(Re)}function re(me){return a(1,o(0,me))}function ae(me){return parseInt(me,16)}function _e(me){return typeof me=="string"&&me.indexOf(".")!=-1&&parseFloat(me)===1}function Me(me){return typeof me=="string"&&me.indexOf("%")!=-1}function ke(me){return me.length==1?"0"+me:""+me}function ge(me){return me<=1&&(me=me*100+"%"),me}function ie(me){return e.round(parseFloat(me)*255).toString(16)}function Te(me){return ae(me)/255}var Ee=function(){var me="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+Re+")|(?:"+me+")",Ge="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?",nt="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?";return{CSS_UNIT:new RegExp(ce),rgb:new RegExp("rgb"+Ge),rgba:new RegExp("rgba"+nt),hsl:new RegExp("hsl"+Ge),hsla:new RegExp("hsla"+nt),hsv:new RegExp("hsv"+Ge),hsva:new RegExp("hsva"+nt),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Ae(me){return!!Ee.CSS_UNIT.exec(me)}function ze(me){me=me.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(H[me])me=H[me],Re=!0;else if(me=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Ee.rgb.exec(me))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Ee.rgba.exec(me))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Ee.hsl.exec(me))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Ee.hsla.exec(me))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Ee.hsv.exec(me))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Ee.hsva.exec(me))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Ee.hex8.exec(me))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),a:Te(ce[4]),format:Re?"name":"hex8"}:(ce=Ee.hex6.exec(me))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),format:Re?"name":"hex"}:(ce=Ee.hex4.exec(me))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),a:Te(ce[4]+""+ce[4]),format:Re?"name":"hex8"}:(ce=Ee.hex3.exec(me))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),format:Re?"name":"hex"}:!1}function Ce(me){var Re,ce;return me=me||{level:"AA",size:"small"},Re=(me.level||"AA").toUpperCase(),ce=(me.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:Re,size:ce}}typeof h6!="undefined"&&h6.exports?h6.exports=l:window.tinycolor=l})(Math)});var no=ye(IS=>{"use strict";var Bee=gy(),LS=Array.isArray;function ltt(e,t){var r,n;for(r=0;r{"use strict";Nee.exports=function(e){var t=e.variantValues,r=e.editType,n=e.colorEditType;n===void 0&&(n=r);var i={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(i.valType="enumerated",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:n},weight:i,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(a.size.dflt="auto"),e.autoColor&&(a.color.dflt="auto"),e.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,e.noFontVariant||(a.variant.arrayOk=!0),e.noFontTextcase||(a.textcase.arrayOk=!0),e.noFontLineposition||(a.lineposition.arrayOk=!0),e.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}});var RS=ye((utr,Uee)=>{"use strict";Uee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var N1=ye((ctr,Gee)=>{"use strict";var Vee=RS(),Hee=Su(),Tq=Hee({editType:"none"});Tq.family.dflt=Vee.HOVERFONT;Tq.size.dflt=Vee.HOVERFONTSIZE;Gee.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Tq,grouptitlefont:Hee({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i3=ye((ftr,jee)=>{"use strict";var utt=Su(),d6=N1().hoverlabel,v6=no().extendFlat;jee.exports={hoverlabel:{bgcolor:v6({},d6.bgcolor,{arrayOk:!0}),bordercolor:v6({},d6.bordercolor,{arrayOk:!0}),font:utt({arrayOk:!0,editType:"none"}),align:v6({},d6.align,{arrayOk:!0}),namelength:v6({},d6.namelength,{arrayOk:!0}),editType:"none"}}});var vl=ye((htr,Wee)=>{"use strict";var ctt=Su(),ftt=i3();Wee.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:ctt({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:ftt.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var sb=ye((dtr,Yee)=>{"use strict";var htt=id(),p6={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Zee=p6.RdBu;function dtt(e,t){if(t||(t=Zee),!e)return t;function r(){try{e=p6[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),Xee(e)?e:t}function Xee(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r{"use strict";lb.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];lb.defaultLine="#444";lb.lightLine="#eee";lb.background="#fff";lb.borderLine="#BEC8D9";lb.lightFraction=100*10/11});var va=ye((ptr,Kee)=>{"use strict";var xp=id(),ptt=uo(),gtt=vv().isTypedArray,nd=Kee.exports={},g6=dh();nd.defaults=g6.defaults;var mtt=nd.defaultLine=g6.defaultLine;nd.lightLine=g6.lightLine;var Sq=nd.background=g6.background;nd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};nd.rgb=function(e){return nd.tinyRGB(xp(e))};nd.opacity=function(e){return e?xp(e).getAlpha():0};nd.addOpacity=function(e,t){var r=xp(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};nd.combine=function(e,t){var r=xp(e).toRgb();if(r.a===1)return xp(e).toRgbString();var n=xp(t||Sq).toRgb(),i=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},a={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return xp(a).toRgbString()};nd.interpolate=function(e,t,r){var n=xp(e).toRgb(),i=xp(t).toRgb(),a={r:r*n.r+(1-r)*i.r,g:r*n.g+(1-r)*i.g,b:r*n.b+(1-r)*i.b};return xp(a).toRgbString()};nd.contrast=function(e,t,r){var n=xp(e);n.getAlpha()!==1&&(n=xp(nd.combine(e,Sq)));var i=n.isDark()?t?n.lighten(t):Sq:r?n.darken(r):mtt;return i.toString()};nd.stroke=function(e,t){var r=xp(t);e.style({stroke:nd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};nd.fill=function(e,t){var r=xp(t);e.style({fill:nd.tinyRGB(r),"fill-opacity":r.getAlpha()})};nd.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r=0)))return e;if(a===3)n[a]>1&&(n[a]=1);else if(n[a]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return i?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var U1=ye((gtr,Jee)=>{"use strict";Jee.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n3=ye($ee=>{"use strict";$ee.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var rte=ye(bp=>{"use strict";var Mq=uo(),Qee=id(),ete=no().extendFlat,ytt=vl(),_tt=sb(),xtt=va(),btt=U1().DESELECTDIM,a3=kS(),tte=n3().counter,wtt=r3().modHalf,dm=vv().isArrayOrTypedArray,V1=vv().isTypedArraySpec,H1=vv().decodeTypedArraySpec;bp.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dm(e)?e:V1(e)?H1(e):r)}},enumerated:{coerceFunction:function(e,t,r,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,n=0;nn.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}V1(e)&&(e=H1(e)),e%1||!Mq(e)||n.min!==void 0&&en.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,n){if(typeof e!="string"){var i=typeof e=="number";n.strict===!0||!i?t.set(r):t.set(String(e))}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),Qee(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return Qee(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(_tt.get(e,r))}},angle:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),e==="auto"?t.set("auto"):Mq(e)?t.set(wtt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||tte(r);if(typeof e=="string"&&i.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!tte(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a{"use strict";var ite={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},nte={};function ate(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),ate(n,t[r]))}}ate(ite,nte);ote.exports={configAttributes:ite,dfltConfig:nte}});var kq=ye((xtr,ste)=>{"use strict";var Eq=xa(),Ttt=uo(),DS=[];ste.exports=function(e,t){if(DS.indexOf(e)!==-1)return;DS.push(e);var r=1e3;Ttt(t)?r=t:t==="long"&&(r=3e3);var n=Eq.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(DS);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=DS.indexOf(s);l!==-1&&DS.splice(l,1),Eq.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=Eq.select(this);s.append("button").classed("notifier-close",!0).html("×").on("click",function(){s.transition().call(a)});for(var l=s.append("p"),u=o.split(//g),c=0;c{"use strict";var o3=ub().dfltConfig,Cq=kq(),Lq=lte.exports={};Lq.log=function(){var e;if(o3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};Lq.warn=function(){var e;if(o3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};Lq.error=function(){var e;if(o3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var y6=ye((wtr,ute)=>{"use strict";ute.exports=function(){}});var Pq=ye((Ttr,cte)=>{"use strict";cte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{fte.exports=Att;function Att(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var vte=ye((Str,dte)=>{dte.exports=Stt;function Stt(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var gte=ye((Mtr,pte)=>{pte.exports=Mtt;function Mtt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Iq=ye((Etr,mte)=>{mte.exports=Ett;function Ett(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var _te=ye((ktr,yte)=>{yte.exports=ktt;function ktt(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var bte=ye((Ctr,xte)=>{xte.exports=Ctt;function Ctt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],x=t[13],b=t[14],p=t[15],E=r*s-n*o,k=r*l-i*o,A=r*u-a*o,L=n*l-i*s,_=n*u-a*s,C=i*u-a*l,M=c*x-f*v,g=c*b-h*v,P=c*p-d*v,T=f*b-h*x,F=f*p-d*x,q=h*p-d*b,V=E*q-k*F+A*T+L*P-_*g+C*M;return V?(V=1/V,e[0]=(s*q-l*F+u*T)*V,e[1]=(i*F-n*q-a*T)*V,e[2]=(x*C-b*_+p*L)*V,e[3]=(h*_-f*C-d*L)*V,e[4]=(l*P-o*q-u*g)*V,e[5]=(r*q-i*P+a*g)*V,e[6]=(b*A-v*C-p*k)*V,e[7]=(c*C-h*A+d*k)*V,e[8]=(o*F-s*P+u*M)*V,e[9]=(n*P-r*F-a*M)*V,e[10]=(v*_-x*A+p*E)*V,e[11]=(f*A-c*_-d*E)*V,e[12]=(s*g-o*T-l*M)*V,e[13]=(r*T-n*g+i*M)*V,e[14]=(x*k-v*L-b*E)*V,e[15]=(c*L-f*k+h*E)*V,e):null}});var Tte=ye((Ltr,wte)=>{wte.exports=Ltt;function Ltt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],x=t[13],b=t[14],p=t[15];return e[0]=s*(h*p-d*b)-f*(l*p-u*b)+x*(l*d-u*h),e[1]=-(n*(h*p-d*b)-f*(i*p-a*b)+x*(i*d-a*h)),e[2]=n*(l*p-u*b)-s*(i*p-a*b)+x*(i*u-a*l),e[3]=-(n*(l*d-u*h)-s*(i*d-a*h)+f*(i*u-a*l)),e[4]=-(o*(h*p-d*b)-c*(l*p-u*b)+v*(l*d-u*h)),e[5]=r*(h*p-d*b)-c*(i*p-a*b)+v*(i*d-a*h),e[6]=-(r*(l*p-u*b)-o*(i*p-a*b)+v*(i*u-a*l)),e[7]=r*(l*d-u*h)-o*(i*d-a*h)+c*(i*u-a*l),e[8]=o*(f*p-d*x)-c*(s*p-u*x)+v*(s*d-u*f),e[9]=-(r*(f*p-d*x)-c*(n*p-a*x)+v*(n*d-a*f)),e[10]=r*(s*p-u*x)-o*(n*p-a*x)+v*(n*u-a*s),e[11]=-(r*(s*d-u*f)-o*(n*d-a*f)+c*(n*u-a*s)),e[12]=-(o*(f*b-h*x)-c*(s*b-l*x)+v*(s*h-l*f)),e[13]=r*(f*b-h*x)-c*(n*b-i*x)+v*(n*h-i*f),e[14]=-(r*(s*b-l*x)-o*(n*b-i*x)+v*(n*l-i*s)),e[15]=r*(s*h-l*f)-o*(n*h-i*f)+c*(n*l-i*s),e}});var Ste=ye((Ptr,Ate)=>{Ate.exports=Ptt;function Ptt(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],c=e[9],f=e[10],h=e[11],d=e[12],v=e[13],x=e[14],b=e[15],p=t*o-r*a,E=t*s-n*a,k=t*l-i*a,A=r*s-n*o,L=r*l-i*o,_=n*l-i*s,C=u*v-c*d,M=u*x-f*d,g=u*b-h*d,P=c*x-f*v,T=c*b-h*v,F=f*b-h*x;return p*F-E*T+k*P+A*g-L*M+_*C}});var Ete=ye((Itr,Mte)=>{Mte.exports=Itt;function Itt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],h=t[9],d=t[10],v=t[11],x=t[12],b=t[13],p=t[14],E=t[15],k=r[0],A=r[1],L=r[2],_=r[3];return e[0]=k*n+A*s+L*f+_*x,e[1]=k*i+A*l+L*h+_*b,e[2]=k*a+A*u+L*d+_*p,e[3]=k*o+A*c+L*v+_*E,k=r[4],A=r[5],L=r[6],_=r[7],e[4]=k*n+A*s+L*f+_*x,e[5]=k*i+A*l+L*h+_*b,e[6]=k*a+A*u+L*d+_*p,e[7]=k*o+A*c+L*v+_*E,k=r[8],A=r[9],L=r[10],_=r[11],e[8]=k*n+A*s+L*f+_*x,e[9]=k*i+A*l+L*h+_*b,e[10]=k*a+A*u+L*d+_*p,e[11]=k*o+A*c+L*v+_*E,k=r[12],A=r[13],L=r[14],_=r[15],e[12]=k*n+A*s+L*f+_*x,e[13]=k*i+A*l+L*h+_*b,e[14]=k*a+A*u+L*d+_*p,e[15]=k*o+A*c+L*v+_*E,e}});var Cte=ye((Rtr,kte)=>{kte.exports=Rtt;function Rtt(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,l,u,c,f,h,d,v,x,b,p;return t===e?(e[12]=t[0]*n+t[4]*i+t[8]*a+t[12],e[13]=t[1]*n+t[5]*i+t[9]*a+t[13],e[14]=t[2]*n+t[6]*i+t[10]*a+t[14],e[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],l=t[2],u=t[3],c=t[4],f=t[5],h=t[6],d=t[7],v=t[8],x=t[9],b=t[10],p=t[11],e[0]=o,e[1]=s,e[2]=l,e[3]=u,e[4]=c,e[5]=f,e[6]=h,e[7]=d,e[8]=v,e[9]=x,e[10]=b,e[11]=p,e[12]=o*n+c*i+v*a+t[12],e[13]=s*n+f*i+x*a+t[13],e[14]=l*n+h*i+b*a+t[14],e[15]=u*n+d*i+p*a+t[15]),e}});var Pte=ye((Dtr,Lte)=>{Lte.exports=Dtt;function Dtt(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Rte=ye((ztr,Ite)=>{Ite.exports=ztt;function ztt(e,t,r,n){var i=n[0],a=n[1],o=n[2],s=Math.sqrt(i*i+a*a+o*o),l,u,c,f,h,d,v,x,b,p,E,k,A,L,_,C,M,g,P,T,F,q,V,H;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,l=Math.sin(r),u=Math.cos(r),c=1-u,f=t[0],h=t[1],d=t[2],v=t[3],x=t[4],b=t[5],p=t[6],E=t[7],k=t[8],A=t[9],L=t[10],_=t[11],C=i*i*c+u,M=a*i*c+o*l,g=o*i*c-a*l,P=i*a*c-o*l,T=a*a*c+u,F=o*a*c+i*l,q=i*o*c+a*l,V=a*o*c-i*l,H=o*o*c+u,e[0]=f*C+x*M+k*g,e[1]=h*C+b*M+A*g,e[2]=d*C+p*M+L*g,e[3]=v*C+E*M+_*g,e[4]=f*P+x*T+k*F,e[5]=h*P+b*T+A*F,e[6]=d*P+p*T+L*F,e[7]=v*P+E*T+_*F,e[8]=f*q+x*V+k*H,e[9]=h*q+b*V+A*H,e[10]=d*q+p*V+L*H,e[11]=v*q+E*V+_*H,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var zte=ye((Ftr,Dte)=>{Dte.exports=Ftt;function Ftt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+h*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=h*i-l*n,e}});var qte=ye((qtr,Fte)=>{Fte.exports=qtt;function qtt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-c*n,e[2]=s*i-f*n,e[3]=l*i-h*n,e[8]=a*n+u*i,e[9]=o*n+c*i,e[10]=s*n+f*i,e[11]=l*n+h*i,e}});var Bte=ye((Otr,Ote)=>{Ote.exports=Ott;function Ott(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+h*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=h*i-l*n,e}});var Ute=ye((Btr,Nte)=>{Nte.exports=Btt;function Btt(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var Hte=ye((Ntr,Vte)=>{Vte.exports=Ntt;function Ntt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,l=i+i,u=a+a,c=n*s,f=n*l,h=n*u,d=i*l,v=i*u,x=a*u,b=o*s,p=o*l,E=o*u;return e[0]=1-(d+x),e[1]=f+E,e[2]=h-p,e[3]=0,e[4]=f-E,e[5]=1-(c+x),e[6]=v+b,e[7]=0,e[8]=h+p,e[9]=v-b,e[10]=1-(c+d),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var jte=ye((Utr,Gte)=>{Gte.exports=Utt;function Utt(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Zte=ye((Vtr,Wte)=>{Wte.exports=Vtt;function Vtt(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Yte=ye((Htr,Xte)=>{Xte.exports=Htt;function Htt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Jte=ye((Gtr,Kte)=>{Kte.exports=Gtt;function Gtt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Qte=ye((jtr,$te)=>{$te.exports=jtt;function jtt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Rq=ye((Wtr,ere)=>{ere.exports=Wtt;function Wtt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,l=i+i,u=r*o,c=n*o,f=n*s,h=i*o,d=i*s,v=i*l,x=a*o,b=a*s,p=a*l;return e[0]=1-f-v,e[1]=c+p,e[2]=h-b,e[3]=0,e[4]=c-p,e[5]=1-u-v,e[6]=d+x,e[7]=0,e[8]=h+b,e[9]=d-x,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var rre=ye((Ztr,tre)=>{tre.exports=Ztt;function Ztt(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}});var nre=ye((Xtr,ire)=>{ire.exports=Xtt;function Xtt(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var ore=ye((Ytr,are)=>{are.exports=Ytt;function Ytt(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-s)*l*.5),e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var lre=ye((Ktr,sre)=>{sre.exports=Ktt;function Ktt(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}});var cre=ye((Jtr,ure)=>{var Jtt=Iq();ure.exports=$tt;function $tt(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v=t[0],x=t[1],b=t[2],p=n[0],E=n[1],k=n[2],A=r[0],L=r[1],_=r[2];return Math.abs(v-A)<1e-6&&Math.abs(x-L)<1e-6&&Math.abs(b-_)<1e-6?Jtt(e):(c=v-A,f=x-L,h=b-_,d=1/Math.sqrt(c*c+f*f+h*h),c*=d,f*=d,h*=d,i=E*h-k*f,a=k*c-p*h,o=p*f-E*c,d=Math.sqrt(i*i+a*a+o*o),d?(d=1/d,i*=d,a*=d,o*=d):(i=0,a=0,o=0),s=f*o-h*a,l=h*i-c*o,u=c*a-f*i,d=Math.sqrt(s*s+l*l+u*u),d?(d=1/d,s*=d,l*=d,u*=d):(s=0,l=0,u=0),e[0]=i,e[1]=s,e[2]=c,e[3]=0,e[4]=a,e[5]=l,e[6]=f,e[7]=0,e[8]=o,e[9]=u,e[10]=h,e[11]=0,e[12]=-(i*v+a*x+o*b),e[13]=-(s*v+l*x+u*b),e[14]=-(c*v+f*x+h*b),e[15]=1,e)}});var hre=ye(($tr,fre)=>{fre.exports=Qtt;function Qtt(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Dq=ye((Qtr,dre)=>{dre.exports={create:hte(),clone:vte(),copy:gte(),identity:Iq(),transpose:_te(),invert:bte(),adjoint:Tte(),determinant:Ste(),multiply:Ete(),translate:Cte(),scale:Pte(),rotate:Rte(),rotateX:zte(),rotateY:qte(),rotateZ:Bte(),fromRotation:Ute(),fromRotationTranslation:Hte(),fromScaling:jte(),fromTranslation:Zte(),fromXRotation:Yte(),fromYRotation:Jte(),fromZRotation:Qte(),fromQuat:Rq(),frustum:rre(),perspective:nre(),perspectiveFromFieldOfView:ore(),ortho:lre(),lookAt:cre(),str:hre()}});var _6=ye(Xf=>{"use strict";var ert=Dq();Xf.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var trt=xa(),vre=G1(),rrt=_6(),irt=Dq();function nrt(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function art(e){var t=trt.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function pre(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function ort(e,t){gre("global",e,t)}function gre(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);if(!(i&&i.matches(".no-inline-styles"))){i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a?a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):vre.warn("addStyleRule failed"):vre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function srt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&pre(r)}function lrt(e,t,r,n,i,a){var o=n.split(":"),s=i.split(":"),l="data-btn-style-event-added";a||(a=document),a.querySelectorAll(e).forEach(function(u){u.getAttribute(l)||(u.addEventListener("mouseenter",function(){var c=this.querySelector(r);c&&(c.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var c=this.querySelector(r);c&&(t&&this.matches(t)?c.style[o[0]]=o[1]:c.style[s[0]]=s[1])}),u.setAttribute(l,!0))})}function urt(e){var t=yre(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=mre(n);if(i){var a=rrt.convertCssMatrix(i);r=irt.multiply(r,r,a)}}),r}function mre(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function yre(e){for(var t=[];crt(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function crt(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function frt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}_re.exports={getGraphDiv:nrt,isPlotDiv:art,removeElement:pre,addStyleRule:ort,addRelatedStyleRule:gre,deleteRelatedStyleRule:srt,setStyleOnHover:lrt,getFullTransformMatrix:urt,getElementTransformMatrix:mre,getElementAndAncestors:yre,equalDomRects:frt}});var FS=ye((rrr,xre)=>{"use strict";xre.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var Bu=ye((irr,Ere)=>{"use strict";var wre=no().extendFlat,hrt=gy(),Tre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Are={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},drt=Tre.flags.slice().concat(["fullReplot"]),vrt=Are.flags.slice().concat("layoutReplot");Ere.exports={traces:Tre,layout:Are,traceFlags:function(){return bre(drt)},layoutFlags:function(){return bre(vrt)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";zq.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};zq.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Fq=ye((arr,kre)=>{"use strict";kre.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Wo=ye(x6=>{"use strict";var Cre=Fq(),orr=Cre.FORMAT_LINK,srr=Cre.DATE_FORMAT_LINK;function qq(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var n=[],i=0;i{"use strict";function j1(e,t){return t?t.d2l(e):e}function Lre(e,t){return t?t.l2d(e):e}function prt(e){return e.x0}function grt(e){return e.x1}function mrt(e){return e.y0}function yrt(e){return e.y1}function Pre(e){return e.x0shift||0}function Ire(e){return e.x1shift||0}function Rre(e){return e.y0shift||0}function Dre(e){return e.y1shift||0}function b6(e,t){return j1(e.x1,t)+Ire(e)-j1(e.x0,t)-Pre(e)}function w6(e,t,r){return j1(e.y1,r)+Dre(e)-j1(e.y0,r)-Rre(e)}function _rt(e,t){return Math.abs(b6(e,t))}function xrt(e,t,r){return Math.abs(w6(e,t,r))}function brt(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(b6(e,t),2)+Math.pow(w6(e,t,r),2))}function wrt(e,t){return Lre((j1(e.x1,t)+Ire(e)+j1(e.x0,t)+Pre(e))/2,t)}function Trt(e,t,r){return Lre((j1(e.y1,r)+Dre(e)+j1(e.y0,r)+Rre(e))/2,r)}function Art(e,t,r){return e.type!=="line"?void 0:w6(e,t,r)/b6(e,t)}zre.exports={x0:prt,x1:grt,y0:mrt,y1:yrt,slope:Art,dx:b6,dy:w6,width:_rt,height:xrt,length:brt,xcenter:wrt,ycenter:Trt}});var Ore=ye((crr,qre)=>{"use strict";var Srt=Bu().overrideAll,cb=vl(),Fre=Su(),Mrt=Ed().dash,W1=no().extendFlat,Ert=Wo().shapeTexttemplateAttrs,krt=T6();qre.exports=Srt({newshape:{visible:W1({},cb.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:W1({},cb.legend,{}),legendgroup:W1({},cb.legendgroup,{}),legendgrouptitle:{text:W1({},cb.legendgrouptitle.text,{}),font:Fre({})},legendrank:W1({},cb.legendrank,{}),legendwidth:W1({},cb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:W1({},Mrt,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:W1({},cb.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Ert({newshape:!0},{keys:Object.keys(krt)}),font:Fre({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Nre=ye((frr,Bre)=>{"use strict";var Crt=Ed().dash,Lrt=no().extendFlat;Bre.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:Lrt({},Crt,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var A6=ye((hrr,Ure)=>{"use strict";Ure.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var s3=ye((drr,jre)=>{"use strict";var Oq=Su(),Prt=FS(),S6=dh(),Vre=Ore(),Hre=Nre(),Irt=A6(),Gre=no().extendFlat,M6=Oq({editType:"calc"});M6.family.dflt='"Open Sans", verdana, arial, sans-serif';M6.size.dflt=12;M6.color.dflt=S6.defaultLine;jre.exports={font:M6,title:{text:{valType:"string",editType:"layoutstyle"},font:Oq({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Oq({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Gre(Irt({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:S6.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:S6.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:S6.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:Vre.newshape,activeshape:Vre.activeshape,newselection:Hre.newselection,activeselection:Hre.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Gre({},Prt.transition,{editType:"none"})}});var Wre=Ll(()=>{});var Rrt={};var Zre=Ll(()=>{Wre()});var ba=ye(qs=>{"use strict";var l3=G1(),Xre=y6(),Yre=Pq(),Drt=gy(),zrt=zS().addStyleRule,Kre=no(),Frt=vl(),qrt=s3(),Ort=Kre.extendFlat,Bq=Kre.extendDeepAll;qs.modules={};qs.allCategories={};qs.allTypes=[];qs.subplotsRegistry={};qs.componentsRegistry={};qs.layoutArrayContainers=[];qs.layoutArrayRegexes=[];qs.traceLayoutAttributes={};qs.localeRegistry={};qs.apiMethodRegistry={};qs.collectableSubplotTypes=null;qs.register=function(t){if(qs.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r{"use strict";var Grt=e3().timeFormat,sie=uo(),Nq=G1(),X1=r3().mod,f3=es(),_0=f3.BADNUM,wp=f3.ONEDAY,qS=f3.ONEHOUR,Z1=f3.ONEMIN,c3=f3.ONESEC,OS=f3.EPOCHJD,my=ba(),tie=e3().utcFormat,jrt=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Wrt=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,rie=new Date().getFullYear()-70;function yy(e){return e&&my.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Yf.dateTick0=function(e,t){var r=Zrt(e,!!t);if(t<2)return r;var n=Yf.dateTime2ms(r,e);return n+=wp*(t-1),Yf.ms2DateTime(n,0,e)};function Zrt(e,t){return yy(e)?t?my.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:my.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}Yf.dfltRange=function(e){return yy(e)?my.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Yf.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var k6,C6;Yf.dateTime2ms=function(e,t){if(Yf.isJSDate(e)){var r=e.getTimezoneOffset()*Z1,n=(e.getUTCMinutes()-e.getMinutes())*Z1+(e.getUTCSeconds()-e.getSeconds())*c3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*Z1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=k6&&e<=C6?e:_0}if(typeof e!="string"&&typeof e!="number")return _0;e=String(e);var a=yy(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.substr(1),t="");var s=a&&t.substr(0,7)==="chinese",l=e.match(s?Wrt:jrt);if(!l)return _0;var u=l[1],c=l[3]||"1",f=Number(l[5]||1),h=Number(l[7]||0),d=Number(l[9]||0),v=Number(l[11]||0);if(a){if(u.length===2)return _0;u=Number(u);var x;try{var b=my.getComponentMethod("calendars","getCal")(t);if(s){var p=c.charAt(c.length-1)==="i";c=parseInt(c,10),x=b.newDate(u,b.toMonthIndex(u,c,p),f)}else x=b.newDate(u,Number(c),f)}catch(k){return _0}return x?(x.toJD()-OS)*wp+h*qS+d*Z1+v*c3:_0}u.length===2?u=(Number(u)+2e3-rie)%100+rie:u=Number(u),c-=1;var E=new Date(Date.UTC(2e3,c,f,h,d));return E.setUTCFullYear(u),E.getUTCMonth()!==c||E.getUTCDate()!==f?_0:E.getTime()+v*c3};k6=Yf.MIN_MS=Yf.dateTime2ms("-9999");C6=Yf.MAX_MS=Yf.dateTime2ms("9999-12-31 23:59:59.9999");Yf.isDateTime=function(e,t){return Yf.dateTime2ms(e,t)!==_0};function u3(e,t){return String(e+Math.pow(10,t)).substr(1)}var E6=90*wp,iie=3*qS,nie=5*Z1;Yf.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=k6&&e<=C6))return _0;t||(t=0);var n=Math.floor(X1(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,l,u,c;if(yy(r)){var f=Math.floor(i/wp)+OS,h=Math.floor(X1(e,wp));try{a=my.getComponentMethod("calendars","getCal")(r).fromJD(f).formatDate("yyyy-mm-dd")}catch(d){a=tie("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t=k6+wp&&e<=C6-wp))return _0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=Grt("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return lie(n,i,a,o,s)};function lie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+u3(t,2)+":"+u3(r,2),(n||i)&&(e+=":"+u3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+u3(i,a)}return e}Yf.cleanDate=function(e,t,r){if(e===_0)return t;if(Yf.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(yy(r))return Nq.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=Yf.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!Yf.isDateTime(e,r))return Nq.error("unrecognized date",e),t;return e};var Xrt=/%\d?f/g,Yrt=/%h/g,Krt={1:"1",2:"1",3:"2",4:"2"};function aie(e,t,r,n){e=e.replace(Xrt,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(Yrt,function(){return Krt[r("%q")(i)]}),yy(n))try{e=my.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var Jrt=[59,59.9,59.99,59.999,59.9999];function $rt(e,t){var r=X1(e+.05,wp),n=u3(Math.floor(r/qS),2)+":"+u3(X1(Math.floor(r/Z1),60),2);if(t!=="M"){sie(t)||(t=0);var i=Math.min(X1(e/c3,60),Jrt[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}Yf.formatDate=function(e,t,r,n,i,a){if(i=yy(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` diff --git a/package-lock.json b/package-lock.json index e011d80e3d8..9dd1d3a14a0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "plotly.js", - "version": "3.0.2", + "version": "3.0.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "plotly.js", - "version": "3.0.2", + "version": "3.0.3", "license": "MIT", "dependencies": { "@plotly/d3": "3.8.2", diff --git a/package.json b/package.json index 58c136fc172..abd6f1014fd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "plotly.js", - "version": "3.0.2", + "version": "3.0.3", "description": "The open source javascript graphing library that powers plotly", "license": "MIT", "main": "./lib/index.js", diff --git a/src/version.js b/src/version.js index 0e2bbf385df..760528263e3 100644 --- a/src/version.js +++ b/src/version.js @@ -1,4 +1,4 @@ 'use strict'; // package version injected by `npm run preprocess` -exports.version = '3.0.2'; +exports.version = '3.0.3'; From 6ac01bf058d716c0d3092a4c6c7e219fe861ddba Mon Sep 17 00:00:00 2001 From: Mojtaba Samimi Date: Thu, 24 Jul 2025 09:38:51 -0400 Subject: [PATCH 5/5] Revert "3.0.3" This reverts commit 2bb6513d465e00de47bda96f292c3d2086c750e1. --- dist/README.md | 36 +-- dist/plot-schema.json | 562 +++++++++++++++++------------------ dist/plotly-basic.js | 4 +- dist/plotly-basic.min.js | 4 +- dist/plotly-cartesian.js | 4 +- dist/plotly-cartesian.min.js | 4 +- dist/plotly-finance.js | 4 +- dist/plotly-finance.min.js | 4 +- dist/plotly-geo-assets.js | 4 +- dist/plotly-geo.js | 4 +- dist/plotly-geo.min.js | 4 +- dist/plotly-gl2d.js | 4 +- dist/plotly-gl2d.min.js | 4 +- dist/plotly-gl3d.js | 4 +- dist/plotly-gl3d.min.js | 4 +- dist/plotly-mapbox.js | 4 +- dist/plotly-mapbox.min.js | 4 +- dist/plotly-strict.js | 4 +- dist/plotly-strict.min.js | 4 +- dist/plotly-with-meta.js | 16 +- dist/plotly.js | 4 +- dist/plotly.min.js | 4 +- package-lock.json | 4 +- package.json | 2 +- src/version.js | 2 +- 25 files changed, 352 insertions(+), 346 deletions(-) diff --git a/dist/README.md b/dist/README.md index f08de756866..eac38a19edf 100644 --- a/dist/README.md +++ b/dist/README.md @@ -46,9 +46,9 @@ The main plotly.js bundles weight in at: | 10.3 MB | 4.4 MB | 1.4 MB | 10.6 MB | #### CDN links -> https://cdn.plot.ly/plotly-3.0.3.js +> https://cdn.plot.ly/plotly-3.0.2.js -> https://cdn.plot.ly/plotly-3.0.3.min.js +> https://cdn.plot.ly/plotly-3.0.2.min.js #### npm packages @@ -94,9 +94,9 @@ The `basic` partial bundle contains trace modules `bar`, `pie` and `scatter`. | 2.6 MB | 1008.6 kB | 349.4 kB | #### CDN links -> https://cdn.plot.ly/plotly-basic-3.0.3.js +> https://cdn.plot.ly/plotly-basic-3.0.2.js -> https://cdn.plot.ly/plotly-basic-3.0.3.min.js +> https://cdn.plot.ly/plotly-basic-3.0.2.min.js #### npm packages @@ -117,9 +117,9 @@ The `cartesian` partial bundle contains trace modules `bar`, `box`, `contour`, ` | 3.3 MB | 1.3 MB | 447.2 kB | #### CDN links -> https://cdn.plot.ly/plotly-cartesian-3.0.3.js +> https://cdn.plot.ly/plotly-cartesian-3.0.2.js -> https://cdn.plot.ly/plotly-cartesian-3.0.3.min.js +> https://cdn.plot.ly/plotly-cartesian-3.0.2.min.js #### npm packages @@ -140,9 +140,9 @@ The `geo` partial bundle contains trace modules `choropleth`, `scatter` and `sca | 2.9 MB | 1.1 MB | 398.7 kB | #### CDN links -> https://cdn.plot.ly/plotly-geo-3.0.3.js +> https://cdn.plot.ly/plotly-geo-3.0.2.js -> https://cdn.plot.ly/plotly-geo-3.0.3.min.js +> https://cdn.plot.ly/plotly-geo-3.0.2.min.js #### npm packages @@ -163,9 +163,9 @@ The `gl3d` partial bundle contains trace modules `cone`, `isosurface`, `mesh3d`, | 4.1 MB | 1.5 MB | 513.6 kB | #### CDN links -> https://cdn.plot.ly/plotly-gl3d-3.0.3.js +> https://cdn.plot.ly/plotly-gl3d-3.0.2.js -> https://cdn.plot.ly/plotly-gl3d-3.0.3.min.js +> https://cdn.plot.ly/plotly-gl3d-3.0.2.min.js #### npm packages @@ -186,9 +186,9 @@ The `gl2d` partial bundle contains trace modules `parcoords`, `scatter`, `scatte | 3.4 MB | 1.3 MB | 471.2 kB | #### CDN links -> https://cdn.plot.ly/plotly-gl2d-3.0.3.js +> https://cdn.plot.ly/plotly-gl2d-3.0.2.js -> https://cdn.plot.ly/plotly-gl2d-3.0.3.min.js +> https://cdn.plot.ly/plotly-gl2d-3.0.2.min.js #### npm packages @@ -209,9 +209,9 @@ The `mapbox` partial bundle contains trace modules `choroplethmapbox`, `densitym | 4.4 MB | 1.8 MB | 564.5 kB | #### CDN links -> https://cdn.plot.ly/plotly-mapbox-3.0.3.js +> https://cdn.plot.ly/plotly-mapbox-3.0.2.js -> https://cdn.plot.ly/plotly-mapbox-3.0.3.min.js +> https://cdn.plot.ly/plotly-mapbox-3.0.2.min.js #### npm packages @@ -232,9 +232,9 @@ The `finance` partial bundle contains trace modules `bar`, `candlestick`, `funne | 2.8 MB | 1.1 MB | 383 kB | #### CDN links -> https://cdn.plot.ly/plotly-finance-3.0.3.js +> https://cdn.plot.ly/plotly-finance-3.0.2.js -> https://cdn.plot.ly/plotly-finance-3.0.3.min.js +> https://cdn.plot.ly/plotly-finance-3.0.2.min.js #### npm packages @@ -255,9 +255,9 @@ The `strict` partial bundle contains trace modules `bar`, `barpolar`, `box`, `ca | 11.1 MB | 4.8 MB | 1.5 MB | #### CDN links -> https://cdn.plot.ly/plotly-strict-3.0.3.js +> https://cdn.plot.ly/plotly-strict-3.0.2.js -> https://cdn.plot.ly/plotly-strict-3.0.3.min.js +> https://cdn.plot.ly/plotly-strict-3.0.2.min.js #### npm packages diff --git a/dist/plot-schema.json b/dist/plot-schema.json index a34d163e309..6aa77cf3338 100644 --- a/dist/plot-schema.json +++ b/dist/plot-schema.json @@ -761,7 +761,7 @@ "description": "Sets the annotation text font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -869,7 +869,7 @@ "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -1415,7 +1415,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -1661,7 +1661,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -2000,7 +2000,7 @@ "description": "Sets the global font. Note that fonts used in traces and other layout components inherit from the global font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "dflt": "\"Open Sans\", verdana, arial, sans-serif", "editType": "calc", "noBlank": true, @@ -2840,7 +2840,7 @@ "description": "Sets the default hover label font used by all traces on the graph.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "dflt": "Arial, sans-serif", "editType": "none", "noBlank": true, @@ -2931,7 +2931,7 @@ "description": "Sets the font for group titles in hover (unified modes). Defaults to `hoverlabel.font`.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -3216,7 +3216,7 @@ "description": "Sets the font used to text the legend items.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "legend", "noBlank": true, "strict": true, @@ -3315,7 +3315,7 @@ "description": "Sets the font for group titles in legend. Defaults to `legend.font` with its size increased about 10%.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "legend", "noBlank": true, "strict": true, @@ -3463,7 +3463,7 @@ "description": "Sets this legend's title font. Defaults to `legend.font` with its size increased about 20%.", "editType": "legend", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "legend", "noBlank": true, "strict": true, @@ -3933,7 +3933,7 @@ "description": "Sets the icon text font (color=map.layer.paint.text-color, size=map.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "plot", "noBlank": true, @@ -4339,7 +4339,7 @@ "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "plot", "noBlank": true, @@ -4675,7 +4675,7 @@ "description": "Sets the new shape label text font.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -4857,7 +4857,7 @@ "description": "Sets this legend group's title font.", "editType": "none", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -5306,7 +5306,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -6028,7 +6028,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -6245,7 +6245,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "ticks", "noBlank": true, "strict": true, @@ -6494,7 +6494,7 @@ "description": "Sets the annotation text font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -6602,7 +6602,7 @@ "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -7460,7 +7460,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -7670,7 +7670,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -8199,7 +8199,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -8409,7 +8409,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -8938,7 +8938,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -9148,7 +9148,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -9443,7 +9443,7 @@ "description": "Sets the shape label text font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -9625,7 +9625,7 @@ "description": "Sets this legend group's title font.", "editType": "calc+arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc+arraydraw", "noBlank": true, "strict": true, @@ -9964,7 +9964,7 @@ "description": "Sets the font of the current value label text.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -10089,7 +10089,7 @@ "description": "Sets the font of the slider step labels.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -10633,7 +10633,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -10916,7 +10916,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -11281,7 +11281,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -11498,7 +11498,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -11794,7 +11794,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -12011,7 +12011,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -12313,7 +12313,7 @@ "description": "Sets the tick font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -12530,7 +12530,7 @@ "description": "Sets this axis' title font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -12719,7 +12719,7 @@ "description": "Sets the title font.", "editType": "layoutstyle", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "layoutstyle", "noBlank": true, "strict": true, @@ -12840,7 +12840,7 @@ "description": "Sets the subtitle font.", "editType": "layoutstyle", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "layoutstyle", "noBlank": true, "strict": true, @@ -13228,7 +13228,7 @@ "description": "Sets the font of the update menu button text.", "editType": "arraydraw", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "arraydraw", "noBlank": true, "strict": true, @@ -14139,7 +14139,7 @@ "description": "Sets the font of the range selector button text.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -14540,7 +14540,7 @@ "description": "Sets the tick font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "ticks", "noBlank": true, "strict": true, @@ -14829,7 +14829,7 @@ "description": "Sets this axis' title font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "ticks", "noBlank": true, "strict": true, @@ -15774,7 +15774,7 @@ "description": "Sets the tick font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "ticks", "noBlank": true, "strict": true, @@ -16063,7 +16063,7 @@ "description": "Sets this axis' title font.", "editType": "ticks", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "ticks", "noBlank": true, "strict": true, @@ -16528,7 +16528,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -16732,7 +16732,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -16882,7 +16882,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -17233,7 +17233,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -17479,7 +17479,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -17939,7 +17939,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -18154,7 +18154,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -18716,7 +18716,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -18915,7 +18915,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -19266,7 +19266,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -19512,7 +19512,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -20287,7 +20287,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -20503,7 +20503,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -21824,7 +21824,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -22043,7 +22043,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -22775,7 +22775,7 @@ "description": "Sets the tick font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -22959,7 +22959,7 @@ "description": "Sets this axis' title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -23446,7 +23446,7 @@ "description": "Sets the tick font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -23630,7 +23630,7 @@ "description": "Sets this axis' title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -23791,7 +23791,7 @@ "description": "The default font used for axis & tick labels on this carpet", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "dflt": "\"Open Sans\", verdana, arial, sans-serif", "editType": "calc", "noBlank": true, @@ -23901,7 +23901,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -24336,7 +24336,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -24582,7 +24582,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -24860,7 +24860,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -25059,7 +25059,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -25623,7 +25623,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -25869,7 +25869,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -26141,7 +26141,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -26340,7 +26340,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -26900,7 +26900,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -27146,7 +27146,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -27418,7 +27418,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -27617,7 +27617,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -28216,7 +28216,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -28462,7 +28462,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -28728,7 +28728,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -28927,7 +28927,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -29561,7 +29561,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -29807,7 +29807,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -30019,7 +30019,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -30289,7 +30289,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -30492,7 +30492,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -30712,7 +30712,7 @@ "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -31378,7 +31378,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -31624,7 +31624,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -31830,7 +31830,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -32062,7 +32062,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -32604,7 +32604,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -32850,7 +32850,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -33112,7 +33112,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -33321,7 +33321,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -33819,7 +33819,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -34065,7 +34065,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -34327,7 +34327,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -34536,7 +34536,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -34992,7 +34992,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -35195,7 +35195,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -35345,7 +35345,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -35696,7 +35696,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -35942,7 +35942,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -36298,7 +36298,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -36484,7 +36484,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -37020,7 +37020,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -37212,7 +37212,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -37378,7 +37378,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -37690,7 +37690,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -37882,7 +37882,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -38309,7 +38309,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -38555,7 +38555,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -38840,7 +38840,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -39043,7 +39043,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -39219,7 +39219,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -40001,7 +40001,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -40197,7 +40197,7 @@ "description": "Sets the font used for `text` lying inside the bar.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -40300,7 +40300,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -40651,7 +40651,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -40897,7 +40897,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -41351,7 +41351,7 @@ "description": "Sets the font used for `text` lying outside the bar.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -41512,7 +41512,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -42097,7 +42097,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -42343,7 +42343,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -42631,7 +42631,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -42818,7 +42818,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -43017,7 +43017,7 @@ "description": "Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -43595,7 +43595,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -43841,7 +43841,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -44048,7 +44048,7 @@ "description": "Sets the font used for labeling the contour levels. The default color comes from the lines, if shown. The default family and size come from `layout.font`.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -44321,7 +44321,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -44508,7 +44508,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -44752,7 +44752,7 @@ "description": "For this trace it only has an effect if `coloring` is set to *heatmap*. Sets the text font.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -45247,7 +45247,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -45440,7 +45440,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -45605,7 +45605,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -45956,7 +45956,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -46202,7 +46202,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -46566,7 +46566,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -46745,7 +46745,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -46941,7 +46941,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -47322,7 +47322,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -47513,7 +47513,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -47851,7 +47851,7 @@ "description": "Set the font used to display the delta", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -48191,7 +48191,7 @@ "description": "Sets the color bar's tick label font", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -48600,7 +48600,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -48738,7 +48738,7 @@ "description": "Set the font used to display main number", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -48878,7 +48878,7 @@ "description": "Set the font used to display the title", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -49310,7 +49310,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -49556,7 +49556,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -49848,7 +49848,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -50057,7 +50057,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -50830,7 +50830,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -51076,7 +51076,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -51389,7 +51389,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -51638,7 +51638,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -52216,7 +52216,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -52444,7 +52444,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -52990,7 +52990,7 @@ "description": "Sets the font for the `dimension` labels.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -53081,7 +53081,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -53426,7 +53426,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -53672,7 +53672,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -53933,7 +53933,7 @@ "description": "Sets the font for the `category` labels.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -54251,7 +54251,7 @@ "description": "Sets the font for the `dimension` labels.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -54358,7 +54358,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -54709,7 +54709,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -54955,7 +54955,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -55240,7 +55240,7 @@ "description": "Sets the font for the `dimension` range values.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -55348,7 +55348,7 @@ "description": "Sets the font for the `dimension` tick values.", "editType": "plot", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -55672,7 +55672,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -55864,7 +55864,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -56042,7 +56042,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -56318,7 +56318,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -56523,7 +56523,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -56717,7 +56717,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -57091,7 +57091,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -57260,7 +57260,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -57525,7 +57525,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -57890,7 +57890,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -58167,7 +58167,7 @@ "description": "Sets the font for node labels", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -58754,7 +58754,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -58963,7 +58963,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -59412,7 +59412,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -59658,7 +59658,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -60700,7 +60700,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -61492,7 +61492,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -61691,7 +61691,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -62042,7 +62042,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -62288,7 +62288,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -62751,7 +62751,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -62997,7 +62997,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -63528,7 +63528,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -63936,7 +63936,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -64144,7 +64144,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -64578,7 +64578,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -64824,7 +64824,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -65831,7 +65831,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -66220,7 +66220,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -66429,7 +66429,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -66865,7 +66865,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -67111,7 +67111,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -68111,7 +68111,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -68662,7 +68662,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -68861,7 +68861,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -69267,7 +69267,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -69513,7 +69513,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -70466,7 +70466,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -70985,7 +70985,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -71194,7 +71194,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -71589,7 +71589,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -71835,7 +71835,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -72203,7 +72203,7 @@ "description": "Sets the icon text font (color=map.layer.paint.text-color, size=map.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "calc", "noBlank": true, @@ -72522,7 +72522,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -72731,7 +72731,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -73126,7 +73126,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -73372,7 +73372,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -73740,7 +73740,7 @@ "description": "Sets the icon text font (color=mapbox.layer.paint.text-color, size=mapbox.layer.layout.text-size). Has an effect only when `type` is set to *symbol*.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "calc", "noBlank": true, @@ -74004,7 +74004,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -74212,7 +74212,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -74646,7 +74646,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -74892,7 +74892,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -75920,7 +75920,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -76314,7 +76314,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -76513,7 +76513,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -76906,7 +76906,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -77152,7 +77152,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -78127,7 +78127,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -78458,7 +78458,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -78676,7 +78676,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -79110,7 +79110,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -79356,7 +79356,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -80378,7 +80378,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -80767,7 +80767,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -80975,7 +80975,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -81409,7 +81409,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -81655,7 +81655,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -82675,7 +82675,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -83077,7 +83077,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -83276,7 +83276,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -83639,7 +83639,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -83885,7 +83885,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85160,7 +85160,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85406,7 +85406,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -85673,7 +85673,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -85866,7 +85866,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -86484,7 +86484,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -86677,7 +86677,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -86854,7 +86854,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -87205,7 +87205,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -87451,7 +87451,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -87815,7 +87815,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -88014,7 +88014,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -88475,7 +88475,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -88721,7 +88721,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -89272,7 +89272,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -89471,7 +89471,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -89944,7 +89944,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -90299,7 +90299,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -90587,7 +90587,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -90756,7 +90756,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -91103,7 +91103,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -91296,7 +91296,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -91450,7 +91450,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -91801,7 +91801,7 @@ "description": "Sets the color bar's tick label font", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -92047,7 +92047,7 @@ "description": "Sets this color bar's title font.", "editType": "colorbars", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "colorbars", "noBlank": true, "strict": true, @@ -92456,7 +92456,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -92635,7 +92635,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -92831,7 +92831,7 @@ "editType": "plot", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", "noBlank": true, "strict": true, @@ -93253,7 +93253,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -93473,7 +93473,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -94829,7 +94829,7 @@ "description": "Sets the color bar's tick label font", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -95075,7 +95075,7 @@ "description": "Sets this color bar's title font.", "editType": "calc", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -95367,7 +95367,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -95576,7 +95576,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -96318,7 +96318,7 @@ "editType": "none", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", "noBlank": true, "strict": true, @@ -96553,7 +96553,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -96703,7 +96703,7 @@ "description": "Sets this legend group's title font.", "editType": "style", "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "style", "noBlank": true, "strict": true, @@ -96881,7 +96881,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, @@ -97067,7 +97067,7 @@ "editType": "calc", "family": { "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, "strict": true, diff --git a/dist/plotly-basic.js b/dist/plotly-basic.js index 930153cae75..da020fcfc14 100644 --- a/dist/plotly-basic.js +++ b/dist/plotly-basic.js @@ -1,5 +1,5 @@ /** -* plotly.js (basic) v3.0.3 +* plotly.js (basic) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-basic.min.js b/dist/plotly-basic.min.js index 5184429b487..f54ccfbf2cb 100644 --- a/dist/plotly-basic.min.js +++ b/dist/plotly-basic.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (basic - minified) v3.0.3 +* plotly.js (basic - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var nb=Object.defineProperty;var eI=Object.getOwnPropertyDescriptor;var rI=Object.getOwnPropertyNames;var tI=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var Z=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var aI=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of rI(r))!tI.call(e,n)&&n!==t&&nb(e,n,{get:()=>r[n],enumerable:!(a=eI(r,n))||a.enumerable});return e};var nI=e=>aI(nb({},"__esModule",{value:!0}),e);var tv=Z(lb=>{"use strict";lb.version="3.0.3"});var sb=Z((ob,av)=>{(function(r,t,a){t[r]=t[r]||a(),typeof av!="undefined"&&av.exports&&(av.exports=t[r])})("Promise",typeof window!="undefined"?window:ob,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(w){return setImmediate(w)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(w,T,b,A){return Object.defineProperty(w,T,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(T,b,A){return T[b]=A,T}}a=function(){var w,T,b;function A(S,k){this.fn=S,this.self=k,this.next=void 0}return{add:function(k,q){b=new A(k,q),T?T.next=b:w=b,T=b,b=void 0},drain:function(){var k=w;for(w=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(_,w){a.add(_,w),t||(t=i(a.drain))}function o(_){var w,T=typeof _;return _!=null&&(T=="object"||T=="function")&&(w=_.then),typeof w=="function"?w:!1}function s(){for(var _=0;_0&&l(s,T))}catch(b){v.call(new d(T),b)}}}function v(_){var w=this;w.triggered||(w.triggered=!0,w.def&&(w=w.def),w.msg=_,w.state=2,w.chain.length>0&&l(s,w))}function h(_,w,T,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},a=self.document;function n(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(c){t=function(p){for(var x=p.length,M=new Array(x);x--;)M[x]=p[x];return M}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(p,x){o.call(this,p,x+"")},l.setAttributeNS=function(p,x,M){s.call(this,p,x,M+"")},u.setProperty=function(p,x,M){f.call(this,p,x+"",M)}}e.ascending=v;function v(c,p){return cp?1:c>=p?0:NaN}e.descending=function(c,p){return pc?1:p>=c?0:NaN},e.min=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xL&&(C=L)}else{for(;++x=L){C=L;break}for(;++xL&&(C=L)}return C},e.max=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xC&&(C=L)}else{for(;++x=L){C=L;break}for(;++xC&&(C=L)}return C},e.extent=function(c,p){var x=-1,M=c.length,C,L,P;if(arguments.length===1){for(;++x=L){C=P=L;break}for(;++xL&&(C=L),P=L){C=P=L;break}for(;++xL&&(C=L),P1)return P/(F-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)<0?M=L+1:C=L}return M},right:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)>0?C=L:M=L+1}return M}}}var g=m(v);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(c){return m(c.length===1?function(p,x){return v(c(p),x)}:c)},e.shuffle=function(c,p,x){(M=arguments.length)<3&&(x=c.length,M<2&&(p=0));for(var M=x-p,C,L;M;)L=Math.random()*M--|0,C=c[M+p],c[M+p]=c[L+p],c[L+p]=C;return c},e.permute=function(c,p){for(var x=p.length,M=new Array(x);x--;)M[x]=c[p[x]];return M},e.pairs=function(c){for(var p=0,x=c.length-1,M,C=c[0],L=new Array(x<0?0:x);p=0;)for(P=c[p],x=P.length;--x>=0;)L[--C]=P[x];return L};var _=Math.abs;e.range=function(c,p,x){if(arguments.length<3&&(x=1,arguments.length<2&&(p=c,c=0)),(p-c)/x===1/0)throw new Error("infinite range");var M=[],C=w(_(x)),L=-1,P;if(c*=C,p*=C,x*=C,x<0)for(;(P=c+x*++L)>p;)M.push(P/C);else for(;(P=c+x*++L)=p.length)return C?C.call(c,F):M?F.sort(M):F;for(var W=-1,$=F.length,ee=p[G++],he,we,te,le=new b,ue;++W<$;)(ue=le.get(he=ee(we=F[W])))?ue.push(we):le.set(he,[we]);return E?(we=E(),te=function(xe,Te){we.set(xe,L(E,Te,G))}):(we={},te=function(xe,Te){we[xe]=L(E,Te,G)}),le.forEach(te),we}function P(E,F){if(F>=p.length)return E;var G=[],W=x[F++];return E.forEach(function($,ee){G.push({key:$,values:P(ee,F)})}),W?G.sort(function($,ee){return W($.key,ee.key)}):G}return c.map=function(E,F){return L(F,E,0)},c.entries=function(E){return P(L(e.map,E,0),0)},c.key=function(E){return p.push(E),c},c.sortKeys=function(E){return x[p.length-1]=E,c},c.sortValues=function(E){return M=E,c},c.rollup=function(E){return C=E,c},c},e.set=function(c){var p=new O;if(c)for(var x=0,M=c.length;x=0&&(M=c.slice(x+1),c=c.slice(0,x)),c)return arguments.length<2?this[c].on(M):this[c].on(M,p);if(arguments.length===2){if(p==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(M,null);return this}};function Q(c){var p=[],x=new b;function M(){for(var C=p,L=-1,P=C.length,E;++L=0&&(x=c.slice(0,p))!=="xmlns"&&(c=c.slice(p+1)),de.hasOwnProperty(x)?{space:de[x],local:c}:c}},Ae.attr=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node();return c=e.ns.qualify(c),c.local?x.getAttributeNS(c.space,c.local):x.getAttribute(c)}for(p in c)this.each(be(p,c[p]));return this}return this.each(be(c,p))};function be(c,p){c=e.ns.qualify(c);function x(){this.removeAttribute(c)}function M(){this.removeAttributeNS(c.space,c.local)}function C(){this.setAttribute(c,p)}function L(){this.setAttributeNS(c.space,c.local,p)}function P(){var F=p.apply(this,arguments);F==null?this.removeAttribute(c):this.setAttribute(c,F)}function E(){var F=p.apply(this,arguments);F==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,F)}return p==null?c.local?M:x:typeof p=="function"?c.local?E:P:c.local?L:C}function ye(c){return c.trim().replace(/\s+/g," ")}Ae.classed=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node(),M=(c=Re(c)).length,C=-1;if(p=x.classList){for(;++C=0;)(L=x[M])&&(C&&C!==L.nextSibling&&C.parentNode.insertBefore(L,C),C=L);return this},Ae.sort=function(c){c=Me.apply(this,arguments);for(var p=-1,x=this.length;++p=p&&(p=C+1);!(F=P[p])&&++p0&&(c=c.slice(0,C));var P=Ye.get(c);P&&(c=P,L=Ue);function E(){var W=this[M];W&&(this.removeEventListener(c,W,W.$),delete this[M])}function F(){var W=L(p,t(arguments));E.call(this),this.addEventListener(c,this[M]=W,W.$=x),W._=p}function G(){var W=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),$;for(var ee in this)if($=ee.match(W)){var he=this[ee];this.removeEventListener($[1],he,he.$),delete this[ee]}}return C?p?F:E:p?V:G}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(c){"on"+c in a&&Ye.remove(c)});function Ze(c,p){return function(x){var M=e.event;e.event=x,p[0]=this.__data__;try{c.apply(this,p)}finally{e.event=M}}}function Ue(c,p){var x=Ze(c,p);return function(M){var C=this,L=M.relatedTarget;(!L||L!==C&&!(L.compareDocumentPosition(C)&8))&&x.call(C,M)}}var Oe,Ke=0;function fr(c){var p=".dragsuppress-"+ ++Ke,x="click"+p,M=e.select(i(c)).on("touchmove"+p,ie).on("dragstart"+p,ie).on("selectstart"+p,ie);if(Oe==null&&(Oe="onselectstart"in c?!1:B(c.style,"userSelect")),Oe){var C=n(c).style,L=C[Oe];C[Oe]="none"}return function(P){if(M.on(p,null),Oe&&(C[Oe]=L),P){var E=function(){M.on(x,null)};M.on(x,function(){ie(),E()},!0),setTimeout(E,0)}}}e.mouse=function(c){return ze(c,me())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ze(c,p){p.changedTouches&&(p=p.changedTouches[0]);var x=c.ownerSVGElement||c;if(x.createSVGPoint){var M=x.createSVGPoint();if(lr<0){var C=i(c);if(C.scrollX||C.scrollY){x=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=x[0][0].getScreenCTM();lr=!(L.f||L.e),x.remove()}}return lr?(M.x=p.pageX,M.y=p.pageY):(M.x=p.clientX,M.y=p.clientY),M=M.matrixTransform(c.getScreenCTM().inverse()),[M.x,M.y]}var P=c.getBoundingClientRect();return[p.clientX-P.left-c.clientLeft,p.clientY-P.top-c.clientTop]}e.touch=function(c,p,x){if(arguments.length<3&&(x=p,p=me().changedTouches),p){for(var M=0,C=p.length,L;M0?1:c<0?-1:0}function Vr(c,p,x){return(p[0]-c[0])*(x[1]-c[1])-(p[1]-c[1])*(x[0]-c[0])}function St(c){return c>1?0:c<-1?ke:Math.acos(c)}function ea(c){return c>1?sr:c<-1?-sr:Math.asin(c)}function ka(c){return((c=Math.exp(c))-1/c)/2}function ra(c){return((c=Math.exp(c))+1/c)/2}function pn(c){return((c=Math.exp(2*c))-1)/(c+1)}function Ia(c){return(c=Math.sin(c/2))*c}var ta=Math.SQRT2,Ha=2,yr=4;e.interpolateZoom=function(c,p){var x=c[0],M=c[1],C=c[2],L=p[0],P=p[1],E=p[2],F=L-x,G=P-M,W=F*F+G*G,$,ee;if(W0&&(er=er.transition().duration(P)),er.call(Te.event)}function hr(){le&&le.domain(te.range().map(function(er){return(er-c.x)/c.k}).map(te.invert)),xe&&xe.domain(ue.range().map(function(er){return(er-c.y)/c.k}).map(ue.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function pr(er){--E||(er({type:"zoomend"}),x=null)}function Tr(){var er=this,Lr=we.of(er,arguments),qr=0,Kr=e.select(i(er)).on(G,ca).on(W,La),_t=ce(e.mouse(er)),Ot=fr(er);$c.call(er),dr(Lr);function ca(){qr=1,or(e.mouse(er),_t),Sr(Lr)}function La(){Kr.on(G,null).on(W,null),Ot(qr),pr(Lr)}}function Jr(){var er=this,Lr=we.of(er,arguments),qr={},Kr=0,_t,Ot=".zoom-"+e.event.changedTouches[0].identifier,ca="touchmove"+Ot,La="touchend"+Ot,Oa=[],qa=e.select(er),Ga=fr(er);Va(),dr(Lr),qa.on(F,null).on(ee,Va);function ba(){var Yn=e.touches(er);return _t=c.k,Yn.forEach(function(va){va.identifier in qr&&(qr[va.identifier]=ce(va))}),Yn}function Va(){var Yn=e.event.target;e.select(Yn).on(ca,Jl).on(La,jF),Oa.push(Yn);for(var va=e.event.changedTouches,yn=0,vi=va.length;yn1){var Kl=gn[0],al=gn[1],rv=Kl[0]-al[0],ab=Kl[1]-al[1];Kr=rv*rv+ab*ab}}function Jl(){var Yn=e.touches(er),va,yn,vi,gn;$c.call(er);for(var ls=0,Kl=Yn.length;ls1?1:p,x=x<0?0:x>1?1:x,C=x<=.5?x*(1+p):x+p-x*p,M=2*x-C;function L(E){return E>360?E-=360:E<0&&(E+=360),E<60?M+(C-M)*E/60:E<180?C:E<240?M+(C-M)*(240-E)/60:M}function P(E){return Math.round(L(E)*255)}return new Sa(P(c+120),P(c),P(c-120))}e.hcl=aa;function aa(c,p,x){return this instanceof aa?(this.h=+c,this.c=+p,void(this.l=+x)):arguments.length<2?c instanceof aa?new aa(c.h,c.c,c.l):c instanceof Zt?Dc(c.l,c.a,c.b):Dc((c=nr((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new aa(c,p,x)}var In=aa.prototype=new Tt;In.brighter=function(c){return new aa(this.h,this.c,Math.min(100,this.l+at*(arguments.length?c:1)))},In.darker=function(c){return new aa(this.h,this.c,Math.max(0,this.l-at*(arguments.length?c:1)))},In.rgb=function(){return Hn(this.h,this.c,this.l).rgb()};function Hn(c,p,x){return isNaN(c)&&(c=0),isNaN(p)&&(p=0),new Zt(x,Math.cos(c*=Mr)*p,Math.sin(c)*p)}e.lab=Zt;function Zt(c,p,x){return this instanceof Zt?(this.l=+c,this.a=+p,void(this.b=+x)):arguments.length<2?c instanceof Zt?new Zt(c.l,c.a,c.b):c instanceof aa?Hn(c.h,c.c,c.l):nr((c=Sa(c)).r,c.g,c.b):new Zt(c,p,x)}var at=18,sa=.95047,Ul=1,Gl=1.08883,rl=Zt.prototype=new Tt;rl.brighter=function(c){return new Zt(Math.min(100,this.l+at*(arguments.length?c:1)),this.a,this.b)},rl.darker=function(c){return new Zt(Math.max(0,this.l-at*(arguments.length?c:1)),this.a,this.b)},rl.rgb=function(){return qc(this.l,this.a,this.b)};function qc(c,p,x){var M=(c+16)/116,C=M+p/500,L=M-x/200;return C=ku(C)*sa,M=ku(M)*Ul,L=ku(L)*Gl,new Sa(Su(3.2404542*C-1.5371385*M-.4985314*L),Su(-.969266*C+1.8760108*M+.041556*L),Su(.0556434*C-.2040259*M+1.0572252*L))}function Dc(c,p,x){return c>0?new aa(Math.atan2(x,p)*Ur,Math.sqrt(p*p+x*x),c):new aa(NaN,NaN,c)}function ku(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function Cu(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Su(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Sa;function Sa(c,p,x){return this instanceof Sa?(this.r=~~c,this.g=~~p,void(this.b=~~x)):arguments.length<2?c instanceof Sa?new Sa(c.r,c.g,c.b):Zr(""+c,Sa,Ca):new Sa(c,p,x)}function Ec(c){return new Sa(c>>16,c>>8&255,c&255)}function $o(c){return Ec(c)+""}var jo=Sa.prototype=new Tt;jo.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var p=this.r,x=this.g,M=this.b,C=30;return!p&&!x&&!M?new Sa(C,C,C):(p&&p>4,M=M>>4|M,C=F&240,C=C>>4|C,L=F&15,L=L<<4|L):c.length===7&&(M=(F&16711680)>>16,C=(F&65280)>>8,L=F&255)),p(M,C,L))}function jr(c,p,x){var M=Math.min(c/=255,p/=255,x/=255),C=Math.max(c,p,x),L=C-M,P,E,F=(C+M)/2;return L?(E=F<.5?L/(C+M):L/(2-C-M),c==C?P=(p-x)/L+(p0&&F<1?0:P),new ot(P,E,F)}function nr(c,p,x){c=ua(c),p=ua(p),x=ua(x);var M=Cu((.4124564*c+.3575761*p+.1804375*x)/sa),C=Cu((.2126729*c+.7151522*p+.072175*x)/Ul),L=Cu((.0193339*c+.119192*p+.9503041*x)/Gl);return Zt(116*C-16,500*(M-C),200*(C-L))}function ua(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function st(c){var p=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(p*2.55):p}var fa=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});fa.forEach(function(c,p){fa.set(c,Ec(p))});function Rr(c){return typeof c=="function"?c:function(){return c}}e.functor=Rr,e.xhr=On(J);function On(c){return function(p,x,M){return arguments.length===2&&typeof x=="function"&&(M=x,x=null),Vl(p,x,c,M)}}function Vl(c,p,x,M){var C={},L=e.dispatch("beforesend","progress","load","error"),P={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(c)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=G:E.onreadystatechange=function(){E.readyState>3&&G()};function G(){var W=E.status,$;if(!W&&rN(E)||W>=200&&W<300||W===304){try{$=x.call(C,E)}catch(ee){L.error.call(C,ee);return}L.load.call(C,$)}else L.error.call(C,E)}return E.onprogress=function(W){var $=e.event;e.event=W;try{L.progress.call(C,E)}finally{e.event=$}},C.header=function(W,$){return W=(W+"").toLowerCase(),arguments.length<2?P[W]:($==null?delete P[W]:P[W]=$+"",C)},C.mimeType=function(W){return arguments.length?(p=W==null?null:W+"",C):p},C.responseType=function(W){return arguments.length?(F=W,C):F},C.response=function(W){return x=W,C},["get","post"].forEach(function(W){C[W]=function(){return C.send.apply(C,[W].concat(t(arguments)))}}),C.send=function(W,$,ee){if(arguments.length===2&&typeof $=="function"&&(ee=$,$=null),E.open(W,c,!0),p!=null&&!("accept"in P)&&(P.accept=p+",*/*"),E.setRequestHeader)for(var he in P)E.setRequestHeader(he,P[he]);return p!=null&&E.overrideMimeType&&E.overrideMimeType(p),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(we){ee(null,we)}),L.beforesend.call(C,E),E.send($==null?null:$),C},C.abort=function(){return E.abort(),C},e.rebind(C,L,"on"),M==null?C:C.get(eN(M))}function eN(c){return c.length===1?function(p,x){c(p==null?x:null)}:c}function rN(c){var p=c.responseType;return p&&p!=="text"?c.response:c.responseText}e.dsv=function(c,p){var x=new RegExp('["'+c+` +"use strict";var Plotly=(()=>{var nb=Object.defineProperty;var eI=Object.getOwnPropertyDescriptor;var rI=Object.getOwnPropertyNames;var tI=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var Z=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var aI=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of rI(r))!tI.call(e,n)&&n!==t&&nb(e,n,{get:()=>r[n],enumerable:!(a=eI(r,n))||a.enumerable});return e};var nI=e=>aI(nb({},"__esModule",{value:!0}),e);var tv=Z(lb=>{"use strict";lb.version="3.0.2"});var sb=Z((ob,av)=>{(function(r,t,a){t[r]=t[r]||a(),typeof av!="undefined"&&av.exports&&(av.exports=t[r])})("Promise",typeof window!="undefined"?window:ob,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(w){return setImmediate(w)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(w,T,b,A){return Object.defineProperty(w,T,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(T,b,A){return T[b]=A,T}}a=function(){var w,T,b;function A(S,k){this.fn=S,this.self=k,this.next=void 0}return{add:function(k,q){b=new A(k,q),T?T.next=b:w=b,T=b,b=void 0},drain:function(){var k=w;for(w=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(_,w){a.add(_,w),t||(t=i(a.drain))}function o(_){var w,T=typeof _;return _!=null&&(T=="object"||T=="function")&&(w=_.then),typeof w=="function"?w:!1}function s(){for(var _=0;_0&&l(s,T))}catch(b){v.call(new d(T),b)}}}function v(_){var w=this;w.triggered||(w.triggered=!0,w.def&&(w=w.def),w.msg=_,w.state=2,w.chain.length>0&&l(s,w))}function h(_,w,T,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},a=self.document;function n(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(c){t=function(p){for(var x=p.length,M=new Array(x);x--;)M[x]=p[x];return M}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(p,x){o.call(this,p,x+"")},l.setAttributeNS=function(p,x,M){s.call(this,p,x,M+"")},u.setProperty=function(p,x,M){f.call(this,p,x+"",M)}}e.ascending=v;function v(c,p){return cp?1:c>=p?0:NaN}e.descending=function(c,p){return pc?1:p>=c?0:NaN},e.min=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xL&&(C=L)}else{for(;++x=L){C=L;break}for(;++xL&&(C=L)}return C},e.max=function(c,p){var x=-1,M=c.length,C,L;if(arguments.length===1){for(;++x=L){C=L;break}for(;++xC&&(C=L)}else{for(;++x=L){C=L;break}for(;++xC&&(C=L)}return C},e.extent=function(c,p){var x=-1,M=c.length,C,L,P;if(arguments.length===1){for(;++x=L){C=P=L;break}for(;++xL&&(C=L),P=L){C=P=L;break}for(;++xL&&(C=L),P1)return P/(F-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)<0?M=L+1:C=L}return M},right:function(p,x,M,C){for(arguments.length<3&&(M=0),arguments.length<4&&(C=p.length);M>>1;c(p[L],x)>0?C=L:M=L+1}return M}}}var g=m(v);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(c){return m(c.length===1?function(p,x){return v(c(p),x)}:c)},e.shuffle=function(c,p,x){(M=arguments.length)<3&&(x=c.length,M<2&&(p=0));for(var M=x-p,C,L;M;)L=Math.random()*M--|0,C=c[M+p],c[M+p]=c[L+p],c[L+p]=C;return c},e.permute=function(c,p){for(var x=p.length,M=new Array(x);x--;)M[x]=c[p[x]];return M},e.pairs=function(c){for(var p=0,x=c.length-1,M,C=c[0],L=new Array(x<0?0:x);p=0;)for(P=c[p],x=P.length;--x>=0;)L[--C]=P[x];return L};var _=Math.abs;e.range=function(c,p,x){if(arguments.length<3&&(x=1,arguments.length<2&&(p=c,c=0)),(p-c)/x===1/0)throw new Error("infinite range");var M=[],C=w(_(x)),L=-1,P;if(c*=C,p*=C,x*=C,x<0)for(;(P=c+x*++L)>p;)M.push(P/C);else for(;(P=c+x*++L)=p.length)return C?C.call(c,F):M?F.sort(M):F;for(var W=-1,$=F.length,ee=p[G++],he,we,te,le=new b,ue;++W<$;)(ue=le.get(he=ee(we=F[W])))?ue.push(we):le.set(he,[we]);return E?(we=E(),te=function(xe,Te){we.set(xe,L(E,Te,G))}):(we={},te=function(xe,Te){we[xe]=L(E,Te,G)}),le.forEach(te),we}function P(E,F){if(F>=p.length)return E;var G=[],W=x[F++];return E.forEach(function($,ee){G.push({key:$,values:P(ee,F)})}),W?G.sort(function($,ee){return W($.key,ee.key)}):G}return c.map=function(E,F){return L(F,E,0)},c.entries=function(E){return P(L(e.map,E,0),0)},c.key=function(E){return p.push(E),c},c.sortKeys=function(E){return x[p.length-1]=E,c},c.sortValues=function(E){return M=E,c},c.rollup=function(E){return C=E,c},c},e.set=function(c){var p=new O;if(c)for(var x=0,M=c.length;x=0&&(M=c.slice(x+1),c=c.slice(0,x)),c)return arguments.length<2?this[c].on(M):this[c].on(M,p);if(arguments.length===2){if(p==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(M,null);return this}};function Q(c){var p=[],x=new b;function M(){for(var C=p,L=-1,P=C.length,E;++L=0&&(x=c.slice(0,p))!=="xmlns"&&(c=c.slice(p+1)),de.hasOwnProperty(x)?{space:de[x],local:c}:c}},Ae.attr=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node();return c=e.ns.qualify(c),c.local?x.getAttributeNS(c.space,c.local):x.getAttribute(c)}for(p in c)this.each(be(p,c[p]));return this}return this.each(be(c,p))};function be(c,p){c=e.ns.qualify(c);function x(){this.removeAttribute(c)}function M(){this.removeAttributeNS(c.space,c.local)}function C(){this.setAttribute(c,p)}function L(){this.setAttributeNS(c.space,c.local,p)}function P(){var F=p.apply(this,arguments);F==null?this.removeAttribute(c):this.setAttribute(c,F)}function E(){var F=p.apply(this,arguments);F==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,F)}return p==null?c.local?M:x:typeof p=="function"?c.local?E:P:c.local?L:C}function ye(c){return c.trim().replace(/\s+/g," ")}Ae.classed=function(c,p){if(arguments.length<2){if(typeof c=="string"){var x=this.node(),M=(c=Re(c)).length,C=-1;if(p=x.classList){for(;++C=0;)(L=x[M])&&(C&&C!==L.nextSibling&&C.parentNode.insertBefore(L,C),C=L);return this},Ae.sort=function(c){c=Me.apply(this,arguments);for(var p=-1,x=this.length;++p=p&&(p=C+1);!(F=P[p])&&++p0&&(c=c.slice(0,C));var P=Ye.get(c);P&&(c=P,L=Ue);function E(){var W=this[M];W&&(this.removeEventListener(c,W,W.$),delete this[M])}function F(){var W=L(p,t(arguments));E.call(this),this.addEventListener(c,this[M]=W,W.$=x),W._=p}function G(){var W=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),$;for(var ee in this)if($=ee.match(W)){var he=this[ee];this.removeEventListener($[1],he,he.$),delete this[ee]}}return C?p?F:E:p?V:G}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(c){"on"+c in a&&Ye.remove(c)});function Ze(c,p){return function(x){var M=e.event;e.event=x,p[0]=this.__data__;try{c.apply(this,p)}finally{e.event=M}}}function Ue(c,p){var x=Ze(c,p);return function(M){var C=this,L=M.relatedTarget;(!L||L!==C&&!(L.compareDocumentPosition(C)&8))&&x.call(C,M)}}var Oe,Ke=0;function fr(c){var p=".dragsuppress-"+ ++Ke,x="click"+p,M=e.select(i(c)).on("touchmove"+p,ie).on("dragstart"+p,ie).on("selectstart"+p,ie);if(Oe==null&&(Oe="onselectstart"in c?!1:B(c.style,"userSelect")),Oe){var C=n(c).style,L=C[Oe];C[Oe]="none"}return function(P){if(M.on(p,null),Oe&&(C[Oe]=L),P){var E=function(){M.on(x,null)};M.on(x,function(){ie(),E()},!0),setTimeout(E,0)}}}e.mouse=function(c){return ze(c,me())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ze(c,p){p.changedTouches&&(p=p.changedTouches[0]);var x=c.ownerSVGElement||c;if(x.createSVGPoint){var M=x.createSVGPoint();if(lr<0){var C=i(c);if(C.scrollX||C.scrollY){x=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=x[0][0].getScreenCTM();lr=!(L.f||L.e),x.remove()}}return lr?(M.x=p.pageX,M.y=p.pageY):(M.x=p.clientX,M.y=p.clientY),M=M.matrixTransform(c.getScreenCTM().inverse()),[M.x,M.y]}var P=c.getBoundingClientRect();return[p.clientX-P.left-c.clientLeft,p.clientY-P.top-c.clientTop]}e.touch=function(c,p,x){if(arguments.length<3&&(x=p,p=me().changedTouches),p){for(var M=0,C=p.length,L;M0?1:c<0?-1:0}function Vr(c,p,x){return(p[0]-c[0])*(x[1]-c[1])-(p[1]-c[1])*(x[0]-c[0])}function St(c){return c>1?0:c<-1?ke:Math.acos(c)}function ea(c){return c>1?sr:c<-1?-sr:Math.asin(c)}function ka(c){return((c=Math.exp(c))-1/c)/2}function ra(c){return((c=Math.exp(c))+1/c)/2}function pn(c){return((c=Math.exp(2*c))-1)/(c+1)}function Ia(c){return(c=Math.sin(c/2))*c}var ta=Math.SQRT2,Ha=2,yr=4;e.interpolateZoom=function(c,p){var x=c[0],M=c[1],C=c[2],L=p[0],P=p[1],E=p[2],F=L-x,G=P-M,W=F*F+G*G,$,ee;if(W0&&(er=er.transition().duration(P)),er.call(Te.event)}function hr(){le&&le.domain(te.range().map(function(er){return(er-c.x)/c.k}).map(te.invert)),xe&&xe.domain(ue.range().map(function(er){return(er-c.y)/c.k}).map(ue.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function pr(er){--E||(er({type:"zoomend"}),x=null)}function Tr(){var er=this,Lr=we.of(er,arguments),qr=0,Kr=e.select(i(er)).on(G,ca).on(W,La),_t=ce(e.mouse(er)),Ot=fr(er);$c.call(er),dr(Lr);function ca(){qr=1,or(e.mouse(er),_t),Sr(Lr)}function La(){Kr.on(G,null).on(W,null),Ot(qr),pr(Lr)}}function Jr(){var er=this,Lr=we.of(er,arguments),qr={},Kr=0,_t,Ot=".zoom-"+e.event.changedTouches[0].identifier,ca="touchmove"+Ot,La="touchend"+Ot,Oa=[],qa=e.select(er),Ga=fr(er);Va(),dr(Lr),qa.on(F,null).on(ee,Va);function ba(){var Yn=e.touches(er);return _t=c.k,Yn.forEach(function(va){va.identifier in qr&&(qr[va.identifier]=ce(va))}),Yn}function Va(){var Yn=e.event.target;e.select(Yn).on(ca,Jl).on(La,jF),Oa.push(Yn);for(var va=e.event.changedTouches,yn=0,vi=va.length;yn1){var Kl=gn[0],al=gn[1],rv=Kl[0]-al[0],ab=Kl[1]-al[1];Kr=rv*rv+ab*ab}}function Jl(){var Yn=e.touches(er),va,yn,vi,gn;$c.call(er);for(var ls=0,Kl=Yn.length;ls1?1:p,x=x<0?0:x>1?1:x,C=x<=.5?x*(1+p):x+p-x*p,M=2*x-C;function L(E){return E>360?E-=360:E<0&&(E+=360),E<60?M+(C-M)*E/60:E<180?C:E<240?M+(C-M)*(240-E)/60:M}function P(E){return Math.round(L(E)*255)}return new Sa(P(c+120),P(c),P(c-120))}e.hcl=aa;function aa(c,p,x){return this instanceof aa?(this.h=+c,this.c=+p,void(this.l=+x)):arguments.length<2?c instanceof aa?new aa(c.h,c.c,c.l):c instanceof Zt?Dc(c.l,c.a,c.b):Dc((c=nr((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new aa(c,p,x)}var In=aa.prototype=new Tt;In.brighter=function(c){return new aa(this.h,this.c,Math.min(100,this.l+at*(arguments.length?c:1)))},In.darker=function(c){return new aa(this.h,this.c,Math.max(0,this.l-at*(arguments.length?c:1)))},In.rgb=function(){return Hn(this.h,this.c,this.l).rgb()};function Hn(c,p,x){return isNaN(c)&&(c=0),isNaN(p)&&(p=0),new Zt(x,Math.cos(c*=Mr)*p,Math.sin(c)*p)}e.lab=Zt;function Zt(c,p,x){return this instanceof Zt?(this.l=+c,this.a=+p,void(this.b=+x)):arguments.length<2?c instanceof Zt?new Zt(c.l,c.a,c.b):c instanceof aa?Hn(c.h,c.c,c.l):nr((c=Sa(c)).r,c.g,c.b):new Zt(c,p,x)}var at=18,sa=.95047,Ul=1,Gl=1.08883,rl=Zt.prototype=new Tt;rl.brighter=function(c){return new Zt(Math.min(100,this.l+at*(arguments.length?c:1)),this.a,this.b)},rl.darker=function(c){return new Zt(Math.max(0,this.l-at*(arguments.length?c:1)),this.a,this.b)},rl.rgb=function(){return qc(this.l,this.a,this.b)};function qc(c,p,x){var M=(c+16)/116,C=M+p/500,L=M-x/200;return C=ku(C)*sa,M=ku(M)*Ul,L=ku(L)*Gl,new Sa(Su(3.2404542*C-1.5371385*M-.4985314*L),Su(-.969266*C+1.8760108*M+.041556*L),Su(.0556434*C-.2040259*M+1.0572252*L))}function Dc(c,p,x){return c>0?new aa(Math.atan2(x,p)*Ur,Math.sqrt(p*p+x*x),c):new aa(NaN,NaN,c)}function ku(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function Cu(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Su(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Sa;function Sa(c,p,x){return this instanceof Sa?(this.r=~~c,this.g=~~p,void(this.b=~~x)):arguments.length<2?c instanceof Sa?new Sa(c.r,c.g,c.b):Zr(""+c,Sa,Ca):new Sa(c,p,x)}function Ec(c){return new Sa(c>>16,c>>8&255,c&255)}function $o(c){return Ec(c)+""}var jo=Sa.prototype=new Tt;jo.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var p=this.r,x=this.g,M=this.b,C=30;return!p&&!x&&!M?new Sa(C,C,C):(p&&p>4,M=M>>4|M,C=F&240,C=C>>4|C,L=F&15,L=L<<4|L):c.length===7&&(M=(F&16711680)>>16,C=(F&65280)>>8,L=F&255)),p(M,C,L))}function jr(c,p,x){var M=Math.min(c/=255,p/=255,x/=255),C=Math.max(c,p,x),L=C-M,P,E,F=(C+M)/2;return L?(E=F<.5?L/(C+M):L/(2-C-M),c==C?P=(p-x)/L+(p0&&F<1?0:P),new ot(P,E,F)}function nr(c,p,x){c=ua(c),p=ua(p),x=ua(x);var M=Cu((.4124564*c+.3575761*p+.1804375*x)/sa),C=Cu((.2126729*c+.7151522*p+.072175*x)/Ul),L=Cu((.0193339*c+.119192*p+.9503041*x)/Gl);return Zt(116*C-16,500*(M-C),200*(C-L))}function ua(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function st(c){var p=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(p*2.55):p}var fa=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});fa.forEach(function(c,p){fa.set(c,Ec(p))});function Rr(c){return typeof c=="function"?c:function(){return c}}e.functor=Rr,e.xhr=On(J);function On(c){return function(p,x,M){return arguments.length===2&&typeof x=="function"&&(M=x,x=null),Vl(p,x,c,M)}}function Vl(c,p,x,M){var C={},L=e.dispatch("beforesend","progress","load","error"),P={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(c)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=G:E.onreadystatechange=function(){E.readyState>3&&G()};function G(){var W=E.status,$;if(!W&&rN(E)||W>=200&&W<300||W===304){try{$=x.call(C,E)}catch(ee){L.error.call(C,ee);return}L.load.call(C,$)}else L.error.call(C,E)}return E.onprogress=function(W){var $=e.event;e.event=W;try{L.progress.call(C,E)}finally{e.event=$}},C.header=function(W,$){return W=(W+"").toLowerCase(),arguments.length<2?P[W]:($==null?delete P[W]:P[W]=$+"",C)},C.mimeType=function(W){return arguments.length?(p=W==null?null:W+"",C):p},C.responseType=function(W){return arguments.length?(F=W,C):F},C.response=function(W){return x=W,C},["get","post"].forEach(function(W){C[W]=function(){return C.send.apply(C,[W].concat(t(arguments)))}}),C.send=function(W,$,ee){if(arguments.length===2&&typeof $=="function"&&(ee=$,$=null),E.open(W,c,!0),p!=null&&!("accept"in P)&&(P.accept=p+",*/*"),E.setRequestHeader)for(var he in P)E.setRequestHeader(he,P[he]);return p!=null&&E.overrideMimeType&&E.overrideMimeType(p),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(we){ee(null,we)}),L.beforesend.call(C,E),E.send($==null?null:$),C},C.abort=function(){return E.abort(),C},e.rebind(C,L,"on"),M==null?C:C.get(eN(M))}function eN(c){return c.length===1?function(p,x){c(p==null?x:null)}:c}function rN(c){var p=c.responseType;return p&&p!=="text"?c.response:c.responseText}e.dsv=function(c,p){var x=new RegExp('["'+c+` ]`),M=c.charCodeAt(0);function C(G,W,$){arguments.length<3&&($=W,W=null);var ee=Vl(G,p,W==null?L:P(W),$);return ee.row=function(he){return arguments.length?ee.response((W=he)==null?L:P(he)):W},ee}function L(G){return C.parse(G.responseText)}function P(G){return function(W){return C.parse(W.responseText,G)}}C.parse=function(G,W){var $;return C.parseRows(G,function(ee,he){if($)return $(ee,he-1);var we=function(te){for(var le={},ue=ee.length,xe=0;xe=we)return ee;if(xe)return xe=!1,$;var Ge=te;if(G.charCodeAt(Ge)===34){for(var rr=Ge;rr++24?(isFinite(p)&&(clearTimeout(Nc),Nc=setTimeout(v1,p)),zc=0):(zc=1,U3(v1))}e.timer.flush=function(){G3(),V3()};function G3(){for(var c=Date.now(),p=Pc;p;)c>=p.t&&p.c(c-p.t)&&(p.c=null),p=p.n;return c}function V3(){for(var c,p=Pc,x=1/0;p;)p.c?(p.t=0;--E)te.push(C[G[$[E]][2]]);for(E=+he;E1&&Vr(c[x[M-2]],c[x[M-1]],c[C])<=0;)--M;x[M++]=C}return x.slice(0,M)}function tN(c,p){return c[0]-p[0]||c[1]-p[1]}e.geom.polygon=function(c){return j(c,Ic),c};var Ic=e.geom.polygon.prototype=[];Ic.area=function(){for(var c=-1,p=this.length,x,M=this[p-1],C=0;++coe)E=E.L;else if(P=p-lN(E,x),P>oe){if(!E.R){M=E;break}E=E.R}else{L>-oe?(M=E.P,C=E):P>-oe?(M=E,C=E.N):M=C=E;break}var F=K3(c);if(ts.insert(M,F),!(!M&&!C)){if(M===C){ns(M),C=K3(M.site),ts.insert(F,C),F.edge=C.edge=Du(M.site,F.site),as(M),as(C);return}if(!C){F.edge=Du(M.site,F.site);return}ns(M),ns(C);var G=M.site,W=G.x,$=G.y,ee=c.x-W,he=c.y-$,we=C.site,te=we.x-W,le=we.y-$,ue=2*(ee*le-he*te),xe=ee*ee+he*he,Te=te*te+le*le,ce={x:(le*xe-he*Te)/ue+W,y:(ee*Te-te*xe)/ue+$};Hc(C.edge,G,we,ce),F.edge=Du(G,c,null,ce),C.edge=Du(c,we,null,ce),as(M),as(C)}}function Q3(c,p){var x=c.site,M=x.x,C=x.y,L=C-p;if(!L)return M;var P=c.P;if(!P)return-1/0;x=P.site;var E=x.x,F=x.y,G=F-p;if(!G)return E;var W=E-M,$=1/L-1/G,ee=W/G;return $?(-ee+Math.sqrt(ee*ee-2*$*(W*W/(-2*G)-F+G/2+C-L/2)))/$+M:(M+E)/2}function lN(c,p){var x=c.N;if(x)return Q3(x,p);var M=c.site;return M.y===p?M.x:1/0}function $3(c){this.site=c,this.edges=[]}$3.prototype.prepare=function(){for(var c=this.edges,p=c.length,x;p--;)x=c[p].edge,(!x.b||!x.a)&&c.splice(p,1);return c.sort(j3),c.length};function oN(c){for(var p=c[0][0],x=c[1][0],M=c[0][1],C=c[1][1],L,P,E,F,G=Wl,W=G.length,$,ee,he,we,te,le;W--;)if($=G[W],!(!$||!$.prepare()))for(he=$.edges,we=he.length,ee=0;eeoe||_(F-P)>oe)&&(he.splice(ee,0,new Oc(vN($.site,le,_(E-p)oe?{x:p,y:_(L-p)oe?{x:_(P-C)oe?{x,y:_(L-x)oe?{x:_(P-M)=-qe)){var ee=F*F+G*G,he=W*W+le*le,we=(le*ee-G*he)/$,te=(F*he-W*ee)/$,le=te+E,ue=J3.pop()||new sN;ue.arc=c,ue.site=C,ue.x=we+P,ue.y=le+Math.sqrt(we*we+te*te),ue.cy=le,c.circle=ue;for(var xe=null,Te=qu._;Te;)if(ue.y0)){if(te/=he,he<0){if(te<$)return;te0){if(te>ee)return;te>$&&($=te)}if(te=x-E,!(!he&&te<0)){if(te/=he,he<0){if(te>ee)return;te>$&&($=te)}else if(he>0){if(te<$)return;te0)){if(te/=we,we<0){if(te<$)return;te0){if(te>ee)return;te>$&&($=te)}if(te=M-F,!(!we&&te<0)){if(te/=we,we<0){if(te>ee)return;te>$&&($=te)}else if(we>0){if(te<$)return;te0&&(C.a={x:E+$*he,y:F+$*we}),ee<1&&(C.b={x:E+ee*he,y:F+ee*we}),C}}}}}}function fN(c){for(var p=rs,x=uN(c[0][0],c[0][1],c[1][0],c[1][1]),M=p.length,C;M--;)C=p[M],(!cN(C,c)||!x(C)||_(C.a.x-C.b.x)=L)return;if(W>ee){if(!M)M={x:we,y:P};else if(M.y>=E)return;x={x:we,y:E}}else{if(!M)M={x:we,y:E};else if(M.y1)if(W>ee){if(!M)M={x:(P-ue)/le,y:P};else if(M.y>=E)return;x={x:(E-ue)/le,y:E}}else{if(!M)M={x:(E-ue)/le,y:E};else if(M.y=L)return;x={x:L,y:le*L+ue}}else{if(!M)M={x:L,y:le*L+ue};else if(M.x=W&&ue.x<=ee&&ue.y>=$&&ue.y<=he?[[W,he],[ee,he],[ee,$],[W,$]]:[];xe.point=F[te]}),G}function E(F){return F.map(function(G,W){return{x:Math.round(M(G,W)/oe)*oe,y:Math.round(C(G,W)/oe)*oe,i:W}})}return P.links=function(F){return g1(E(F)).edges.filter(function(G){return G.l&&G.r}).map(function(G){return{source:F[G.l.i],target:F[G.r.i]}})},P.triangles=function(F){var G=[];return g1(E(F)).cells.forEach(function(W,$){for(var ee=W.site,he=W.edges.sort(j3),we=-1,te=he.length,le,ue,xe=he[te-1].edge,Te=xe.l===ee?xe.r:xe.l;++weTe&&(Te=W.x),W.y>ce&&(ce=W.y),he.push(W.x),we.push(W.y);else for(te=0;teTe&&(Te=Ge),rr>ce&&(ce=rr),he.push(Ge),we.push(rr)}var or=Te-ue,ar=ce-xe;or>ar?ce=xe+or:Te=ue+ar;function hr(pr,Tr,Jr,Lt,rt,er,Lr,qr){if(!(isNaN(Jr)||isNaN(Lt)))if(pr.leaf){var Kr=pr.x,_t=pr.y;if(Kr!=null)if(_(Kr-Jr)+_(_t-Lt)<.01)dr(pr,Tr,Jr,Lt,rt,er,Lr,qr);else{var Ot=pr.point;pr.x=pr.y=pr.point=null,dr(pr,Ot,Kr,_t,rt,er,Lr,qr),dr(pr,Tr,Jr,Lt,rt,er,Lr,qr)}else pr.x=Jr,pr.y=Lt,pr.point=Tr}else dr(pr,Tr,Jr,Lt,rt,er,Lr,qr)}function dr(pr,Tr,Jr,Lt,rt,er,Lr,qr){var Kr=(rt+Lr)*.5,_t=(er+qr)*.5,Ot=Jr>=Kr,ca=Lt>=_t,La=ca<<1|Ot;pr.leaf=!1,pr=pr.nodes[La]||(pr.nodes[La]=t5()),Ot?rt=Kr:Lr=Kr,ca?er=_t:qr=_t,hr(pr,Tr,Jr,Lt,rt,er,Lr,qr)}var Sr=t5();if(Sr.add=function(pr){hr(Sr,pr,+$(pr,++te),+ee(pr,te),ue,xe,Te,ce)},Sr.visit=function(pr){Ru(pr,Sr,ue,xe,Te,ce)},Sr.find=function(pr){return yN(Sr,pr[0],pr[1],ue,xe,Te,ce)},te=-1,p==null){for(;++teL||ee>P||he=Ge,ar=x>=rr,hr=ar<<1|or,dr=hr+4;hrx&&(L=p.slice(x,L),E[P]?E[P]+=L:E[++P]=L),(M=M[0])===(C=C[0])?E[P]?E[P]+=C:E[++P]=C:(E[++P]=null,F.push({i:P,x:Ri(M,C)})),x=_1.lastIndex;return x=0&&!(M=e.interpolators[x](c,p)););return M}e.interpolators=[function(c,p){var x=typeof p;return(x==="string"?fa.has(p.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(p)?b1:n5:p instanceof Tt?b1:Array.isArray(p)?Uc:x==="object"&&isNaN(p)?a5:Ri)(c,p)}],e.interpolateArray=Uc;function Uc(c,p){var x=[],M=[],C=c.length,L=p.length,P=Math.min(c.length,p.length),E;for(E=0;E=0?c.slice(0,p):c,M=p>=0?c.slice(p+1):"in";return x=gN.get(x)||i5,M=bN.get(M)||J,xN(M(x.apply(null,r.call(arguments,1))))};function xN(c){return function(p){return p<=0?0:p>=1?1:c(p)}}function l5(c){return function(p){return 1-c(1-p)}}function o5(c){return function(p){return .5*(p<.5?c(2*p):2-c(2-2*p))}}function _N(c){return c*c}function wN(c){return c*c*c}function TN(c){if(c<=0)return 0;if(c>=1)return 1;var p=c*c,x=p*c;return 4*(c<.5?x:3*(c-p)+x-.75)}function MN(c){return function(p){return Math.pow(p,c)}}function AN(c){return 1-Math.cos(c*sr)}function kN(c){return Math.pow(2,10*(c-1))}function CN(c){return 1-Math.sqrt(1-c*c)}function SN(c,p){var x;return arguments.length<2&&(p=.45),arguments.length?x=p/ir*Math.asin(1/c):(c=1,x=p/4),function(M){return 1+c*Math.pow(2,-10*M)*Math.sin((M-x)*ir/p)}}function LN(c){return c||(c=1.70158),function(p){return p*p*((c+1)*p-c)}}function qN(c){return c<1/2.75?7.5625*c*c:c<2/2.75?7.5625*(c-=1.5/2.75)*c+.75:c<2.5/2.75?7.5625*(c-=2.25/2.75)*c+.9375:7.5625*(c-=2.625/2.75)*c+.984375}e.interpolateHcl=DN;function DN(c,p){c=e.hcl(c),p=e.hcl(p);var x=c.h,M=c.c,C=c.l,L=p.h-x,P=p.c-M,E=p.l-C;return isNaN(P)&&(P=0,M=isNaN(M)?p.c:M),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(F){return Hn(x+L*F,M+P*F,C+E*F)+""}}e.interpolateHsl=EN;function EN(c,p){c=e.hsl(c),p=e.hsl(p);var x=c.h,M=c.s,C=c.l,L=p.h-x,P=p.s-M,E=p.l-C;return isNaN(P)&&(P=0,M=isNaN(M)?p.s:M),isNaN(L)?(L=0,x=isNaN(x)?p.h:x):L>180?L-=360:L<-180&&(L+=360),function(F){return Ca(x+L*F,M+P*F,C+E*F)+""}}e.interpolateLab=PN;function PN(c,p){c=e.lab(c),p=e.lab(p);var x=c.l,M=c.a,C=c.b,L=p.l-x,P=p.a-M,E=p.b-C;return function(F){return qc(x+L*F,M+P*F,C+E*F)+""}}e.interpolateRound=s5;function s5(c,p){return p-=c,function(x){return Math.round(c+p*x)}}e.transform=function(c){var p=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(x){if(x!=null){p.setAttribute("transform",x);var M=p.transform.baseVal.consolidate()}return new u5(M?M.matrix:zN)})(c)};function u5(c){var p=[c.a,c.b],x=[c.c,c.d],M=c5(p),C=f5(p,x),L=c5(RN(x,p,-C))||0;p[0]*x[1]180?p+=360:p-c>180&&(c+=360),M.push({i:x.push(is(x)+"rotate(",null,")")-2,x:Ri(c,p)})):p&&x.push(is(x)+"rotate("+p+")")}function IN(c,p,x,M){c!==p?M.push({i:x.push(is(x)+"skewX(",null,")")-2,x:Ri(c,p)}):p&&x.push(is(x)+"skewX("+p+")")}function HN(c,p,x,M){if(c[0]!==p[0]||c[1]!==p[1]){var C=x.push(is(x)+"scale(",null,",",null,")");M.push({i:C-4,x:Ri(c[0],p[0])},{i:C-2,x:Ri(c[1],p[1])})}else(p[0]!==1||p[1]!==1)&&x.push(is(x)+"scale("+p+")")}function v5(c,p){var x=[],M=[];return c=e.transform(c),p=e.transform(p),NN(c.translate,p.translate,x,M),FN(c.rotate,p.rotate,x,M),IN(c.skew,p.skew,x,M),HN(c.scale,p.scale,x,M),c=p=null,function(C){for(var L=-1,P=M.length,E;++L0?L=ce:(x.c=null,x.t=NaN,x=null,p.end({type:"end",alpha:L=0})):ce>0&&(p.start({type:"start",alpha:L=ce}),x=Fc(c.tick)),c):L},c.start=function(){var ce,Ge=he.length,rr=we.length,or=M[0],ar=M[1],hr,dr;for(ce=0;ce=0;)L.push(W=G[F]),W.parent=E,W.depth=E.depth+1;x&&(E.value=0),E.children=G}else x&&(E.value=+x.call(M,E,E.depth)||0),delete E.children;return ci(C,function($){var ee,he;c&&(ee=$.children)&&ee.sort(c),x&&(he=$.parent)&&(he.value+=$.value)}),P}return M.sort=function(C){return arguments.length?(c=C,M):c},M.children=function(C){return arguments.length?(p=C,M):p},M.value=function(C){return arguments.length?(x=C,M):x},M.revalue=function(C){return x&&(Nu(C,function(L){L.children&&(L.value=0)}),ci(C,function(L){var P;L.children||(L.value=+x.call(M,L,L.depth)||0),(P=L.parent)&&(P.value+=L.value)})),C},M};function zu(c,p){return e.rebind(c,p,"sort","children","value"),c.nodes=c,c.links=eF,c}function Nu(c,p){for(var x=[c];(c=x.pop())!=null;)if(p(c),(C=c.children)&&(M=C.length))for(var M,C;--M>=0;)x.push(C[M])}function ci(c,p){for(var x=[c],M=[];(c=x.pop())!=null;)if(M.push(c),(P=c.children)&&(L=P.length))for(var C=-1,L,P;++CC&&(C=E),M.push(E)}for(P=0;PM&&(x=p,M=C);return x}function oF(c){return c.reduce(sF,0)}function sF(c,p){return c+p[1]}e.layout.histogram=function(){var c=!0,p=Number,x=fF,M=uF;function C(L,ee){for(var E=[],F=L.map(p,this),G=x.call(this,F,ee),W=M.call(this,G,F,ee),$,ee=-1,he=F.length,we=W.length-1,te=c?1:1/he,le;++ee0)for(ee=-1;++ee=G[0]&&le<=G[1]&&($=E[e.bisect(W,le,1,we)-1],$.y+=te,$.push(L[ee]));return E}return C.value=function(L){return arguments.length?(p=L,C):p},C.range=function(L){return arguments.length?(x=Rr(L),C):x},C.bins=function(L){return arguments.length?(M=typeof L=="number"?function(P){return m5(P,L)}:Rr(L),C):M},C.frequency=function(L){return arguments.length?(c=!!L,C):c},C};function uF(c,p){return m5(c,Math.ceil(Math.log(p.length)/Math.LN2+1))}function m5(c,p){for(var x=-1,M=+c[0],C=(c[1]-M)/p,L=[];++x<=p;)L[x]=C*x+M;return L}function fF(c){return[e.min(c),e.max(c)]}e.layout.pack=function(){var c=e.layout.hierarchy().sort(cF),p=0,x=[1,1],M;function C(L,P){var E=c.call(this,L,P),F=E[0],G=x[0],W=x[1],$=M==null?Math.sqrt:typeof M=="function"?M:function(){return M};if(F.x=F.y=0,ci(F,function(he){he.r=+$(he.value)}),ci(F,b5),p){var ee=p*(M?1:Math.max(2*F.r/G,2*F.r/W))/2;ci(F,function(he){he.r+=ee}),ci(F,b5),ci(F,function(he){he.r-=ee})}return x5(F,G/2,W/2,M?1:1/Math.max(2*F.r/G,2*F.r/W)),E}return C.size=function(L){return arguments.length?(x=L,C):x},C.radius=function(L){return arguments.length?(M=L==null||typeof L=="function"?L:+L,C):M},C.padding=function(L){return arguments.length?(p=+L,C):p},zu(C,c)};function cF(c,p){return c.value-p.value}function M1(c,p){var x=c._pack_next;c._pack_next=p,p._pack_prev=c,p._pack_next=x,x._pack_prev=p}function y5(c,p){c._pack_next=p,p._pack_prev=c}function g5(c,p){var x=p.x-c.x,M=p.y-c.y,C=c.r+p.r;return .999*C*C>x*x+M*M}function b5(c){if(!(p=c.children)||!(ee=p.length))return;var p,x=1/0,M=-1/0,C=1/0,L=-1/0,P,E,F,G,W,$,ee;function he(ce){x=Math.min(ce.x-ce.r,x),M=Math.max(ce.x+ce.r,M),C=Math.min(ce.y-ce.r,C),L=Math.max(ce.y+ce.r,L)}if(p.forEach(vF),P=p[0],P.x=-P.r,P.y=0,he(P),ee>1&&(E=p[1],E.x=E.r,E.y=0,he(E),ee>2))for(F=p[2],_5(P,E,F),he(F),M1(P,F),P._pack_prev=F,M1(F,E),E=P._pack_next,G=3;Gle.x&&(le=Ge),Ge.depth>ue.depth&&(ue=Ge)});var xe=p(te,le)/2-te.x,Te=x[0]/(le.x+p(le,te)/2+xe),ce=x[1]/(ue.depth||1);Nu(he,function(Ge){Ge.x=(Ge.x+xe)*Te,Ge.y=Ge.depth*ce})}return ee}function L(W){for(var $={A:null,children:[W]},ee=[$],he;(he=ee.pop())!=null;)for(var we=he.children,te,le=0,ue=we.length;le0&&(dF(mF(te,W,ee),W,Ge),ue+=Ge,xe+=Ge),Te+=te.m,ue+=he.m,ce+=le.m,xe+=we.m;te&&!k1(we)&&(we.t=te,we.m+=Te-xe),he&&!A1(le)&&(le.t=he,le.m+=ue-ce,ee=W)}return ee}function G(W){W.x*=x[0],W.y=W.depth*x[1]}return C.separation=function(W){return arguments.length?(p=W,C):p},C.size=function(W){return arguments.length?(M=(x=W)==null?G:null,C):M?null:x},C.nodeSize=function(W){return arguments.length?(M=(x=W)==null?null:G,C):M?x:null},zu(C,c)};function w5(c,p){return c.parent==p.parent?1:2}function A1(c){var p=c.children;return p.length?p[0]:c.t}function k1(c){var p=c.children,x;return(x=p.length)?p[x-1]:c.t}function dF(c,p,x){var M=x/(p.i-c.i);p.c-=M,p.s+=x,c.c+=M,p.z+=x,p.m+=x}function pF(c){for(var p=0,x=0,M=c.children,C=M.length,L;--C>=0;)L=M[C],L.z+=p,L.m+=p,p+=L.s+(x+=L.c)}function mF(c,p,x){return c.a.parent===p.parent?c.a:x}e.layout.cluster=function(){var c=e.layout.hierarchy().sort(null).value(null),p=w5,x=[1,1],M=!1;function C(L,P){var E=c.call(this,L,P),F=E[0],G,W=0;ci(F,function(te){var le=te.children;le&&le.length?(te.x=gF(le),te.y=yF(le)):(te.x=G?W+=p(te,G):0,te.y=0,G=te)});var $=T5(F),ee=M5(F),he=$.x-p($,ee)/2,we=ee.x+p(ee,$)/2;return ci(F,M?function(te){te.x=(te.x-F.x)*x[0],te.y=(F.y-te.y)*x[1]}:function(te){te.x=(te.x-he)/(we-he)*x[0],te.y=(1-(F.y?te.y/F.y:1))*x[1]}),E}return C.separation=function(L){return arguments.length?(p=L,C):p},C.size=function(L){return arguments.length?(M=(x=L)==null,C):M?null:x},C.nodeSize=function(L){return arguments.length?(M=(x=L)!=null,C):M?x:null},zu(C,c)};function yF(c){return 1+e.max(c,function(p){return p.y})}function gF(c){return c.reduce(function(p,x){return p+x.x},0)/c.length}function T5(c){var p=c.children;return p&&p.length?T5(p[0]):c}function M5(c){var p=c.children,x;return p&&(x=p.length)?M5(p[x-1]):c}e.layout.treemap=function(){var c=e.layout.hierarchy(),p=Math.round,x=[1,1],M=null,C=C1,L=!1,P,E="squarify",F=.5*(1+Math.sqrt(5));function G(te,le){for(var ue=-1,xe=te.length,Te,ce;++ue0;)xe.push(ce=Te[ar-1]),xe.area+=ce.area,E!=="squarify"||(rr=ee(xe,or))<=Ge?(Te.pop(),Ge=rr):(xe.area-=xe.pop().area,he(xe,or,ue,!1),or=Math.min(ue.dx,ue.dy),xe.length=xe.area=0,Ge=1/0);xe.length&&(he(xe,or,ue,!0),xe.length=xe.area=0),le.forEach(W)}}function $(te){var le=te.children;if(le&&le.length){var ue=C(te),xe=le.slice(),Te,ce=[];for(G(xe,ue.dx*ue.dy/te.value),ce.area=0;Te=xe.pop();)ce.push(Te),ce.area+=Te.area,Te.z!=null&&(he(ce,Te.z?ue.dx:ue.dy,ue,!xe.length),ce.length=ce.area=0);le.forEach($)}}function ee(te,le){for(var ue=te.area,xe,Te=0,ce=1/0,Ge=-1,rr=te.length;++GeTe&&(Te=xe));return ue*=ue,le*=le,ue?Math.max(le*Te*F/ue,ue/(le*ce*F)):1/0}function he(te,le,ue,xe){var Te=-1,ce=te.length,Ge=ue.x,rr=ue.y,or=le?p(te.area/le):0,ar;if(le==ue.dx){for((xe||or>ue.dy)&&(or=ue.dy);++Teue.dx)&&(or=ue.dx);++Te1);return c+p*M*Math.sqrt(-2*Math.log(L)/L)}},logNormal:function(){var c=e.random.normal.apply(e,arguments);return function(){return Math.exp(c())}},bates:function(c){var p=e.random.irwinHall(c);return function(){return p()/c}},irwinHall:function(c){return function(){for(var p=0,x=0;x2?_F:bF,G=M?BN:ON;return C=F(c,p,G,x),L=F(p,c,G,Zl),E}function E(F){return C(F)}return E.invert=function(F){return L(F)},E.domain=function(F){return arguments.length?(c=F.map(Number),P()):c},E.range=function(F){return arguments.length?(p=F,P()):p},E.rangeRound=function(F){return E.range(F).interpolate(s5)},E.clamp=function(F){return arguments.length?(M=F,P()):M},E.interpolate=function(F){return arguments.length?(x=F,P()):x},E.ticks=function(F){return q1(c,F)},E.tickFormat=function(F,G){return d3_scale_linearTickFormat(c,F,G)},E.nice=function(F){return L5(c,F),P()},E.copy=function(){return C5(c,p,x,M)},P()}function S5(c,p){return e.rebind(c,p,"range","rangeRound","interpolate","clamp")}function L5(c,p){return S1(c,k5(L1(c,p)[2])),S1(c,k5(L1(c,p)[2])),c}function L1(c,p){p==null&&(p=10);var x=Gc(c),M=x[1]-x[0],C=Math.pow(10,Math.floor(Math.log(M/p)/Math.LN10)),L=p/M*C;return L<=.15?C*=10:L<=.35?C*=5:L<=.75&&(C*=2),x[0]=Math.ceil(x[0]/C)*C,x[1]=Math.floor(x[1]/C)*C+C*.5,x[2]=C,x}function q1(c,p){return e.range.apply(e,L1(c,p))}var wF={s:1,g:1,p:1,r:1,e:1};function q5(c){return-Math.floor(Math.log(c)/Math.LN10+.01)}function lie(c,p){var x=q5(p[2]);return c in wF?Math.abs(x-q5(Math.max(_(p[0]),_(p[1]))))+ +(c!=="e"):x-(c==="%")*2}e.scale.log=function(){return D5(e.scale.linear().domain([0,1]),10,!0,[1,10])};function D5(c,p,x,M){function C(E){return(x?Math.log(E<0?0:E):-Math.log(E>0?0:-E))/Math.log(p)}function L(E){return x?Math.pow(p,E):-Math.pow(p,-E)}function P(E){return c(C(E))}return P.invert=function(E){return L(c.invert(E))},P.domain=function(E){return arguments.length?(x=E[0]>=0,c.domain((M=E.map(Number)).map(C)),P):M},P.base=function(E){return arguments.length?(p=+E,c.domain(M.map(C)),P):p},P.nice=function(){var E=S1(M.map(C),x?Math:TF);return c.domain(E),M=E.map(L),P},P.ticks=function(){var E=Gc(M),F=[],G=E[0],W=E[1],$=Math.floor(C(G)),ee=Math.ceil(C(W)),he=p%1?2:p;if(isFinite(ee-$)){if(x){for(;$0;we--)F.push(L($)*we);for($=0;F[$]W;ee--);F=F.slice($,ee)}return F},P.copy=function(){return D5(c.copy(),p,x,M)},S5(P,c)}var TF={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return E5(e.scale.linear(),1,[0,1])};function E5(c,p,x){var M=Wc(p),C=Wc(1/p);function L(P){return c(M(P))}return L.invert=function(P){return C(c.invert(P))},L.domain=function(P){return arguments.length?(c.domain((x=P.map(Number)).map(M)),L):x},L.ticks=function(P){return q1(x,P)},L.tickFormat=function(P,E){return d3_scale_linearTickFormat(x,P,E)},L.nice=function(P){return L.domain(L5(x,P))},L.exponent=function(P){return arguments.length?(M=Wc(p=P),C=Wc(1/p),c.domain(x.map(M)),L):p},L.copy=function(){return E5(c.copy(),p,x)},S5(L,c)}function Wc(c){return function(p){return p<0?-Math.pow(-p,c):Math.pow(p,c)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return P5([],{t:"range",a:[[]]})};function P5(c,p){var x,M,C;function L(E){return M[((x.get(E)||(p.t==="range"?x.set(E,c.push(E)):NaN))-1)%M.length]}function P(E,F){return e.range(c.length).map(function(G){return E+F*G})}return L.domain=function(E){if(!arguments.length)return c;c=[],x=new b;for(var F=-1,G=E.length,W;++F0?x[L-1]:c[0],Lee?0:1;if(W=vr)return F(W,we)+(G?F(G,1-we):"")+"Z";var te,le,ue,xe,Te=0,ce=0,Ge,rr,or,ar,hr,dr,Sr,pr,Tr=[];if((xe=(+P.apply(this,arguments)||0)/2)&&(ue=M===Zc?Math.sqrt(G*G+W*W):+M.apply(this,arguments),we||(ce*=-1),W&&(ce=ea(ue/W*Math.sin(xe))),G&&(Te=ea(ue/G*Math.sin(xe)))),W){Ge=W*Math.cos($+ce),rr=W*Math.sin($+ce),or=W*Math.cos(ee-ce),ar=W*Math.sin(ee-ce);var Jr=Math.abs(ee-$-2*ce)<=ke?0:1;if(ce&&Xc(Ge,rr,or,ar)===we^Jr){var Lt=($+ee)/2;Ge=W*Math.cos(Lt),rr=W*Math.sin(Lt),or=ar=null}}else Ge=rr=0;if(G){hr=G*Math.cos(ee-Te),dr=G*Math.sin(ee-Te),Sr=G*Math.cos($+Te),pr=G*Math.sin($+Te);var rt=Math.abs($-ee+2*Te)<=ke?0:1;if(Te&&Xc(hr,dr,Sr,pr)===1-we^rt){var er=($+ee)/2;hr=G*Math.cos(er),dr=G*Math.sin(er),Sr=pr=null}}else hr=dr=0;if(he>oe&&(te=Math.min(Math.abs(W-G)/2,+x.apply(this,arguments)))>.001){le=G0?0:1}function Jc(c,p,x,M,C){var L=c[0]-p[0],P=c[1]-p[1],E=(C?M:-M)/Math.sqrt(L*L+P*P),F=E*P,G=-E*L,W=c[0]+F,$=c[1]+G,ee=p[0]+F,he=p[1]+G,we=(W+ee)/2,te=($+he)/2,le=ee-W,ue=he-$,xe=le*le+ue*ue,Te=x-M,ce=W*he-ee*$,Ge=(ue<0?-1:1)*Math.sqrt(Math.max(0,Te*Te*xe-ce*ce)),rr=(ce*ue-le*Ge)/xe,or=(-ce*le-ue*Ge)/xe,ar=(ce*ue+le*Ge)/xe,hr=(-ce*le+ue*Ge)/xe,dr=rr-we,Sr=or-te,pr=ar-we,Tr=hr-te;return dr*dr+Sr*Sr>pr*pr+Tr*Tr&&(rr=ar,or=hr),[[rr-F,or-G],[rr*x/Te,or*x/Te]]}function O5(){return!0}function B5(c){var p=es,x=Lu,M=O5,C=Bn,L=C.key,P=.7;function E(F){var G=[],W=[],$=-1,ee=F.length,he,we=Rr(p),te=Rr(x);function le(){G.push("M",C(c(W),P))}for(;++$1?c.join("L"):c+"Z"}function Y5(c){return c.join("L")+"Z"}function EF(c){for(var p=0,x=c.length,M=c[0],C=[M[0],",",M[1]];++p1&&C.push("H",M[0]),C.join("")}function E1(c){for(var p=0,x=c.length,M=c[0],C=[M[0],",",M[1]];++p1){E=p[1],L=c[F],F++,M+="C"+(C[0]+P[0])+","+(C[1]+P[1])+","+(L[0]-E[0])+","+(L[1]-E[1])+","+L[0]+","+L[1];for(var G=2;G9&&(L=x*3/Math.sqrt(L),P[E]=L*M,P[E+1]=L*C));for(E=-1;++E<=F;)L=(c[Math.min(F,E+1)][0]-c[Math.max(0,E-1)][0])/(6*(1+P[E]*P[E])),p.push([L||0,P[E]*L||0]);return p}function BF(c){return c.length<3?Bn(c):c[0]+Kc(c,OF(c))}e.svg.line.radial=function(){var c=B5(W5);return c.radius=c.x,delete c.x,c.angle=c.y,delete c.y,c};function W5(c){for(var p,x=-1,M=c.length,C,L;++xke)+",1 "+$}function G(W,$,ee,he){return"Q 0,0 "+he}return L.radius=function(W){return arguments.length?(x=Rr(W),L):x},L.source=function(W){return arguments.length?(c=Rr(W),L):c},L.target=function(W){return arguments.length?(p=Rr(W),L):p},L.startAngle=function(W){return arguments.length?(M=Rr(W),L):M},L.endAngle=function(W){return arguments.length?(C=Rr(W),L):C},L};function YF(c){return c.radius}e.svg.diagonal=function(){var c=X5,p=J5,x=K5;function M(C,L){var P=c.call(this,C,L),E=p.call(this,C,L),F=(P.y+E.y)/2,G=[P,{x:P.x,y:F},{x:E.x,y:F},E];return G=G.map(x),"M"+G[0]+"C"+G[1]+" "+G[2]+" "+G[3]}return M.source=function(C){return arguments.length?(c=Rr(C),M):c},M.target=function(C){return arguments.length?(p=Rr(C),M):p},M.projection=function(C){return arguments.length?(x=C,M):x},M};function K5(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),p=K5,x=c.projection;return c.projection=function(M){return arguments.length?x(UF(p=M)):p},c};function UF(c){return function(){var p=c.apply(this,arguments),x=p[0],M=p[1]-sr;return[x*Math.cos(M),x*Math.sin(M)]}}e.svg.symbol=function(){var c=VF,p=GF;function x(M,C){return($5.get(c.call(this,M,C))||Q5)(p.call(this,M,C))}return x.type=function(M){return arguments.length?(c=Rr(M),x):c},x.size=function(M){return arguments.length?(p=Rr(M),x):p},x};function GF(){return 64}function VF(){return"circle"}function Q5(c){var p=Math.sqrt(c/ke);return"M0,"+p+"A"+p+","+p+" 0 1,1 0,"+-p+"A"+p+","+p+" 0 1,1 0,"+p+"Z"}var $5=e.map({circle:Q5,cross:function(c){var p=Math.sqrt(c/5)/2;return"M"+-3*p+","+-p+"H"+-p+"V"+-3*p+"H"+p+"V"+-p+"H"+3*p+"V"+p+"H"+p+"V"+3*p+"H"+-p+"V"+p+"H"+-3*p+"Z"},diamond:function(c){var p=Math.sqrt(c/(2*j5)),x=p*j5;return"M0,"+-p+"L"+x+",0 0,"+p+" "+-x+",0Z"},square:function(c){var p=Math.sqrt(c)/2;return"M"+-p+","+-p+"L"+p+","+-p+" "+p+","+p+" "+-p+","+p+"Z"},"triangle-down":function(c){var p=Math.sqrt(c/Qc),x=p*Qc/2;return"M0,"+x+"L"+p+","+-x+" "+-p+","+-x+"Z"},"triangle-up":function(c){var p=Math.sqrt(c/Qc),x=p*Qc/2;return"M0,"+-x+"L"+p+","+x+" "+-p+","+x+"Z"}});e.svg.symbolTypes=$5.keys();var Qc=Math.sqrt(3),j5=Math.tan(30*Mr);Ae.transition=function(c){for(var p=Xl||++rb,x=I1(c),M=[],C,L,P=jc||{time:Date.now(),ease:TN,delay:0,duration:250},E=-1,F=this.length;++E0;)$[--xe].call(c,ue);if(le>=1)return P.event&&P.event.end.call(c,c.__data__,p),--L.count?delete L[M]:delete c[x],1}P||(E=C.time,F=Fc(ee,0,E),P=L[M]={tween:new b,time:E,timer:F,delay:C.delay,duration:C.duration,ease:C.ease,index:p},C=null,++L.count)}e.svg.axis=function(){var c=e.scale.linear(),p=tb,x=6,M=6,C=3,L=[10],P=null,E;function F(G){G.each(function(){var W=e.select(this),$=this.__chart__||c,ee=this.__chart__=c.copy(),he=P==null?ee.ticks?ee.ticks.apply(ee,L):ee.domain():P,we=E==null?ee.tickFormat?ee.tickFormat.apply(ee,L):J:E,te=W.selectAll(".tick").data(he,ee),le=te.enter().insert("g",".domain").attr("class","tick").style("opacity",oe),ue=e.transition(te.exit()).style("opacity",oe).remove(),xe=e.transition(te.order()).style("opacity",1),Te=Math.max(x,0)+C,ce,Ge=Vc(ee),rr=W.selectAll(".domain").data([0]),or=(rr.enter().append("path").attr("class","domain"),e.transition(rr));le.append("line"),le.append("text");var ar=le.select("line"),hr=xe.select("line"),dr=te.select("text").text(we),Sr=le.select("text"),pr=xe.select("text"),Tr=p==="top"||p==="left"?-1:1,Jr,Lt,rt,er;if(p==="bottom"||p==="top"?(ce=XF,Jr="x",rt="y",Lt="x2",er="y2",dr.attr("dy",Tr<0?"0em":".71em").style("text-anchor","middle"),or.attr("d","M"+Ge[0]+","+Tr*M+"V0H"+Ge[1]+"V"+Tr*M)):(ce=JF,Jr="y",rt="x",Lt="y2",er="x2",dr.attr("dy",".32em").style("text-anchor",Tr<0?"end":"start"),or.attr("d","M"+Tr*M+","+Ge[0]+"H0V"+Ge[1]+"H"+Tr*M)),ar.attr(er,Tr*x),Sr.attr(rt,Tr*Te),hr.attr(Lt,0).attr(er,Tr*x),pr.attr(Jr,0).attr(rt,Tr*Te),ee.rangeBand){var Lr=ee,qr=Lr.rangeBand()/2;$=ee=function(Kr){return Lr(Kr)+qr}}else $.rangeBand?$=ee:ue.call(ce,ee,$);le.call(ce,$,ee),xe.call(ce,ee,ee)})}return F.scale=function(G){return arguments.length?(c=G,F):c},F.orient=function(G){return arguments.length?(p=G in ZF?G+"":tb,F):p},F.ticks=function(){return arguments.length?(L=t(arguments),F):L},F.tickValues=function(G){return arguments.length?(P=G,F):P},F.tickFormat=function(G){return arguments.length?(E=G,F):E},F.tickSize=function(G){var W=arguments.length;return W?(x=+G,M=+arguments[W-1],F):x},F.innerTickSize=function(G){return arguments.length?(x=+G,F):x},F.outerTickSize=function(G){return arguments.length?(M=+G,F):M},F.tickPadding=function(G){return arguments.length?(C=+G,F):C},F.tickSubdivide=function(){return arguments.length&&F},F};var tb="bottom",ZF={top:1,right:1,bottom:1,left:1};function XF(c,p,x){c.attr("transform",function(M){var C=p(M);return"translate("+(isFinite(C)?C:x(M))+",0)"})}function JF(c,p,x){c.attr("transform",function(M){var C=p(M);return"translate(0,"+(isFinite(C)?C:x(M))+")"})}e.svg.brush=function(){var c=pe(W,"brushstart","brush","brushend"),p=null,x=null,M=[0,0],C=[0,0],L,P,E=!0,F=!0,G=H1[0];function W(te){te.each(function(){var le=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",we).on("touchstart.brush",we),ue=le.selectAll(".background").data([0]);ue.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),le.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var xe=le.selectAll(".resize").data(G,J);xe.exit().remove(),xe.enter().append("g").attr("class",function(rr){return"resize "+rr}).style("cursor",function(rr){return KF[rr]}).append("rect").attr("x",function(rr){return/[ew]$/.test(rr)?-3:null}).attr("y",function(rr){return/^[ns]/.test(rr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),xe.style("display",W.empty()?"none":null);var Te=e.transition(le),ce=e.transition(ue),Ge;p&&(Ge=Vc(p),ce.attr("x",Ge[0]).attr("width",Ge[1]-Ge[0]),ee(Te)),x&&(Ge=Vc(x),ce.attr("y",Ge[0]).attr("height",Ge[1]-Ge[0]),he(Te)),$(Te)})}W.event=function(te){te.each(function(){var le=c.of(this,arguments),ue={x:M,y:C,i:L,j:P},xe=this.__chart__||ue;this.__chart__=ue,Xl?e.select(this).transition().each("start.brush",function(){L=xe.i,P=xe.j,M=xe.x,C=xe.y,le({type:"brushstart"})}).tween("brush:brush",function(){var Te=Uc(M,ue.x),ce=Uc(C,ue.y);return L=P=null,function(Ge){M=ue.x=Te(Ge),C=ue.y=ce(Ge),le({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=ue.i,P=ue.j,le({type:"brush",mode:"resize"}),le({type:"brushend"})}):(le({type:"brushstart"}),le({type:"brush",mode:"resize"}),le({type:"brushend"}))})};function $(te){te.selectAll(".resize").attr("transform",function(le){return"translate("+M[+/e$/.test(le)]+","+C[+/^s/.test(le)]+")"})}function ee(te){te.select(".extent").attr("x",M[0]),te.selectAll(".extent,.n>rect,.s>rect").attr("width",M[1]-M[0])}function he(te){te.select(".extent").attr("y",C[0]),te.selectAll(".extent,.e>rect,.w>rect").attr("height",C[1]-C[0])}function we(){var te=this,le=e.select(e.event.target),ue=c.of(te,arguments),xe=e.select(te),Te=le.datum(),ce=!/^(n|s)$/.test(Te)&&p,Ge=!/^(e|w)$/.test(Te)&&x,rr=le.classed("extent"),or=fr(te),ar,hr=e.mouse(te),dr,Sr=e.select(i(te)).on("keydown.brush",Jr).on("keyup.brush",Lt);if(e.event.changedTouches?Sr.on("touchmove.brush",rt).on("touchend.brush",Lr):Sr.on("mousemove.brush",rt).on("mouseup.brush",Lr),xe.interrupt().selectAll("*").interrupt(),rr)hr[0]=M[0]-hr[0],hr[1]=C[0]-hr[1];else if(Te){var pr=+/w$/.test(Te),Tr=+/^n/.test(Te);dr=[M[1-pr]-hr[0],C[1-Tr]-hr[1]],hr[0]=M[pr],hr[1]=C[Tr]}else e.event.altKey&&(ar=hr.slice());xe.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",le.style("cursor")),ue({type:"brushstart"}),rt();function Jr(){e.event.keyCode==32&&(rr||(ar=null,hr[0]-=M[1],hr[1]-=C[1],rr=2),ie())}function Lt(){e.event.keyCode==32&&rr==2&&(hr[0]+=M[1],hr[1]+=C[1],rr=0,ie())}function rt(){var qr=e.mouse(te),Kr=!1;dr&&(qr[0]+=dr[0],qr[1]+=dr[1]),rr||(e.event.altKey?(ar||(ar=[(M[0]+M[1])/2,(C[0]+C[1])/2]),hr[0]=M[+(qr[0]{(function(e,r){typeof iv=="object"&&typeof ub!="undefined"?r(iv):(e=e||self,r(e.d3=e.d3||{}))})(iv,function(e){"use strict";var r=new Date,t=new Date;function a(ne,Me,Ce,cr){function tr(De){return ne(De=arguments.length===0?new Date:new Date(+De)),De}return tr.floor=function(De){return ne(De=new Date(+De)),De},tr.ceil=function(De){return ne(De=new Date(De-1)),Me(De,1),ne(De),De},tr.round=function(De){var Le=tr(De),Ye=tr.ceil(De);return De-Le0))return Ze;do Ze.push(Ue=new Date(+De)),Me(De,Ye),ne(De);while(Ue=Le)for(;ne(Le),!De(Le);)Le.setTime(Le-1)},function(Le,Ye){if(Le>=Le)if(Ye<0)for(;++Ye<=0;)for(;Me(Le,-1),!De(Le););else for(;--Ye>=0;)for(;Me(Le,1),!De(Le););})},Ce&&(tr.count=function(De,Le){return r.setTime(+De),t.setTime(+Le),ne(r),ne(t),Math.floor(Ce(r,t))},tr.every=function(De){return De=Math.floor(De),!isFinite(De)||!(De>0)?null:De>1?tr.filter(cr?function(Le){return cr(Le)%De===0}:function(Le){return tr.count(0,Le)%De===0}):tr}),tr}var n=a(function(){},function(ne,Me){ne.setTime(+ne+Me)},function(ne,Me){return Me-ne});n.every=function(ne){return ne=Math.floor(ne),!isFinite(ne)||!(ne>0)?null:ne>1?a(function(Me){Me.setTime(Math.floor(Me/ne)*ne)},function(Me,Ce){Me.setTime(+Me+Ce*ne)},function(Me,Ce){return(Ce-Me)/ne}):n};var i=n.range,l=1e3,o=6e4,s=36e5,u=864e5,f=6048e5,v=a(function(ne){ne.setTime(ne-ne.getMilliseconds())},function(ne,Me){ne.setTime(+ne+Me*l)},function(ne,Me){return(Me-ne)/l},function(ne){return ne.getUTCSeconds()}),h=v.range,d=a(function(ne){ne.setTime(ne-ne.getMilliseconds()-ne.getSeconds()*l)},function(ne,Me){ne.setTime(+ne+Me*o)},function(ne,Me){return(Me-ne)/o},function(ne){return ne.getMinutes()}),m=d.range,g=a(function(ne){ne.setTime(ne-ne.getMilliseconds()-ne.getSeconds()*l-ne.getMinutes()*o)},function(ne,Me){ne.setTime(+ne+Me*s)},function(ne,Me){return(Me-ne)/s},function(ne){return ne.getHours()}),y=g.range,_=a(function(ne){ne.setHours(0,0,0,0)},function(ne,Me){ne.setDate(ne.getDate()+Me)},function(ne,Me){return(Me-ne-(Me.getTimezoneOffset()-ne.getTimezoneOffset())*o)/u},function(ne){return ne.getDate()-1}),w=_.range;function T(ne){return a(function(Me){Me.setDate(Me.getDate()-(Me.getDay()+7-ne)%7),Me.setHours(0,0,0,0)},function(Me,Ce){Me.setDate(Me.getDate()+Ce*7)},function(Me,Ce){return(Ce-Me-(Ce.getTimezoneOffset()-Me.getTimezoneOffset())*o)/f})}var b=T(0),A=T(1),S=T(2),k=T(3),q=T(4),D=T(5),R=T(6),z=b.range,N=A.range,H=S.range,O=k.range,J=q.range,X=D.range,B=R.range,I=a(function(ne){ne.setDate(1),ne.setHours(0,0,0,0)},function(ne,Me){ne.setMonth(ne.getMonth()+Me)},function(ne,Me){return Me.getMonth()-ne.getMonth()+(Me.getFullYear()-ne.getFullYear())*12},function(ne){return ne.getMonth()}),V=I.range,K=a(function(ne){ne.setMonth(0,1),ne.setHours(0,0,0,0)},function(ne,Me){ne.setFullYear(ne.getFullYear()+Me)},function(ne,Me){return Me.getFullYear()-ne.getFullYear()},function(ne){return ne.getFullYear()});K.every=function(ne){return!isFinite(ne=Math.floor(ne))||!(ne>0)?null:a(function(Me){Me.setFullYear(Math.floor(Me.getFullYear()/ne)*ne),Me.setMonth(0,1),Me.setHours(0,0,0,0)},function(Me,Ce){Me.setFullYear(Me.getFullYear()+Ce*ne)})};var Q=K.range,ie=a(function(ne){ne.setUTCSeconds(0,0)},function(ne,Me){ne.setTime(+ne+Me*o)},function(ne,Me){return(Me-ne)/o},function(ne){return ne.getUTCMinutes()}),me=ie.range,pe=a(function(ne){ne.setUTCMinutes(0,0,0)},function(ne,Me){ne.setTime(+ne+Me*s)},function(ne,Me){return(Me-ne)/s},function(ne){return ne.getUTCHours()}),ge=pe.range,j=a(function(ne){ne.setUTCHours(0,0,0,0)},function(ne,Me){ne.setUTCDate(ne.getUTCDate()+Me)},function(ne,Me){return(Me-ne)/u},function(ne){return ne.getUTCDate()-1}),_e=j.range;function se(ne){return a(function(Me){Me.setUTCDate(Me.getUTCDate()-(Me.getUTCDay()+7-ne)%7),Me.setUTCHours(0,0,0,0)},function(Me,Ce){Me.setUTCDate(Me.getUTCDate()+Ce*7)},function(Me,Ce){return(Ce-Me)/f})}var Se=se(0),ve=se(1),Ae=se(2),Y=se(3),re=se(4),U=se(5),de=se(6),be=Se.range,ye=ve.range,Fe=Ae.range,Re=Y.range,Pe=re.range,Ie=U.range,Be=de.range,Ne=a(function(ne){ne.setUTCDate(1),ne.setUTCHours(0,0,0,0)},function(ne,Me){ne.setUTCMonth(ne.getUTCMonth()+Me)},function(ne,Me){return Me.getUTCMonth()-ne.getUTCMonth()+(Me.getUTCFullYear()-ne.getUTCFullYear())*12},function(ne){return ne.getUTCMonth()}),Ee=Ne.range,Je=a(function(ne){ne.setUTCMonth(0,1),ne.setUTCHours(0,0,0,0)},function(ne,Me){ne.setUTCFullYear(ne.getUTCFullYear()+Me)},function(ne,Me){return Me.getUTCFullYear()-ne.getUTCFullYear()},function(ne){return ne.getUTCFullYear()});Je.every=function(ne){return!isFinite(ne=Math.floor(ne))||!(ne>0)?null:a(function(Me){Me.setUTCFullYear(Math.floor(Me.getUTCFullYear()/ne)*ne),Me.setUTCMonth(0,1),Me.setUTCHours(0,0,0,0)},function(Me,Ce){Me.setUTCFullYear(Me.getUTCFullYear()+Ce*ne)})};var We=Je.range;e.timeDay=_,e.timeDays=w,e.timeFriday=D,e.timeFridays=X,e.timeHour=g,e.timeHours=y,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=m,e.timeMonday=A,e.timeMondays=N,e.timeMonth=I,e.timeMonths=V,e.timeSaturday=R,e.timeSaturdays=B,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=b,e.timeSundays=z,e.timeThursday=q,e.timeThursdays=J,e.timeTuesday=S,e.timeTuesdays=H,e.timeWednesday=k,e.timeWednesdays=O,e.timeWeek=b,e.timeWeeks=z,e.timeYear=K,e.timeYears=Q,e.utcDay=j,e.utcDays=_e,e.utcFriday=U,e.utcFridays=Ie,e.utcHour=pe,e.utcHours=ge,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ie,e.utcMinutes=me,e.utcMonday=ve,e.utcMondays=ye,e.utcMonth=Ne,e.utcMonths=Ee,e.utcSaturday=de,e.utcSaturdays=Be,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=Se,e.utcSundays=be,e.utcThursday=re,e.utcThursdays=Pe,e.utcTuesday=Ae,e.utcTuesdays=Fe,e.utcWednesday=Y,e.utcWednesdays=Re,e.utcWeek=Se,e.utcWeeks=be,e.utcYear=Je,e.utcYears=We,Object.defineProperty(e,"__esModule",{value:!0})})});var os=Z((lv,fb)=>{(function(e,r){typeof lv=="object"&&typeof fb!="undefined"?r(lv,O1()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(lv,function(e,r){"use strict";function t(ae){if(0<=ae.y&&ae.y<100){var oe=new Date(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L);return oe.setFullYear(ae.y),oe}return new Date(ae.y,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L)}function a(ae){if(0<=ae.y&&ae.y<100){var oe=new Date(Date.UTC(-1,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L));return oe.setUTCFullYear(ae.y),oe}return new Date(Date.UTC(ae.y,ae.m,ae.d,ae.H,ae.M,ae.S,ae.L))}function n(ae,oe,qe){return{y:ae,m:oe,d:qe,H:0,M:0,S:0,L:0}}function i(ae){var oe=ae.dateTime,qe=ae.date,ke=ae.time,ir=ae.periods,vr=ae.days,sr=ae.shortDays,Mr=ae.months,Ur=ae.shortMonths,$r=h(ir),Vr=d(ir),St=h(vr),ea=d(vr),ka=h(sr),ra=d(sr),pn=h(Mr),Ia=d(Mr),ta=h(Ur),Ha=d(Ur),yr={a:Ul,A:Gl,b:rl,B:qc,c:null,d:I,e:I,f:me,H:V,I:K,j:Q,L:ie,m:pe,M:ge,p:Dc,q:ku,Q:Le,s:Ye,S:j,u:_e,U:se,V:Se,w:ve,W:Ae,x:null,X:null,y:Y,Y:re,Z:U,"%":De},lt={a:Cu,A:Su,b:Sa,B:Ec,c:null,d:de,e:de,f:Pe,H:be,I:ye,j:Fe,L:Re,m:Ie,M:Be,p:$o,q:jo,Q:Le,s:Ye,S:Ne,u:Ee,U:Je,V:We,w:ne,W:Me,x:null,X:null,y:Ce,Y:cr,Z:tr,"%":De},Wr={a:Ca,A:aa,b:In,B:Hn,c:Zt,d:q,e:q,f:O,H:R,I:R,j:D,L:H,m:k,M:z,p:yt,q:S,Q:X,s:B,S:N,u:g,U:y,V:_,w:m,W:w,x:at,X:sa,y:b,Y:T,Z:A,"%":J};yr.x=mt(qe,yr),yr.X=mt(ke,yr),yr.c=mt(oe,yr),lt.x=mt(qe,lt),lt.X=mt(ke,lt),lt.c=mt(oe,lt);function mt(mr,Zr){return function(jr){var nr=[],ua=-1,st=0,fa=mr.length,Rr,On,Vl;for(jr instanceof Date||(jr=new Date(+jr));++ua53)return null;"w"in nr||(nr.w=1),"Z"in nr?(st=a(n(nr.y,0,1)),fa=st.getUTCDay(),st=fa>4||fa===0?r.utcMonday.ceil(st):r.utcMonday(st),st=r.utcDay.offset(st,(nr.V-1)*7),nr.y=st.getUTCFullYear(),nr.m=st.getUTCMonth(),nr.d=st.getUTCDate()+(nr.w+6)%7):(st=t(n(nr.y,0,1)),fa=st.getDay(),st=fa>4||fa===0?r.timeMonday.ceil(st):r.timeMonday(st),st=r.timeDay.offset(st,(nr.V-1)*7),nr.y=st.getFullYear(),nr.m=st.getMonth(),nr.d=st.getDate()+(nr.w+6)%7)}else("W"in nr||"U"in nr)&&("w"in nr||(nr.w="u"in nr?nr.u%7:"W"in nr?1:0),fa="Z"in nr?a(n(nr.y,0,1)).getUTCDay():t(n(nr.y,0,1)).getDay(),nr.m=0,nr.d="W"in nr?(nr.w+6)%7+nr.W*7-(fa+5)%7:nr.w+nr.U*7-(fa+6)%7);return"Z"in nr?(nr.H+=nr.Z/100|0,nr.M+=nr.Z%100,a(nr)):t(nr)}}function ot(mr,Zr,jr,nr){for(var ua=0,st=Zr.length,fa=jr.length,Rr,On;ua=fa)return-1;if(Rr=Zr.charCodeAt(ua++),Rr===37){if(Rr=Zr.charAt(ua++),On=Wr[Rr in l?Zr.charAt(ua++):Rr],!On||(nr=On(mr,jr,nr))<0)return-1}else if(Rr!=jr.charCodeAt(nr++))return-1}return nr}function yt(mr,Zr,jr){var nr=$r.exec(Zr.slice(jr));return nr?(mr.p=Vr[nr[0].toLowerCase()],jr+nr[0].length):-1}function Ca(mr,Zr,jr){var nr=ka.exec(Zr.slice(jr));return nr?(mr.w=ra[nr[0].toLowerCase()],jr+nr[0].length):-1}function aa(mr,Zr,jr){var nr=St.exec(Zr.slice(jr));return nr?(mr.w=ea[nr[0].toLowerCase()],jr+nr[0].length):-1}function In(mr,Zr,jr){var nr=ta.exec(Zr.slice(jr));return nr?(mr.m=Ha[nr[0].toLowerCase()],jr+nr[0].length):-1}function Hn(mr,Zr,jr){var nr=pn.exec(Zr.slice(jr));return nr?(mr.m=Ia[nr[0].toLowerCase()],jr+nr[0].length):-1}function Zt(mr,Zr,jr){return ot(mr,oe,Zr,jr)}function at(mr,Zr,jr){return ot(mr,qe,Zr,jr)}function sa(mr,Zr,jr){return ot(mr,ke,Zr,jr)}function Ul(mr){return sr[mr.getDay()]}function Gl(mr){return vr[mr.getDay()]}function rl(mr){return Ur[mr.getMonth()]}function qc(mr){return Mr[mr.getMonth()]}function Dc(mr){return ir[+(mr.getHours()>=12)]}function ku(mr){return 1+~~(mr.getMonth()/3)}function Cu(mr){return sr[mr.getUTCDay()]}function Su(mr){return vr[mr.getUTCDay()]}function Sa(mr){return Ur[mr.getUTCMonth()]}function Ec(mr){return Mr[mr.getUTCMonth()]}function $o(mr){return ir[+(mr.getUTCHours()>=12)]}function jo(mr){return 1+~~(mr.getUTCMonth()/3)}return{format:function(mr){var Zr=mt(mr+="",yr);return Zr.toString=function(){return mr},Zr},parse:function(mr){var Zr=Tt(mr+="",!1);return Zr.toString=function(){return mr},Zr},utcFormat:function(mr){var Zr=mt(mr+="",lt);return Zr.toString=function(){return mr},Zr},utcParse:function(mr){var Zr=Tt(mr+="",!0);return Zr.toString=function(){return mr},Zr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ae,oe,qe){var ke=ae<0?"-":"",ir=(ke?-ae:ae)+"",vr=ir.length;return ke+(vr68?1900:2e3),qe+ke[0].length):-1}function A(ae,oe,qe){var ke=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(oe.slice(qe,qe+6));return ke?(ae.Z=ke[1]?0:-(ke[2]+(ke[3]||"00")),qe+ke[0].length):-1}function S(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+1));return ke?(ae.q=ke[0]*3-3,qe+ke[0].length):-1}function k(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.m=ke[0]-1,qe+ke[0].length):-1}function q(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.d=+ke[0],qe+ke[0].length):-1}function D(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+3));return ke?(ae.m=0,ae.d=+ke[0],qe+ke[0].length):-1}function R(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.H=+ke[0],qe+ke[0].length):-1}function z(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.M=+ke[0],qe+ke[0].length):-1}function N(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+2));return ke?(ae.S=+ke[0],qe+ke[0].length):-1}function H(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+3));return ke?(ae.L=+ke[0],qe+ke[0].length):-1}function O(ae,oe,qe){var ke=o.exec(oe.slice(qe,qe+6));return ke?(ae.L=Math.floor(ke[0]/1e3),qe+ke[0].length):-1}function J(ae,oe,qe){var ke=s.exec(oe.slice(qe,qe+1));return ke?qe+ke[0].length:-1}function X(ae,oe,qe){var ke=o.exec(oe.slice(qe));return ke?(ae.Q=+ke[0],qe+ke[0].length):-1}function B(ae,oe,qe){var ke=o.exec(oe.slice(qe));return ke?(ae.s=+ke[0],qe+ke[0].length):-1}function I(ae,oe){return f(ae.getDate(),oe,2)}function V(ae,oe){return f(ae.getHours(),oe,2)}function K(ae,oe){return f(ae.getHours()%12||12,oe,2)}function Q(ae,oe){return f(1+r.timeDay.count(r.timeYear(ae),ae),oe,3)}function ie(ae,oe){return f(ae.getMilliseconds(),oe,3)}function me(ae,oe){return ie(ae,oe)+"000"}function pe(ae,oe){return f(ae.getMonth()+1,oe,2)}function ge(ae,oe){return f(ae.getMinutes(),oe,2)}function j(ae,oe){return f(ae.getSeconds(),oe,2)}function _e(ae){var oe=ae.getDay();return oe===0?7:oe}function se(ae,oe){return f(r.timeSunday.count(r.timeYear(ae)-1,ae),oe,2)}function Se(ae,oe){var qe=ae.getDay();return ae=qe>=4||qe===0?r.timeThursday(ae):r.timeThursday.ceil(ae),f(r.timeThursday.count(r.timeYear(ae),ae)+(r.timeYear(ae).getDay()===4),oe,2)}function ve(ae){return ae.getDay()}function Ae(ae,oe){return f(r.timeMonday.count(r.timeYear(ae)-1,ae),oe,2)}function Y(ae,oe){return f(ae.getFullYear()%100,oe,2)}function re(ae,oe){return f(ae.getFullYear()%1e4,oe,4)}function U(ae){var oe=ae.getTimezoneOffset();return(oe>0?"-":(oe*=-1,"+"))+f(oe/60|0,"0",2)+f(oe%60,"0",2)}function de(ae,oe){return f(ae.getUTCDate(),oe,2)}function be(ae,oe){return f(ae.getUTCHours(),oe,2)}function ye(ae,oe){return f(ae.getUTCHours()%12||12,oe,2)}function Fe(ae,oe){return f(1+r.utcDay.count(r.utcYear(ae),ae),oe,3)}function Re(ae,oe){return f(ae.getUTCMilliseconds(),oe,3)}function Pe(ae,oe){return Re(ae,oe)+"000"}function Ie(ae,oe){return f(ae.getUTCMonth()+1,oe,2)}function Be(ae,oe){return f(ae.getUTCMinutes(),oe,2)}function Ne(ae,oe){return f(ae.getUTCSeconds(),oe,2)}function Ee(ae){var oe=ae.getUTCDay();return oe===0?7:oe}function Je(ae,oe){return f(r.utcSunday.count(r.utcYear(ae)-1,ae),oe,2)}function We(ae,oe){var qe=ae.getUTCDay();return ae=qe>=4||qe===0?r.utcThursday(ae):r.utcThursday.ceil(ae),f(r.utcThursday.count(r.utcYear(ae),ae)+(r.utcYear(ae).getUTCDay()===4),oe,2)}function ne(ae){return ae.getUTCDay()}function Me(ae,oe){return f(r.utcMonday.count(r.utcYear(ae)-1,ae),oe,2)}function Ce(ae,oe){return f(ae.getUTCFullYear()%100,oe,2)}function cr(ae,oe){return f(ae.getUTCFullYear()%1e4,oe,4)}function tr(){return"+0000"}function De(){return"%"}function Le(ae){return+ae}function Ye(ae){return Math.floor(+ae/1e3)}var Ze;Ue({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ue(ae){return Ze=i(ae),e.timeFormat=Ze.format,e.timeParse=Ze.parse,e.utcFormat=Ze.utcFormat,e.utcParse=Ze.utcParse,Ze}var Oe="%Y-%m-%dT%H:%M:%S.%LZ";function Ke(ae){return ae.toISOString()}var fr=Date.prototype.toISOString?Ke:e.utcFormat(Oe);function lr(ae){var oe=new Date(ae);return isNaN(oe)?null:oe}var ze=+new Date("2000-01-01T00:00:00.000Z")?lr:e.utcParse(Oe);e.isoFormat=fr,e.isoParse=ze,e.timeFormatDefaultLocale=Ue,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var B1=Z((ov,cb)=>{(function(e,r){typeof ov=="object"&&typeof cb!="undefined"?r(ov):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(ov,function(e){"use strict";function r(k){return Math.abs(k=Math.round(k))>=1e21?k.toLocaleString("en").replace(/,/g,""):k.toString(10)}function t(k,q){if((D=(k=q?k.toExponential(q-1):k.toExponential()).indexOf("e"))<0)return null;var D,R=k.slice(0,D);return[R.length>1?R[0]+R.slice(2):R,+k.slice(D+1)]}function a(k){return k=t(Math.abs(k)),k?k[1]:NaN}function n(k,q){return function(D,R){for(var z=D.length,N=[],H=0,O=k[0],J=0;z>0&&O>0&&(J+O+1>R&&(O=Math.max(1,R-J)),N.push(D.substring(z-=O,z+O)),!((J+=O+1)>R));)O=k[H=(H+1)%k.length];return N.reverse().join(q)}}function i(k){return function(q){return q.replace(/[0-9]/g,function(D){return k[+D]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(k){if(!(q=l.exec(k)))throw new Error("invalid format: "+k);var q;return new s({fill:q[1],align:q[2],sign:q[3],symbol:q[4],zero:q[5],width:q[6],comma:q[7],precision:q[8]&&q[8].slice(1),trim:q[9],type:q[10]})}o.prototype=s.prototype;function s(k){this.fill=k.fill===void 0?" ":k.fill+"",this.align=k.align===void 0?">":k.align+"",this.sign=k.sign===void 0?"-":k.sign+"",this.symbol=k.symbol===void 0?"":k.symbol+"",this.zero=!!k.zero,this.width=k.width===void 0?void 0:+k.width,this.comma=!!k.comma,this.precision=k.precision===void 0?void 0:+k.precision,this.trim=!!k.trim,this.type=k.type===void 0?"":k.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(k){e:for(var q=k.length,D=1,R=-1,z;D0&&(R=0);break}return R>0?k.slice(0,R)+k.slice(z+1):k}var f;function v(k,q){var D=t(k,q);if(!D)return k+"";var R=D[0],z=D[1],N=z-(f=Math.max(-8,Math.min(8,Math.floor(z/3)))*3)+1,H=R.length;return N===H?R:N>H?R+new Array(N-H+1).join("0"):N>0?R.slice(0,N)+"."+R.slice(N):"0."+new Array(1-N).join("0")+t(k,Math.max(0,q+N-1))[0]}function h(k,q){var D=t(k,q);if(!D)return k+"";var R=D[0],z=D[1];return z<0?"0."+new Array(-z).join("0")+R:R.length>z+1?R.slice(0,z+1)+"."+R.slice(z+1):R+new Array(z-R.length+2).join("0")}var d={"%":function(k,q){return(k*100).toFixed(q)},b:function(k){return Math.round(k).toString(2)},c:function(k){return k+""},d:r,e:function(k,q){return k.toExponential(q)},f:function(k,q){return k.toFixed(q)},g:function(k,q){return k.toPrecision(q)},o:function(k){return Math.round(k).toString(8)},p:function(k,q){return h(k*100,q)},r:h,s:v,X:function(k){return Math.round(k).toString(16).toUpperCase()},x:function(k){return Math.round(k).toString(16)}};function m(k){return k}var g=Array.prototype.map,y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function _(k){var q=k.grouping===void 0||k.thousands===void 0?m:n(g.call(k.grouping,Number),k.thousands+""),D=k.currency===void 0?"":k.currency[0]+"",R=k.currency===void 0?"":k.currency[1]+"",z=k.decimal===void 0?".":k.decimal+"",N=k.numerals===void 0?m:i(g.call(k.numerals,String)),H=k.percent===void 0?"%":k.percent+"",O=k.minus===void 0?"-":k.minus+"",J=k.nan===void 0?"NaN":k.nan+"";function X(I){I=o(I);var V=I.fill,K=I.align,Q=I.sign,ie=I.symbol,me=I.zero,pe=I.width,ge=I.comma,j=I.precision,_e=I.trim,se=I.type;se==="n"?(ge=!0,se="g"):d[se]||(j===void 0&&(j=12),_e=!0,se="g"),(me||V==="0"&&K==="=")&&(me=!0,V="0",K="=");var Se=ie==="$"?D:ie==="#"&&/[boxX]/.test(se)?"0"+se.toLowerCase():"",ve=ie==="$"?R:/[%p]/.test(se)?H:"",Ae=d[se],Y=/[defgprs%]/.test(se);j=j===void 0?6:/[gprs]/.test(se)?Math.max(1,Math.min(21,j)):Math.max(0,Math.min(20,j));function re(U){var de=Se,be=ve,ye,Fe,Re;if(se==="c")be=Ae(U)+be,U="";else{U=+U;var Pe=U<0||1/U<0;if(U=isNaN(U)?J:Ae(Math.abs(U),j),_e&&(U=u(U)),Pe&&+U==0&&Q!=="+"&&(Pe=!1),de=(Pe?Q==="("?Q:O:Q==="-"||Q==="("?"":Q)+de,be=(se==="s"?y[8+f/3]:"")+be+(Pe&&Q==="("?")":""),Y){for(ye=-1,Fe=U.length;++yeRe||Re>57){be=(Re===46?z+U.slice(ye+1):U.slice(ye))+be,U=U.slice(0,ye);break}}}ge&&!me&&(U=q(U,1/0));var Ie=de.length+U.length+be.length,Be=Ie>1)+de+U+be+Be.slice(Ie);break;default:U=Be+de+U+be;break}return N(U)}return re.toString=function(){return I+""},re}function B(I,V){var K=X((I=o(I),I.type="f",I)),Q=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,ie=Math.pow(10,-Q),me=y[8+Q/3];return function(pe){return K(ie*pe)+me}}return{format:X,formatPrefix:B}}var w;T({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function T(k){return w=_(k),e.format=w.format,e.formatPrefix=w.formatPrefix,w}function b(k){return Math.max(0,-a(Math.abs(k)))}function A(k,q){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(q)/3)))*3-a(Math.abs(k)))}function S(k,q){return k=Math.abs(k),q=Math.abs(q)-k,Math.max(0,a(q)-a(k))+1}e.FormatSpecifier=s,e.formatDefaultLocale=T,e.formatLocale=_,e.formatSpecifier=o,e.precisionFixed=b,e.precisionPrefix=A,e.precisionRound=S,Object.defineProperty(e,"__esModule",{value:!0})})});var hb=Z((fie,vb)=>{"use strict";vb.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var Hr=Z((cie,db)=>{"use strict";var iI=hb();db.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&iI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Bt=Z((vie,pb)=>{"use strict";pb.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var Y1=Z((sv,mb)=>{(function(e,r){typeof sv=="object"&&typeof mb!="undefined"?r(sv):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(sv,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(o[s]&3)<<4|o[s+1]>>4],f+=r[(o[s+1]&15)<<2|o[s+2]>>6],f+=r[o[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(l){var o=l.length*.75,s=l.length,u,f=0,v,h,d,m;l[l.length-1]==="="&&(o--,l[l.length-2]==="="&&o--);var g=new ArrayBuffer(o),y=new Uint8Array(g);for(u=0;u>4,y[f++]=(h&15)<<4|d>>2,y[f++]=(d&3)<<6|m&63;return g};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var nl=Z((hie,yb)=>{"use strict";yb.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var nn=Z(Un=>{"use strict";var lI=Y1().decode,oI=nl(),U1=Array.isArray,sI=ArrayBuffer,uI=DataView;function gb(e){return sI.isView(e)&&!(e instanceof uI)}Un.isTypedArray=gb;function uv(e){return U1(e)||gb(e)}Un.isArrayOrTypedArray=uv;function fI(e){return!uv(e[0])}Un.isArray1D=fI;Un.ensureArray=function(e,r){return U1(e)||(e=[]),e.length=r,e};var na={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};na.uint8c=na.u1c;na.uint8=na.u1;na.int8=na.i1;na.uint16=na.u2;na.int16=na.i2;na.uint32=na.u4;na.int32=na.i4;na.float32=na.f4;na.float64=na.f8;function G1(e){return e.constructor===ArrayBuffer}Un.isArrayBuffer=G1;Un.decodeTypedArraySpec=function(e){var r=[],t=cI(e),a=t.dtype,n=na[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,l=t.bdata;G1(l)||(l=lI(l));var o=t.shape===void 0?[l.byteLength/i]:(""+t.shape).split(",");o.reverse();var s=o.length,u,f,v=+o[0],h=i*v,d=0;if(s===1)r=new n(l);else if(s===2)for(u=+o[1],f=0;f{"use strict";var xb=Hr(),W1=nn().isArrayOrTypedArray;Mb.exports=function(r,t){if(xb(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,l,o;for(o=0;o{"use strict";var ss=fv(),mI=/^\w*$/,yI=0,Ab=1,cv=2,kb=3,Ql=4;Cb.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=ss(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|cv,v.set(h,null);if(f){for(i=d;i{"use strict";var gI=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,bI=/^[^\.\[\]]+$/;Lb.exports=function(e,r){for(;r;){var t=e.match(gI);if(t)e=t[1];else if(e.match(bI))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var vv=Z((gie,Db)=>{"use strict";var xI=Hr();Db.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return xI(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var Rb=Z((bie,Pb)=>{"use strict";var Eb=nn().isArrayOrTypedArray,Iu=nl();Pb.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(Eb(n)&&Eb(i)&&Iu(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function _I(e,r){var t=e%r;return t<0?t+r:t}function wI(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}zb.exports={mod:_I,modHalf:wI}});var bn=Z((_ie,hv)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(Y,re){if(Y=Y||"",re=re||{},Y instanceof s)return Y;if(!(this instanceof s))return new s(Y,re);var U=u(Y);this._originalInput=Y,this._r=U.r,this._g=U.g,this._b=U.b,this._a=U.a,this._roundA=n(100*this._a)/100,this._format=re.format||U.format,this._gradientType=re.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=U.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var Y=this.toRgb();return(Y.r*299+Y.g*587+Y.b*114)/1e3},getLuminance:function(){var Y=this.toRgb(),re,U,de,be,ye,Fe;return re=Y.r/255,U=Y.g/255,de=Y.b/255,re<=.03928?be=re/12.92:be=e.pow((re+.055)/1.055,2.4),U<=.03928?ye=U/12.92:ye=e.pow((U+.055)/1.055,2.4),de<=.03928?Fe=de/12.92:Fe=e.pow((de+.055)/1.055,2.4),.2126*be+.7152*ye+.0722*Fe},setAlpha:function(Y){return this._a=I(Y),this._roundA=n(100*this._a)/100,this},toHsv:function(){var Y=d(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,v:Y.v,a:this._a}},toHsvString:function(){var Y=d(this._r,this._g,this._b),re=n(Y.h*360),U=n(Y.s*100),de=n(Y.v*100);return this._a==1?"hsv("+re+", "+U+"%, "+de+"%)":"hsva("+re+", "+U+"%, "+de+"%, "+this._roundA+")"},toHsl:function(){var Y=v(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,l:Y.l,a:this._a}},toHslString:function(){var Y=v(this._r,this._g,this._b),re=n(Y.h*360),U=n(Y.s*100),de=n(Y.l*100);return this._a==1?"hsl("+re+", "+U+"%, "+de+"%)":"hsla("+re+", "+U+"%, "+de+"%, "+this._roundA+")"},toHex:function(Y){return g(this._r,this._g,this._b,Y)},toHexString:function(Y){return"#"+this.toHex(Y)},toHex8:function(Y){return y(this._r,this._g,this._b,this._a,Y)},toHex8String:function(Y){return"#"+this.toHex8(Y)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(V(this._r,255)*100)+"%",g:n(V(this._g,255)*100)+"%",b:n(V(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%)":"rgba("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:X[g(this._r,this._g,this._b,!0)]||!1},toFilter:function(Y){var re="#"+_(this._r,this._g,this._b,this._a),U=re,de=this._gradientType?"GradientType = 1, ":"";if(Y){var be=s(Y);U="#"+_(be._r,be._g,be._b,be._a)}return"progid:DXImageTransform.Microsoft.gradient("+de+"startColorstr="+re+",endColorstr="+U+")"},toString:function(Y){var re=!!Y;Y=Y||this._format;var U=!1,de=this._a<1&&this._a>=0,be=!re&&de&&(Y==="hex"||Y==="hex6"||Y==="hex3"||Y==="hex4"||Y==="hex8"||Y==="name");return be?Y==="name"&&this._a===0?this.toName():this.toRgbString():(Y==="rgb"&&(U=this.toRgbString()),Y==="prgb"&&(U=this.toPercentageRgbString()),(Y==="hex"||Y==="hex6")&&(U=this.toHexString()),Y==="hex3"&&(U=this.toHexString(!0)),Y==="hex4"&&(U=this.toHex8String(!0)),Y==="hex8"&&(U=this.toHex8String()),Y==="name"&&(U=this.toName()),Y==="hsl"&&(U=this.toHslString()),Y==="hsv"&&(U=this.toHsvString()),U||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(Y,re){var U=Y.apply(null,[this].concat([].slice.call(re)));return this._r=U._r,this._g=U._g,this._b=U._b,this.setAlpha(U._a),this},lighten:function(){return this._applyModification(A,arguments)},brighten:function(){return this._applyModification(S,arguments)},darken:function(){return this._applyModification(k,arguments)},desaturate:function(){return this._applyModification(w,arguments)},saturate:function(){return this._applyModification(T,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(q,arguments)},_applyCombination:function(Y,re){return Y.apply(null,[this].concat([].slice.call(re)))},analogous:function(){return this._applyCombination(H,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(O,arguments)},splitcomplement:function(){return this._applyCombination(N,arguments)},triad:function(){return this._applyCombination(R,arguments)},tetrad:function(){return this._applyCombination(z,arguments)}},s.fromRatio=function(Y,re){if(typeof Y=="object"){var U={};for(var de in Y)Y.hasOwnProperty(de)&&(de==="a"?U[de]=Y[de]:U[de]=ge(Y[de]));Y=U}return s(Y,re)};function u(Y){var re={r:0,g:0,b:0},U=1,de=null,be=null,ye=null,Fe=!1,Re=!1;return typeof Y=="string"&&(Y=ve(Y)),typeof Y=="object"&&(Se(Y.r)&&Se(Y.g)&&Se(Y.b)?(re=f(Y.r,Y.g,Y.b),Fe=!0,Re=String(Y.r).substr(-1)==="%"?"prgb":"rgb"):Se(Y.h)&&Se(Y.s)&&Se(Y.v)?(de=ge(Y.s),be=ge(Y.v),re=m(Y.h,de,be),Fe=!0,Re="hsv"):Se(Y.h)&&Se(Y.s)&&Se(Y.l)&&(de=ge(Y.s),ye=ge(Y.l),re=h(Y.h,de,ye),Fe=!0,Re="hsl"),Y.hasOwnProperty("a")&&(U=Y.a)),U=I(U),{ok:Fe,format:Y.format||Re,r:i(255,l(re.r,0)),g:i(255,l(re.g,0)),b:i(255,l(re.b,0)),a:U}}function f(Y,re,U){return{r:V(Y,255)*255,g:V(re,255)*255,b:V(U,255)*255}}function v(Y,re,U){Y=V(Y,255),re=V(re,255),U=V(U,255);var de=l(Y,re,U),be=i(Y,re,U),ye,Fe,Re=(de+be)/2;if(de==be)ye=Fe=0;else{var Pe=de-be;switch(Fe=Re>.5?Pe/(2-de-be):Pe/(de+be),de){case Y:ye=(re-U)/Pe+(re1&&(Ne-=1),Ne<1/6?Ie+(Be-Ie)*6*Ne:Ne<1/2?Be:Ne<2/3?Ie+(Be-Ie)*(2/3-Ne)*6:Ie}if(re===0)de=be=ye=U;else{var Re=U<.5?U*(1+re):U+re-U*re,Pe=2*U-Re;de=Fe(Pe,Re,Y+1/3),be=Fe(Pe,Re,Y),ye=Fe(Pe,Re,Y-1/3)}return{r:de*255,g:be*255,b:ye*255}}function d(Y,re,U){Y=V(Y,255),re=V(re,255),U=V(U,255);var de=l(Y,re,U),be=i(Y,re,U),ye,Fe,Re=de,Pe=de-be;if(Fe=de===0?0:Pe/de,de==be)ye=0;else{switch(de){case Y:ye=(re-U)/Pe+(re>1)+720)%360;--re;)de.h=(de.h+be)%360,ye.push(s(de));return ye}function O(Y,re){re=re||6;for(var U=s(Y).toHsv(),de=U.h,be=U.s,ye=U.v,Fe=[],Re=1/re;re--;)Fe.push(s({h:de,s:be,v:ye})),ye=(ye+Re)%1;return Fe}s.mix=function(Y,re,U){U=U===0?0:U||50;var de=s(Y).toRgb(),be=s(re).toRgb(),ye=U/100,Fe={r:(be.r-de.r)*ye+de.r,g:(be.g-de.g)*ye+de.g,b:(be.b-de.b)*ye+de.b,a:(be.a-de.a)*ye+de.a};return s(Fe)},s.readability=function(Y,re){var U=s(Y),de=s(re);return(e.max(U.getLuminance(),de.getLuminance())+.05)/(e.min(U.getLuminance(),de.getLuminance())+.05)},s.isReadable=function(Y,re,U){var de=s.readability(Y,re),be,ye;switch(ye=!1,be=Ae(U),be.level+be.size){case"AAsmall":case"AAAlarge":ye=de>=4.5;break;case"AAlarge":ye=de>=3;break;case"AAAsmall":ye=de>=7;break}return ye},s.mostReadable=function(Y,re,U){var de=null,be=0,ye,Fe,Re,Pe;U=U||{},Fe=U.includeFallbackColors,Re=U.level,Pe=U.size;for(var Ie=0;Iebe&&(be=ye,de=s(re[Ie]));return s.isReadable(Y,de,{level:Re,size:Pe})||!Fe?de:(U.includeFallbackColors=!1,s.mostReadable(Y,["#fff","#000"],U))};var J=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},X=s.hexNames=B(J);function B(Y){var re={};for(var U in Y)Y.hasOwnProperty(U)&&(re[Y[U]]=U);return re}function I(Y){return Y=parseFloat(Y),(isNaN(Y)||Y<0||Y>1)&&(Y=1),Y}function V(Y,re){ie(Y)&&(Y="100%");var U=me(Y);return Y=i(re,l(0,parseFloat(Y))),U&&(Y=parseInt(Y*re,10)/100),e.abs(Y-re)<1e-6?1:Y%re/parseFloat(re)}function K(Y){return i(1,l(0,Y))}function Q(Y){return parseInt(Y,16)}function ie(Y){return typeof Y=="string"&&Y.indexOf(".")!=-1&&parseFloat(Y)===1}function me(Y){return typeof Y=="string"&&Y.indexOf("%")!=-1}function pe(Y){return Y.length==1?"0"+Y:""+Y}function ge(Y){return Y<=1&&(Y=Y*100+"%"),Y}function j(Y){return e.round(parseFloat(Y)*255).toString(16)}function _e(Y){return Q(Y)/255}var se=function(){var Y="[-\\+]?\\d+%?",re="[-\\+]?\\d*\\.\\d+%?",U="(?:"+re+")|(?:"+Y+")",de="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?",be="[\\s|\\(]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")[,|\\s]+("+U+")\\s*\\)?";return{CSS_UNIT:new RegExp(U),rgb:new RegExp("rgb"+de),rgba:new RegExp("rgba"+be),hsl:new RegExp("hsl"+de),hsla:new RegExp("hsla"+be),hsv:new RegExp("hsv"+de),hsva:new RegExp("hsva"+be),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Se(Y){return!!se.CSS_UNIT.exec(Y)}function ve(Y){Y=Y.replace(r,"").replace(t,"").toLowerCase();var re=!1;if(J[Y])Y=J[Y],re=!0;else if(Y=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var U;return(U=se.rgb.exec(Y))?{r:U[1],g:U[2],b:U[3]}:(U=se.rgba.exec(Y))?{r:U[1],g:U[2],b:U[3],a:U[4]}:(U=se.hsl.exec(Y))?{h:U[1],s:U[2],l:U[3]}:(U=se.hsla.exec(Y))?{h:U[1],s:U[2],l:U[3],a:U[4]}:(U=se.hsv.exec(Y))?{h:U[1],s:U[2],v:U[3]}:(U=se.hsva.exec(Y))?{h:U[1],s:U[2],v:U[3],a:U[4]}:(U=se.hex8.exec(Y))?{r:Q(U[1]),g:Q(U[2]),b:Q(U[3]),a:_e(U[4]),format:re?"name":"hex8"}:(U=se.hex6.exec(Y))?{r:Q(U[1]),g:Q(U[2]),b:Q(U[3]),format:re?"name":"hex"}:(U=se.hex4.exec(Y))?{r:Q(U[1]+""+U[1]),g:Q(U[2]+""+U[2]),b:Q(U[3]+""+U[3]),a:_e(U[4]+""+U[4]),format:re?"name":"hex8"}:(U=se.hex3.exec(Y))?{r:Q(U[1]+""+U[1]),g:Q(U[2]+""+U[2]),b:Q(U[3]+""+U[3]),format:re?"name":"hex"}:!1}function Ae(Y){var re,U;return Y=Y||{level:"AA",size:"small"},re=(Y.level||"AA").toUpperCase(),U=(Y.size||"small").toLowerCase(),re!=="AA"&&re!=="AAA"&&(re="AA"),U!=="small"&&U!=="large"&&(U="small"),{level:re,size:U}}typeof hv!="undefined"&&hv.exports?hv.exports=s:window.tinycolor=s})(Math)});var Yt=Z(Bu=>{"use strict";var Nb=nl(),Hu=Array.isArray;function TI(e,r){var t,a;for(t=0;t{"use strict";Fb.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var Yu=Z((Mie,Ib)=>{"use strict";Ib.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var fs=Z((Aie,Bb)=>{"use strict";var Hb=Yu(),Ob=ha(),Z1=Ob({editType:"none"});Z1.family.dflt=Hb.HOVERFONT;Z1.size.dflt=Hb.HOVERFONTSIZE;Bb.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Z1,grouptitlefont:Ob({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var mv=Z((kie,Yb)=>{"use strict";var MI=ha(),dv=fs().hoverlabel,pv=Yt().extendFlat;Yb.exports={hoverlabel:{bgcolor:pv({},dv.bgcolor,{arrayOk:!0}),bordercolor:pv({},dv.bordercolor,{arrayOk:!0}),font:MI({arrayOk:!0,editType:"none"}),align:pv({},dv.align,{arrayOk:!0}),namelength:pv({},dv.namelength,{arrayOk:!0}),editType:"none"}}});var Gn=Z((Cie,Ub)=>{"use strict";var AI=ha(),kI=mv();Ub.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:AI({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:kI.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var $l=Z((Sie,Wb)=>{"use strict";var CI=bn(),yv={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Gb=yv.RdBu;function SI(e,r){if(r||(r=Gb),!e)return r;function t(){try{e=yv[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Vb(e)?e:r}function Vb(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";jl.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];jl.defaultLine="#444";jl.lightLine="#eee";jl.background="#fff";jl.borderLine="#BEC8D9";jl.lightFraction=100*10/11});var Er=Z((qie,Zb)=>{"use strict";var Wa=bn(),qI=Hr(),DI=nn().isTypedArray,Xt=Zb.exports={},gv=hi();Xt.defaults=gv.defaults;var EI=Xt.defaultLine=gv.defaultLine;Xt.lightLine=gv.lightLine;var J1=Xt.background=gv.background;Xt.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};Xt.rgb=function(e){return Xt.tinyRGB(Wa(e))};Xt.opacity=function(e){return e?Wa(e).getAlpha():0};Xt.addOpacity=function(e,r){var t=Wa(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};Xt.combine=function(e,r){var t=Wa(e).toRgb();if(t.a===1)return Wa(e).toRgbString();var a=Wa(r||J1).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return Wa(i).toRgbString()};Xt.interpolate=function(e,r,t){var a=Wa(e).toRgb(),n=Wa(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return Wa(i).toRgbString()};Xt.contrast=function(e,r,t){var a=Wa(e);a.getAlpha()!==1&&(a=Wa(Xt.combine(e,J1)));var n=a.isDark()?r?a.lighten(r):J1:t?a.darken(t):EI;return n.toString()};Xt.stroke=function(e,r){var t=Wa(r);e.style({stroke:Xt.tinyRGB(t),"stroke-opacity":t.getAlpha()})};Xt.fill=function(e,r){var t=Wa(r);e.style({fill:Xt.tinyRGB(t),"fill-opacity":t.getAlpha()})};Xt.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var l=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+l+", "+a[3]+")":"rgb("+l+")"}});var bv=Z((Die,Xb)=>{"use strict";Xb.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var cs=Z(Jb=>{"use strict";Jb.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var jb=Z(Za=>{"use strict";var K1=Hr(),Kb=bn(),Qb=Yt().extendFlat,PI=Gn(),RI=$l(),zI=Er(),NI=bv().DESELECTDIM,vs=fv(),$b=cs().counter,FI=us().modHalf,di=nn().isArrayOrTypedArray,il=nn().isTypedArraySpec,ll=nn().decodeTypedArraySpec;Za.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(di(e)?e:il(e)?ll(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}il(e)&&(e=ll(e)),e%1||!K1(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){il(e)&&(e=ll(e)),Kb(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return Kb(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(RI.get(e,t))}},angle:{coerceFunction:function(e,r,t){il(e)&&(e=ll(e)),e==="auto"?r.set("auto"):K1(e)?r.set(FI(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||$b(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!$b(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var ex={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},rx={};function tx(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),tx(a,r[t]))}}tx(ex,rx);ax.exports={configAttributes:ex,dfltConfig:rx}});var $1=Z((zie,nx)=>{"use strict";var Q1=Ir(),II=Hr(),Uu=[];nx.exports=function(e,r){if(Uu.indexOf(e)!==-1)return;Uu.push(e);var t=1e3;II(r)?t=r:r==="long"&&(t=3e3);var a=Q1.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Uu);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=Uu.indexOf(o);s!==-1&&Uu.splice(s,1),Q1.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=Q1.select(this);o.append("button").classed("notifier-close",!0).html("×").on("click",function(){o.transition().call(i)});for(var s=o.append("p"),u=l.split(//g),f=0;f{"use strict";var hs=eo().dfltConfig,j1=$1(),ep=ix.exports={};ep.log=function(){var e;if(hs.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};ep.warn=function(){var e;if(hs.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};ep.error=function(){var e;if(hs.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var _v=Z((Fie,lx)=>{"use strict";lx.exports=function(){}});var rp=Z((Iie,ox)=>{"use strict";ox.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{sx.exports=HI;function HI(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var cx=Z((Oie,fx)=>{fx.exports=OI;function OI(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var hx=Z((Bie,vx)=>{vx.exports=BI;function BI(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var tp=Z((Yie,dx)=>{dx.exports=YI;function YI(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var mx=Z((Uie,px)=>{px.exports=UI;function UI(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],l=r[7],o=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=l,e[14]=o}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var gx=Z((Gie,yx)=>{yx.exports=GI;function GI(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],g=r[13],y=r[14],_=r[15],w=t*o-a*l,T=t*s-n*l,b=t*u-i*l,A=a*s-n*o,S=a*u-i*o,k=n*u-i*s,q=f*g-v*m,D=f*y-h*m,R=f*_-d*m,z=v*y-h*g,N=v*_-d*g,H=h*_-d*y,O=w*H-T*N+b*z+A*R-S*D+k*q;return O?(O=1/O,e[0]=(o*H-s*N+u*z)*O,e[1]=(n*N-a*H-i*z)*O,e[2]=(g*k-y*S+_*A)*O,e[3]=(h*S-v*k-d*A)*O,e[4]=(s*R-l*H-u*D)*O,e[5]=(t*H-n*R+i*D)*O,e[6]=(y*b-m*k-_*T)*O,e[7]=(f*k-h*b+d*T)*O,e[8]=(l*N-o*R+u*q)*O,e[9]=(a*R-t*N-i*q)*O,e[10]=(m*S-g*b+_*w)*O,e[11]=(v*b-f*S-d*w)*O,e[12]=(o*D-l*z-s*q)*O,e[13]=(t*z-a*D+n*q)*O,e[14]=(g*T-m*A-y*w)*O,e[15]=(f*A-v*T+h*w)*O,e):null}});var xx=Z((Vie,bx)=>{bx.exports=VI;function VI(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],g=r[13],y=r[14],_=r[15];return e[0]=o*(h*_-d*y)-v*(s*_-u*y)+g*(s*d-u*h),e[1]=-(a*(h*_-d*y)-v*(n*_-i*y)+g*(n*d-i*h)),e[2]=a*(s*_-u*y)-o*(n*_-i*y)+g*(n*u-i*s),e[3]=-(a*(s*d-u*h)-o*(n*d-i*h)+v*(n*u-i*s)),e[4]=-(l*(h*_-d*y)-f*(s*_-u*y)+m*(s*d-u*h)),e[5]=t*(h*_-d*y)-f*(n*_-i*y)+m*(n*d-i*h),e[6]=-(t*(s*_-u*y)-l*(n*_-i*y)+m*(n*u-i*s)),e[7]=t*(s*d-u*h)-l*(n*d-i*h)+f*(n*u-i*s),e[8]=l*(v*_-d*g)-f*(o*_-u*g)+m*(o*d-u*v),e[9]=-(t*(v*_-d*g)-f*(a*_-i*g)+m*(a*d-i*v)),e[10]=t*(o*_-u*g)-l*(a*_-i*g)+m*(a*u-i*o),e[11]=-(t*(o*d-u*v)-l*(a*d-i*v)+f*(a*u-i*o)),e[12]=-(l*(v*y-h*g)-f*(o*y-s*g)+m*(o*h-s*v)),e[13]=t*(v*y-h*g)-f*(a*y-n*g)+m*(a*h-n*v),e[14]=-(t*(o*y-s*g)-l*(a*y-n*g)+m*(a*s-n*o)),e[15]=t*(o*h-s*v)-l*(a*h-n*v)+f*(a*s-n*o),e}});var wx=Z((Wie,_x)=>{_x.exports=WI;function WI(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],l=e[5],o=e[6],s=e[7],u=e[8],f=e[9],v=e[10],h=e[11],d=e[12],m=e[13],g=e[14],y=e[15],_=r*l-t*i,w=r*o-a*i,T=r*s-n*i,b=t*o-a*l,A=t*s-n*l,S=a*s-n*o,k=u*m-f*d,q=u*g-v*d,D=u*y-h*d,R=f*g-v*m,z=f*y-h*m,N=v*y-h*g;return _*N-w*z+T*R+b*D-A*q+S*k}});var Mx=Z((Zie,Tx)=>{Tx.exports=ZI;function ZI(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=r[4],s=r[5],u=r[6],f=r[7],v=r[8],h=r[9],d=r[10],m=r[11],g=r[12],y=r[13],_=r[14],w=r[15],T=t[0],b=t[1],A=t[2],S=t[3];return e[0]=T*a+b*o+A*v+S*g,e[1]=T*n+b*s+A*h+S*y,e[2]=T*i+b*u+A*d+S*_,e[3]=T*l+b*f+A*m+S*w,T=t[4],b=t[5],A=t[6],S=t[7],e[4]=T*a+b*o+A*v+S*g,e[5]=T*n+b*s+A*h+S*y,e[6]=T*i+b*u+A*d+S*_,e[7]=T*l+b*f+A*m+S*w,T=t[8],b=t[9],A=t[10],S=t[11],e[8]=T*a+b*o+A*v+S*g,e[9]=T*n+b*s+A*h+S*y,e[10]=T*i+b*u+A*d+S*_,e[11]=T*l+b*f+A*m+S*w,T=t[12],b=t[13],A=t[14],S=t[15],e[12]=T*a+b*o+A*v+S*g,e[13]=T*n+b*s+A*h+S*y,e[14]=T*i+b*u+A*d+S*_,e[15]=T*l+b*f+A*m+S*w,e}});var kx=Z((Xie,Ax)=>{Ax.exports=XI;function XI(e,r,t){var a=t[0],n=t[1],i=t[2],l,o,s,u,f,v,h,d,m,g,y,_;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(l=r[0],o=r[1],s=r[2],u=r[3],f=r[4],v=r[5],h=r[6],d=r[7],m=r[8],g=r[9],y=r[10],_=r[11],e[0]=l,e[1]=o,e[2]=s,e[3]=u,e[4]=f,e[5]=v,e[6]=h,e[7]=d,e[8]=m,e[9]=g,e[10]=y,e[11]=_,e[12]=l*a+f*n+m*i+r[12],e[13]=o*a+v*n+g*i+r[13],e[14]=s*a+h*n+y*i+r[14],e[15]=u*a+d*n+_*i+r[15]),e}});var Sx=Z((Jie,Cx)=>{Cx.exports=JI;function JI(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var qx=Z((Kie,Lx)=>{Lx.exports=KI;function KI(e,r,t,a){var n=a[0],i=a[1],l=a[2],o=Math.sqrt(n*n+i*i+l*l),s,u,f,v,h,d,m,g,y,_,w,T,b,A,S,k,q,D,R,z,N,H,O,J;return Math.abs(o)<1e-6?null:(o=1/o,n*=o,i*=o,l*=o,s=Math.sin(t),u=Math.cos(t),f=1-u,v=r[0],h=r[1],d=r[2],m=r[3],g=r[4],y=r[5],_=r[6],w=r[7],T=r[8],b=r[9],A=r[10],S=r[11],k=n*n*f+u,q=i*n*f+l*s,D=l*n*f-i*s,R=n*i*f-l*s,z=i*i*f+u,N=l*i*f+n*s,H=n*l*f+i*s,O=i*l*f-n*s,J=l*l*f+u,e[0]=v*k+g*q+T*D,e[1]=h*k+y*q+b*D,e[2]=d*k+_*q+A*D,e[3]=m*k+w*q+S*D,e[4]=v*R+g*z+T*N,e[5]=h*R+y*z+b*N,e[6]=d*R+_*z+A*N,e[7]=m*R+w*z+S*N,e[8]=v*H+g*O+T*J,e[9]=h*H+y*O+b*J,e[10]=d*H+_*O+A*J,e[11]=m*H+w*O+S*J,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var Ex=Z((Qie,Dx)=>{Dx.exports=QI;function QI(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],l=r[5],o=r[6],s=r[7],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=l*n+f*a,e[6]=o*n+v*a,e[7]=s*n+h*a,e[8]=u*n-i*a,e[9]=f*n-l*a,e[10]=v*n-o*a,e[11]=h*n-s*a,e}});var Rx=Z(($ie,Px)=>{Px.exports=$I;function $I(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=l*n-f*a,e[2]=o*n-v*a,e[3]=s*n-h*a,e[8]=i*a+u*n,e[9]=l*a+f*n,e[10]=o*a+v*n,e[11]=s*a+h*n,e}});var Nx=Z((jie,zx)=>{zx.exports=jI;function jI(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[4],f=r[5],v=r[6],h=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=l*n+f*a,e[2]=o*n+v*a,e[3]=s*n+h*a,e[4]=u*n-i*a,e[5]=f*n-l*a,e[6]=v*n-o*a,e[7]=h*n-s*a,e}});var Ix=Z((ele,Fx)=>{Fx.exports=eH;function eH(e,r,t){var a,n,i,l=t[0],o=t[1],s=t[2],u=Math.sqrt(l*l+o*o+s*s);return Math.abs(u)<1e-6?null:(u=1/u,l*=u,o*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=l*l*i+n,e[1]=o*l*i+s*a,e[2]=s*l*i-o*a,e[3]=0,e[4]=l*o*i-s*a,e[5]=o*o*i+n,e[6]=s*o*i+l*a,e[7]=0,e[8]=l*s*i+o*a,e[9]=o*s*i-l*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var Ox=Z((rle,Hx)=>{Hx.exports=rH;function rH(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=a+a,s=n+n,u=i+i,f=a*o,v=a*s,h=a*u,d=n*s,m=n*u,g=i*u,y=l*o,_=l*s,w=l*u;return e[0]=1-(d+g),e[1]=v+w,e[2]=h-_,e[3]=0,e[4]=v-w,e[5]=1-(f+g),e[6]=m+y,e[7]=0,e[8]=h+_,e[9]=m-y,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Yx=Z((tle,Bx)=>{Bx.exports=tH;function tH(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Gx=Z((ale,Ux)=>{Ux.exports=aH;function aH(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var Wx=Z((nle,Vx)=>{Vx.exports=nH;function nH(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Xx=Z((ile,Zx)=>{Zx.exports=iH;function iH(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Kx=Z((lle,Jx)=>{Jx.exports=lH;function lH(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ap=Z((ole,Qx)=>{Qx.exports=oH;function oH(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=t+t,o=a+a,s=n+n,u=t*l,f=a*l,v=a*o,h=n*l,d=n*o,m=n*s,g=i*l,y=i*o,_=i*s;return e[0]=1-v-m,e[1]=f+_,e[2]=h-y,e[3]=0,e[4]=f-_,e[5]=1-u-m,e[6]=d+g,e[7]=0,e[8]=h+y,e[9]=d-g,e[10]=1-u-v,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var jx=Z((sle,$x)=>{$x.exports=sH;function sH(e,r,t,a,n,i,l){var o=1/(t-r),s=1/(n-a),u=1/(i-l);return e[0]=i*2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*o,e[9]=(n+a)*s,e[10]=(l+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=l*i*2*u,e[15]=0,e}});var r_=Z((ule,e_)=>{e_.exports=uH;function uH(e,r,t,a,n){var i=1/Math.tan(r/2),l=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*l,e[15]=0,e}});var a_=Z((fle,t_)=>{t_.exports=fH;function fH(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),l=Math.tan(r.leftDegrees*Math.PI/180),o=Math.tan(r.rightDegrees*Math.PI/180),s=2/(l+o),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((l-o)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var i_=Z((cle,n_)=>{n_.exports=cH;function cH(e,r,t,a,n,i,l){var o=1/(r-t),s=1/(a-n),u=1/(i-l);return e[0]=-2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*o,e[13]=(n+a)*s,e[14]=(l+i)*u,e[15]=1,e}});var o_=Z((vle,l_)=>{var vH=tp();l_.exports=hH;function hH(e,r,t,a){var n,i,l,o,s,u,f,v,h,d,m=r[0],g=r[1],y=r[2],_=a[0],w=a[1],T=a[2],b=t[0],A=t[1],S=t[2];return Math.abs(m-b)<1e-6&&Math.abs(g-A)<1e-6&&Math.abs(y-S)<1e-6?vH(e):(f=m-b,v=g-A,h=y-S,d=1/Math.sqrt(f*f+v*v+h*h),f*=d,v*=d,h*=d,n=w*h-T*v,i=T*f-_*h,l=_*v-w*f,d=Math.sqrt(n*n+i*i+l*l),d?(d=1/d,n*=d,i*=d,l*=d):(n=0,i=0,l=0),o=v*l-h*i,s=h*n-f*l,u=f*i-v*n,d=Math.sqrt(o*o+s*s+u*u),d?(d=1/d,o*=d,s*=d,u*=d):(o=0,s=0,u=0),e[0]=n,e[1]=o,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=v,e[7]=0,e[8]=l,e[9]=u,e[10]=h,e[11]=0,e[12]=-(n*m+i*g+l*y),e[13]=-(o*m+s*g+u*y),e[14]=-(f*m+v*g+h*y),e[15]=1,e)}});var u_=Z((hle,s_)=>{s_.exports=dH;function dH(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var np=Z((dle,f_)=>{f_.exports={create:ux(),clone:cx(),copy:hx(),identity:tp(),transpose:mx(),invert:gx(),adjoint:xx(),determinant:wx(),multiply:Mx(),translate:kx(),scale:Sx(),rotate:qx(),rotateX:Ex(),rotateY:Rx(),rotateZ:Nx(),fromRotation:Ix(),fromRotationTranslation:Ox(),fromScaling:Yx(),fromTranslation:Gx(),fromXRotation:Wx(),fromYRotation:Xx(),fromZRotation:Kx(),fromQuat:ap(),frustum:jx(),perspective:r_(),perspectiveFromFieldOfView:a_(),ortho:i_(),lookAt:o_(),str:u_()}});var wv=Z(qt=>{"use strict";var pH=np();qt.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var mH=Ir(),c_=ro(),yH=wv(),gH=np();function bH(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function xH(e){var r=mH.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function v_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function _H(e,r){h_("global",e,r)}function h_(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):c_.warn("addStyleRule failed"):c_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function wH(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&v_(t)}function TH(e,r,t,a,n,i){var l=a.split(":"),o=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[l[0]]=l[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[l[0]]=l[1]:f.style[o[0]]=o[1])}),u.setAttribute(s,!0))})}function MH(e){var r=p_(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=d_(a);if(n){var i=yH.convertCssMatrix(n);t=gH.multiply(t,t,i)}}),t}function d_(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function p_(e){for(var r=[];AH(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function AH(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function kH(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}m_.exports={getGraphDiv:bH,isPlotDiv:xH,removeElement:v_,addStyleRule:_H,addRelatedStyleRule:h_,deleteRelatedStyleRule:wH,setStyleOnHover:TH,getFullTransformMatrix:MH,getElementTransformMatrix:d_,getElementAndAncestors:p_,equalDomRects:kH}});var Vu=Z((yle,y_)=>{"use strict";y_.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var pi=Z((gle,M_)=>{"use strict";var b_=Yt().extendFlat,CH=nl(),x_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},__={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},SH=x_.flags.slice().concat(["fullReplot"]),LH=__.flags.slice().concat("layoutReplot");M_.exports={traces:x_,layout:__,traceFlags:function(){return g_(SH)},layoutFlags:function(){return g_(LH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";ip.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};ip.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var lp=Z((xle,A_)=>{"use strict";A_.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var zi=Z(Tv=>{"use strict";var k_=lp(),_le=k_.FORMAT_LINK,wle=k_.DATE_FORMAT_LINK;function op(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function ol(e,r){return r?r.d2l(e):e}function C_(e,r){return r?r.l2d(e):e}function qH(e){return e.x0}function DH(e){return e.x1}function EH(e){return e.y0}function PH(e){return e.y1}function S_(e){return e.x0shift||0}function L_(e){return e.x1shift||0}function q_(e){return e.y0shift||0}function D_(e){return e.y1shift||0}function Mv(e,r){return ol(e.x1,r)+L_(e)-ol(e.x0,r)-S_(e)}function Av(e,r,t){return ol(e.y1,t)+D_(e)-ol(e.y0,t)-q_(e)}function RH(e,r){return Math.abs(Mv(e,r))}function zH(e,r,t){return Math.abs(Av(e,r,t))}function NH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Mv(e,r),2)+Math.pow(Av(e,r,t),2))}function FH(e,r){return C_((ol(e.x1,r)+L_(e)+ol(e.x0,r)+S_(e))/2,r)}function IH(e,r,t){return C_((ol(e.y1,t)+D_(e)+ol(e.y0,t)+q_(e))/2,t)}function HH(e,r,t){return e.type!=="line"?void 0:Av(e,r,t)/Mv(e,r)}E_.exports={x0:qH,x1:DH,y0:EH,y1:PH,slope:HH,dx:Mv,dy:Av,width:RH,height:zH,length:NH,xcenter:FH,ycenter:IH}});var z_=Z((Ale,R_)=>{"use strict";var OH=pi().overrideAll,to=Gn(),P_=ha(),BH=mi().dash,sl=Yt().extendFlat,YH=zi().shapeTexttemplateAttrs,UH=kv();R_.exports=OH({newshape:{visible:sl({},to.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:sl({},to.legend,{}),legendgroup:sl({},to.legendgroup,{}),legendgrouptitle:{text:sl({},to.legendgrouptitle.text,{}),font:P_({})},legendrank:sl({},to.legendrank,{}),legendwidth:sl({},to.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:sl({},BH,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:sl({},to.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:YH({newshape:!0},{keys:Object.keys(UH)}),font:P_({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var F_=Z((kle,N_)=>{"use strict";var GH=mi().dash,VH=Yt().extendFlat;N_.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:VH({},GH,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var Cv=Z((Cle,I_)=>{"use strict";I_.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var ds=Z((Sle,Y_)=>{"use strict";var sp=ha(),WH=Vu(),Sv=hi(),H_=z_(),O_=F_(),ZH=Cv(),B_=Yt().extendFlat,Lv=sp({editType:"calc"});Lv.family.dflt='"Open Sans", verdana, arial, sans-serif';Lv.size.dflt=12;Lv.color.dflt=Sv.defaultLine;Y_.exports={font:Lv,title:{text:{valType:"string",editType:"layoutstyle"},font:sp({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:sp({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:B_(ZH({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:Sv.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Sv.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:Sv.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:H_.newshape,activeshape:H_.activeshape,newselection:O_.newselection,activeselection:O_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:B_({},WH.transition,{editType:"none"})}});var U_=ib(()=>{});var XH={};var G_=ib(()=>{U_()});var gr=Z(zr=>{"use strict";var ps=ro(),V_=_v(),W_=rp(),JH=nl(),KH=Gu().addStyleRule,Z_=Yt(),QH=Gn(),$H=ds(),jH=Z_.extendFlat,up=Z_.extendDeepAll;zr.modules={};zr.allCategories={};zr.allTypes=[];zr.subplotsRegistry={};zr.componentsRegistry={};zr.layoutArrayContainers=[];zr.layoutArrayRegexes=[];zr.traceLayoutAttributes={};zr.localeRegistry={};zr.apiMethodRegistry={};zr.collectableSubplotTypes=null;zr.register=function(r){if(zr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var iO=os().timeFormat,n4=Hr(),fp=ro(),fl=us().mod,gs=Bt(),xn=gs.BADNUM,Xa=gs.ONEDAY,Wu=gs.ONEHOUR,ul=gs.ONEMIN,ys=gs.ONESEC,Zu=gs.EPOCHJD,Ni=gr(),$_=os().utcFormat,lO=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,oO=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,j_=new Date().getFullYear()-70;function Fi(e){return e&&Ni.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Dt.dateTick0=function(e,r){var t=sO(e,!!r);if(r<2)return t;var a=Dt.dateTime2ms(t,e);return a+=Xa*(r-1),Dt.ms2DateTime(a,0,e)};function sO(e,r){return Fi(e)?r?Ni.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Ni.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Dt.dfltRange=function(e){return Fi(e)?Ni.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Dt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Dv,Ev;Dt.dateTime2ms=function(e,r){if(Dt.isJSDate(e)){var t=e.getTimezoneOffset()*ul,a=(e.getUTCMinutes()-e.getMinutes())*ul+(e.getUTCSeconds()-e.getSeconds())*ys+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*ul;t=t-n/2+fl(a-t+n/2,n)}return e=Number(e)-t,e>=Dv&&e<=Ev?e:xn}if(typeof e!="string"&&typeof e!="number")return xn;e=String(e);var i=Fi(r),l=e.charAt(0);i&&(l==="G"||l==="g")&&(e=e.substr(1),r="");var o=i&&r.substr(0,7)==="chinese",s=e.match(o?oO:lO);if(!s)return xn;var u=s[1],f=s[3]||"1",v=Number(s[5]||1),h=Number(s[7]||0),d=Number(s[9]||0),m=Number(s[11]||0);if(i){if(u.length===2)return xn;u=Number(u);var g;try{var y=Ni.getComponentMethod("calendars","getCal")(r);if(o){var _=f.charAt(f.length-1)==="i";f=parseInt(f,10),g=y.newDate(u,y.toMonthIndex(u,f,_),v)}else g=y.newDate(u,Number(f),v)}catch(T){return xn}return g?(g.toJD()-Zu)*Xa+h*Wu+d*ul+m*ys:xn}u.length===2?u=(Number(u)+2e3-j_)%100+j_:u=Number(u),f-=1;var w=new Date(Date.UTC(2e3,f,v,h,d));return w.setUTCFullYear(u),w.getUTCMonth()!==f||w.getUTCDate()!==v?xn:w.getTime()+m*ys};Dv=Dt.MIN_MS=Dt.dateTime2ms("-9999");Ev=Dt.MAX_MS=Dt.dateTime2ms("9999-12-31 23:59:59.9999");Dt.isDateTime=function(e,r){return Dt.dateTime2ms(e,r)!==xn};function ms(e,r){return String(e+Math.pow(10,r)).substr(1)}var qv=90*Xa,e4=3*Wu,r4=5*ul;Dt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Dv&&e<=Ev))return xn;r||(r=0);var a=Math.floor(fl(e+.05,1)*10),n=Math.round(e-a/10),i,l,o,s,u,f;if(Fi(t)){var v=Math.floor(n/Xa)+Zu,h=Math.floor(fl(e,Xa));try{i=Ni.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=$_("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;l=r=Dv+Xa&&e<=Ev-Xa))return xn;var r=Math.floor(fl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=iO("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return i4(a,n,i,l,o)};function i4(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+ms(r,2)+":"+ms(t,2),(a||n)&&(e+=":"+ms(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+ms(n,i)}return e}Dt.cleanDate=function(e,r,t){if(e===xn)return r;if(Dt.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Fi(t))return fp.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Dt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Dt.isDateTime(e,t))return fp.error("unrecognized date",e),r;return e};var uO=/%\d?f/g,fO=/%h/g,cO={1:"1",2:"1",3:"2",4:"2"};function t4(e,r,t,a){e=e.replace(uO,function(i){var l=Math.min(+i.charAt(1)||6,6),o=(r/1e3%1+2).toFixed(l).substr(2).replace(/0+$/,"")||"0";return o});var n=new Date(Math.floor(r+.05));if(e=e.replace(fO,function(){return cO[t("%q")(n)]}),Fi(a))try{e=Ni.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var vO=[59,59.9,59.99,59.999,59.9999];function hO(e,r){var t=fl(e+.05,Xa),a=ms(Math.floor(t/Wu),2)+":"+ms(fl(Math.floor(t/ul),60),2);if(r!=="M"){n4(r)||(r=0);var n=Math.min(fl(e/ys,60),vO[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Dt.formatDate=function(e,r,t,a,n,i){if(n=Fi(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-cartesian.js b/dist/plotly-cartesian.js index e2af9bdd2cd..45c743ea3cc 100644 --- a/dist/plotly-cartesian.js +++ b/dist/plotly-cartesian.js @@ -1,5 +1,5 @@ /** -* plotly.js (cartesian) v3.0.3 +* plotly.js (cartesian) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-cartesian.min.js b/dist/plotly-cartesian.min.js index 84202cb357f..a5d68dda984 100644 --- a/dist/plotly-cartesian.min.js +++ b/dist/plotly-cartesian.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (cartesian - minified) v3.0.3 +* plotly.js (cartesian - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var OA=Object.defineProperty;var Gie=Object.getOwnPropertyDescriptor;var Yie=Object.getOwnPropertyNames;var Vie=Object.prototype.hasOwnProperty;var BA=(e,r)=>()=>(e&&(r=e(e=0)),r);var N=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var Wie=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Yie(r))!Vie.call(e,n)&&n!==t&&OA(e,n,{get:()=>r[n],enumerable:!(a=Gie(r,n))||a.enumerable});return e};var jie=e=>Wie(OA({},"__esModule",{value:!0}),e);var tp=N(HA=>{"use strict";HA.version="3.0.3"});var GA=N((UA,ap)=>{(function(r,t,a){t[r]=t[r]||a(),typeof ap!="undefined"&&ap.exports&&(ap.exports=t[r])})("Promise",typeof window!="undefined"?window:UA,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,w,b,T){return Object.defineProperty(_,w,{value:b,writable:!0,configurable:T!==!1})}}catch(x){r=function(w,b,T){return w[b]=T,w}}a=function(){var _,w,b;function T(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,S){b=new T(M,S),w?w.next=b:_=b,w=b,b=void 0},drain:function(){var M=_;for(_=w=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(x,_){a.add(x,_),t||(t=i(a.drain))}function l(x){var _,w=typeof x;return x!=null&&(w=="object"||w=="function")&&(_=x.then),typeof _=="function"?_:!1}function s(){for(var x=0;x0&&o(s,w))}catch(b){c.call(new d(w),b)}}}function c(x){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=x,_.state=2,_.chain.length>0&&o(s,_))}function v(x,_,w,b){for(var T=0;T<_.length;T++)(function(M){x.resolve(_[M]).then(function(E){w(M,E)},b)})(T)}function d(x){this.def=x,this.triggered=!1}function p(x){this.promise=x,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function m(x){if(typeof x!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(b,T){var k={success:typeof b=="function"?b:!0,failure:typeof T=="function"?T:!1};return k.promise=new this.constructor(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");k.resolve=S,k.reject=E}),_.chain.push(k),_.state!==0&&o(s,_),k.promise},this.catch=function(b){return this.then(void 0,b)};try{x.call(void 0,function(b){f.call(_,b)},function(b){c.call(_,b)})}catch(w){c.call(_,w)}}var y=r({},"constructor",m,!1);return m.prototype=y,r(y,"__NPO__",0,!1),r(m,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");T(_)})}),r(m,"reject",function(_){return new this(function(b,T){if(typeof b!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(m,"all",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");var M=_.length,S=Array(M),E=0;v(w,_,function(R,D){S[R]=D,++E===M&&T(S)},k)})}),r(m,"race",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");v(w,_,function(S,E){T(E)},k)})}),m})});var Sr=N((tCe,np)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(g){for(var A=g.length,q=new Array(A);A--;)q[A]=g[A];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,A){l.call(this,g,A+"")},o.setAttributeNS=function(g,A,q){s.call(this,g,A,q+"")},u.setProperty=function(g,A,q){f.call(this,g,A+"",q)}}e.ascending=c;function c(h,g){return hg?1:h>=g?0:NaN}e.descending=function(h,g){return gh?1:g>=h?0:NaN},e.min=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AC&&(L=C)}else{for(;++A=C){L=C;break}for(;++AC&&(L=C)}return L},e.max=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AL&&(L=C)}else{for(;++A=C){L=C;break}for(;++AL&&(L=C)}return L},e.extent=function(h,g){var A=-1,q=h.length,L,C,I;if(arguments.length===1){for(;++A=C){L=I=C;break}for(;++AC&&(L=C),I=C){L=I=C;break}for(;++AC&&(L=C),I1)return I/(U-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)<0?q=C+1:L=C}return q},right:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)>0?L=C:q=C+1}return q}}}var m=p(c);e.bisectLeft=m.left,e.bisect=e.bisectRight=m.right,e.bisector=function(h){return p(h.length===1?function(g,A){return c(h(g),A)}:h)},e.shuffle=function(h,g,A){(q=arguments.length)<3&&(A=h.length,q<2&&(g=0));for(var q=A-g,L,C;q;)C=Math.random()*q--|0,L=h[q+g],h[q+g]=h[C+g],h[C+g]=L;return h},e.permute=function(h,g){for(var A=g.length,q=new Array(A);A--;)q[A]=h[g[A]];return q},e.pairs=function(h){for(var g=0,A=h.length-1,q,L=h[0],C=new Array(A<0?0:A);g=0;)for(I=h[g],A=I.length;--A>=0;)C[--L]=I[A];return C};var x=Math.abs;e.range=function(h,g,A){if(arguments.length<3&&(A=1,arguments.length<2&&(g=h,h=0)),(g-h)/A===1/0)throw new Error("infinite range");var q=[],L=_(x(A)),C=-1,I;if(h*=L,g*=L,A*=L,A<0)for(;(I=h+A*++C)>g;)q.push(I/L);else for(;(I=h+A*++C)=g.length)return L?L.call(h,U):q?U.sort(q):U;for(var $=-1,ee=U.length,re=g[J++],_e,Me,ae,ce=new b,ge;++$=g.length)return F;var J=[],$=A[U++];return F.forEach(function(ee,re){J.push({key:ee,values:I(re,U)})}),$?J.sort(function(ee,re){return $(ee.key,re.key)}):J}return h.map=function(F,U){return C(U,F,0)},h.entries=function(F){return I(C(e.map,F,0),0)},h.key=function(F){return g.push(F),h},h.sortKeys=function(F){return A[g.length-1]=F,h},h.sortValues=function(F){return q=F,h},h.rollup=function(F){return L=F,h},h},e.set=function(h){var g=new O;if(h)for(var A=0,q=h.length;A=0&&(q=h.slice(A+1),h=h.slice(0,A)),h)return arguments.length<2?this[h].on(q):this[h].on(q,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(q,null);return this}};function Z(h){var g=[],A=new b;function q(){for(var L=g,C=-1,I=L.length,F;++C=0&&(A=h.slice(0,g))!=="xmlns"&&(h=h.slice(g+1)),pe.hasOwnProperty(A)?{space:pe[A],local:h}:h}},de.attr=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node();return h=e.ns.qualify(h),h.local?A.getAttributeNS(h.space,h.local):A.getAttribute(h)}for(g in h)this.each(me(g,h[g]));return this}return this.each(me(h,g))};function me(h,g){h=e.ns.qualify(h);function A(){this.removeAttribute(h)}function q(){this.removeAttributeNS(h.space,h.local)}function L(){this.setAttribute(h,g)}function C(){this.setAttributeNS(h.space,h.local,g)}function I(){var U=g.apply(this,arguments);U==null?this.removeAttribute(h):this.setAttribute(h,U)}function F(){var U=g.apply(this,arguments);U==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,U)}return g==null?h.local?q:A:typeof g=="function"?h.local?F:I:h.local?C:L}function we(h){return h.trim().replace(/\s+/g," ")}de.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node(),q=(h=Fe(h)).length,L=-1;if(g=A.classList){for(;++L=0;)(C=A[q])&&(L&&L!==C.nextSibling&&L.parentNode.insertBefore(C,L),L=C);return this},de.sort=function(h){h=Te.apply(this,arguments);for(var g=-1,A=this.length;++g=g&&(g=L+1);!(U=I[g])&&++g0&&(h=h.slice(0,L));var I=Ge.get(h);I&&(h=I,C=Ye);function F(){var $=this[q];$&&(this.removeEventListener(h,$,$.$),delete this[q])}function U(){var $=C(g,t(arguments));F.call(this),this.addEventListener(h,this[q]=$,$.$=A),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),ee;for(var re in this)if(ee=re.match($)){var _e=this[re];this.removeEventListener(ee[1],_e,_e.$),delete this[re]}}return L?g?U:F:g?V:J}var Ge=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ge.forEach(function(h){"on"+h in a&&Ge.remove(h)});function Ze(h,g){return function(A){var q=e.event;e.event=A,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=q}}}function Ye(h,g){var A=Ze(h,g);return function(q){var L=this,C=q.relatedTarget;(!C||C!==L&&!(C.compareDocumentPosition(L)&8))&&A.call(L,q)}}var He,$e=0;function cr(h){var g=".dragsuppress-"+ ++$e,A="click"+g,q=e.select(i(h)).on("touchmove"+g,te).on("dragstart"+g,te).on("selectstart"+g,te);if(He==null&&(He="onselectstart"in h?!1:G(h.style,"userSelect")),He){var L=n(h).style,C=L[He];L[He]="none"}return function(I){if(q.on(g,null),He&&(L[He]=C),I){var F=function(){q.on(A,null)};q.on(A,function(){te(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Oe(h,fe())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Oe(h,g){g.changedTouches&&(g=g.changedTouches[0]);var A=h.ownerSVGElement||h;if(A.createSVGPoint){var q=A.createSVGPoint();if(lr<0){var L=i(h);if(L.scrollX||L.scrollY){A=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var C=A[0][0].getScreenCTM();lr=!(C.f||C.e),A.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(h.getScreenCTM().inverse()),[q.x,q.y]}var I=h.getBoundingClientRect();return[g.clientX-I.left-h.clientLeft,g.clientY-I.top-h.clientTop]}e.touch=function(h,g,A){if(arguments.length<3&&(A=g,g=fe().changedTouches),g){for(var q=0,L=g.length,C;q0?1:h<0?-1:0}function zr(h,g,A){return(g[0]-h[0])*(A[1]-h[1])-(g[1]-h[1])*(A[0]-h[0])}function Et(h){return h>1?0:h<-1?qe:Math.acos(h)}function Dt(h){return h>1?ur:h<-1?-ur:Math.asin(h)}function ma(h){return((h=Math.exp(h))-1/h)/2}function St(h){return((h=Math.exp(h))+1/h)/2}function ja(h){return((h=Math.exp(2*h))-1)/(h+1)}function ga(h){return(h=Math.sin(h/2))*h}var jt=Math.SQRT2,Na=2,br=4;e.interpolateZoom=function(h,g){var A=h[0],q=h[1],L=h[2],C=g[0],I=g[1],F=g[2],U=C-A,J=I-q,$=U*U+J*J,ee,re;if($0&&(tr=tr.transition().duration(I)),tr.call(ke.event)}function dr(){ce&&ce.domain(ae.range().map(function(tr){return(tr-h.x)/h.k}).map(ae.invert)),Ae&&Ae.domain(ge.range().map(function(tr){return(tr-h.y)/h.k}).map(ge.invert))}function pr(tr){F++||tr({type:"zoomstart"})}function Er(tr){dr(),tr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function mr(tr){--F||(tr({type:"zoomend"}),A=null)}function kr(){var tr=this,Dr=Me.of(tr,arguments),Rr=0,tt=e.select(i(tr)).on(J,Oa).on($,an),Bt=xe(e.mouse(tr)),fa=cr(tr);Kd.call(tr),pr(Dr);function Oa(){Rr=1,fr(e.mouse(tr),Bt),Er(Dr)}function an(){tt.on(J,null).on($,null),fa(Rr),mr(Dr)}}function rt(){var tr=this,Dr=Me.of(tr,arguments),Rr={},tt=0,Bt,fa=".zoom-"+e.event.changedTouches[0].identifier,Oa="touchmove"+fa,an="touchend"+fa,yn=[],nn=e.select(tr),Mn=cr(tr);kn(),pr(Dr),nn.on(U,null).on(re,kn);function Za(){var ji=e.touches(tr);return Bt=h.k,ji.forEach(function(Ba){Ba.identifier in Rr&&(Rr[Ba.identifier]=xe(Ba))}),ji}function kn(){var ji=e.event.target;e.select(ji).on(Oa,Us).on(an,Uie),yn.push(ji);for(var Ba=e.event.changedTouches,ii=0,wo=Ba.length;ii1){var Gs=oi[0],Nl=oi[1],rp=Gs[0]-Nl[0],IA=Gs[1]-Nl[1];tt=rp*rp+IA*IA}}function Us(){var ji=e.touches(tr),Ba,ii,wo,oi;Kd.call(tr);for(var bf=0,Gs=ji.length;bf1?1:g,A=A<0?0:A>1?1:A,L=A<=.5?A*(1+g):A+g-A*g,q=2*A-L;function C(F){return F>360?F-=360:F<0&&(F+=360),F<60?q+(L-q)*F/60:F<180?L:F<240?q+(L-q)*(240-F)/60:q}function I(F){return Math.round(C(F)*255)}return new Ut(I(h+120),I(h),I(h-120))}e.hcl=Zt;function Zt(h,g,A){return this instanceof Zt?(this.h=+h,this.c=+g,void(this.l=+A)):arguments.length<2?h instanceof Zt?new Zt(h.h,h.c,h.l):h instanceof Xt?Rt(h.l,h.a,h.b):Rt((h=sr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new Zt(h,g,A)}var tn=Zt.prototype=new Pt;tn.brighter=function(h){return new Zt(this.h,this.c,Math.min(100,this.l+ft*(arguments.length?h:1)))},tn.darker=function(h){return new Zt(this.h,this.c,Math.max(0,this.l-ft*(arguments.length?h:1)))},tn.rgb=function(){return Tn(this.h,this.c,this.l).rgb()};function Tn(h,g,A){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new Xt(A,Math.cos(h*=Ar)*g,Math.sin(h)*g)}e.lab=Xt;function Xt(h,g,A){return this instanceof Xt?(this.l=+h,this.a=+g,void(this.b=+A)):arguments.length<2?h instanceof Xt?new Xt(h.l,h.a,h.b):h instanceof Zt?Tn(h.h,h.c,h.l):sr((h=Ut(h)).r,h.g,h.b):new Xt(h,g,A)}var ft=18,xa=.95047,Ko=1,Qo=1.08883,vt=Xt.prototype=new Pt;vt.brighter=function(h){return new Xt(Math.min(100,this.l+ft*(arguments.length?h:1)),this.a,this.b)},vt.darker=function(h){return new Xt(Math.max(0,this.l-ft*(arguments.length?h:1)),this.a,this.b)},vt.rgb=function(){return An(this.l,this.a,this.b)};function An(h,g,A){var q=(h+16)/116,L=q+g/500,C=q-A/200;return L=zs(L)*xa,q=zs(q)*Ko,C=zs(C)*Qo,new Ut(Gi(3.2404542*L-1.5371385*q-.4985314*C),Gi(-.969266*L+1.8760108*q+.041556*C),Gi(.0556434*L-.2040259*q+1.0572252*C))}function Rt(h,g,A){return h>0?new Zt(Math.atan2(A,g)*Wr,Math.sqrt(g*g+A*A),h):new Zt(NaN,NaN,h)}function zs(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function pn(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function Gi(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=Ut;function Ut(h,g,A){return this instanceof Ut?(this.r=~~h,this.g=~~g,void(this.b=~~A)):arguments.length<2?h instanceof Ut?new Ut(h.r,h.g,h.b):$r(""+h,Ut,ba):new Ut(h,g,A)}function Yi(h){return new Ut(h>>16,h>>8&255,h&255)}function Pl(h){return Yi(h)+""}var Rl=Ut.prototype=new Pt;Rl.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,A=this.g,q=this.b,L=30;return!g&&!A&&!q?new Ut(L,L,L):(g&&g>4,q=q>>4|q,L=U&240,L=L>>4|L,C=U&15,C=C<<4|C):h.length===7&&(q=(U&16711680)>>16,L=(U&65280)>>8,C=U&255)),g(q,L,C))}function ht(h,g,A){var q=Math.min(h/=255,g/=255,A/=255),L=Math.max(h,g,A),C=L-q,I,F,U=(L+q)/2;return C?(F=U<.5?C/(L+q):C/(2-L-q),h==L?I=(g-A)/C+(g0&&U<1?0:I),new Qr(I,F,U)}function sr(h,g,A){h=za(h),g=za(g),A=za(A);var q=pn((.4124564*h+.3575761*g+.1804375*A)/xa),L=pn((.2126729*h+.7151522*g+.072175*A)/Ko),C=pn((.0193339*h+.119192*g+.9503041*A)/Qo);return Xt(116*L-16,500*(q-L),200*(L-C))}function za(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Tt(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var Ia=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Ia.forEach(function(h,g){Ia.set(h,Yi(g))});function Br(h){return typeof h=="function"?h:function(){return h}}e.functor=Br,e.xhr=Vi(H);function Vi(h){return function(g,A,q){return arguments.length===2&&typeof A=="function"&&(q=A,A=null),Is(g,A,h,q)}}function Is(h,g,A,q){var L={},C=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,U=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=J:F.onreadystatechange=function(){F.readyState>3&&J()};function J(){var $=F.status,ee;if(!$&&Yae(F)||$>=200&&$<300||$===304){try{ee=A.call(L,F)}catch(re){C.error.call(L,re);return}C.load.call(L,ee)}else C.error.call(L,F)}return F.onprogress=function($){var ee=e.event;e.event=$;try{C.progress.call(L,F)}finally{e.event=ee}},L.header=function($,ee){return $=($+"").toLowerCase(),arguments.length<2?I[$]:(ee==null?delete I[$]:I[$]=ee+"",L)},L.mimeType=function($){return arguments.length?(g=$==null?null:$+"",L):g},L.responseType=function($){return arguments.length?(U=$,L):U},L.response=function($){return A=$,L},["get","post"].forEach(function($){L[$]=function(){return L.send.apply(L,[$].concat(t(arguments)))}}),L.send=function($,ee,re){if(arguments.length===2&&typeof ee=="function"&&(re=ee,ee=null),F.open($,h,!0),g!=null&&!("accept"in I)&&(I.accept=g+",*/*"),F.setRequestHeader)for(var _e in I)F.setRequestHeader(_e,I[_e]);return g!=null&&F.overrideMimeType&&F.overrideMimeType(g),U!=null&&(F.responseType=U),re!=null&&L.on("error",re).on("load",function(Me){re(null,Me)}),C.beforesend.call(L,F),F.send(ee==null?null:ee),L},L.abort=function(){return F.abort(),L},e.rebind(L,C,"on"),q==null?L:L.get(Gae(q))}function Gae(h){return h.length===1?function(g,A){h(g==null?A:null)}:h}function Yae(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var A=new RegExp('["'+h+` +"use strict";var Plotly=(()=>{var OA=Object.defineProperty;var Gie=Object.getOwnPropertyDescriptor;var Yie=Object.getOwnPropertyNames;var Vie=Object.prototype.hasOwnProperty;var BA=(e,r)=>()=>(e&&(r=e(e=0)),r);var N=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var Wie=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Yie(r))!Vie.call(e,n)&&n!==t&&OA(e,n,{get:()=>r[n],enumerable:!(a=Gie(r,n))||a.enumerable});return e};var jie=e=>Wie(OA({},"__esModule",{value:!0}),e);var tp=N(HA=>{"use strict";HA.version="3.0.2"});var GA=N((UA,ap)=>{(function(r,t,a){t[r]=t[r]||a(),typeof ap!="undefined"&&ap.exports&&(ap.exports=t[r])})("Promise",typeof window!="undefined"?window:UA,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,w,b,T){return Object.defineProperty(_,w,{value:b,writable:!0,configurable:T!==!1})}}catch(x){r=function(w,b,T){return w[b]=T,w}}a=function(){var _,w,b;function T(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,S){b=new T(M,S),w?w.next=b:_=b,w=b,b=void 0},drain:function(){var M=_;for(_=w=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(x,_){a.add(x,_),t||(t=i(a.drain))}function l(x){var _,w=typeof x;return x!=null&&(w=="object"||w=="function")&&(_=x.then),typeof _=="function"?_:!1}function s(){for(var x=0;x0&&o(s,w))}catch(b){c.call(new d(w),b)}}}function c(x){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=x,_.state=2,_.chain.length>0&&o(s,_))}function v(x,_,w,b){for(var T=0;T<_.length;T++)(function(M){x.resolve(_[M]).then(function(E){w(M,E)},b)})(T)}function d(x){this.def=x,this.triggered=!1}function p(x){this.promise=x,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function m(x){if(typeof x!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(b,T){var k={success:typeof b=="function"?b:!0,failure:typeof T=="function"?T:!1};return k.promise=new this.constructor(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");k.resolve=S,k.reject=E}),_.chain.push(k),_.state!==0&&o(s,_),k.promise},this.catch=function(b){return this.then(void 0,b)};try{x.call(void 0,function(b){f.call(_,b)},function(b){c.call(_,b)})}catch(w){c.call(_,w)}}var y=r({},"constructor",m,!1);return m.prototype=y,r(y,"__NPO__",0,!1),r(m,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");T(_)})}),r(m,"reject",function(_){return new this(function(b,T){if(typeof b!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(m,"all",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");var M=_.length,S=Array(M),E=0;v(w,_,function(R,D){S[R]=D,++E===M&&T(S)},k)})}),r(m,"race",function(_){var w=this;return n.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(T,k){if(typeof T!="function"||typeof k!="function")throw TypeError("Not a function");v(w,_,function(S,E){T(E)},k)})}),m})});var Sr=N((tCe,np)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(g){for(var A=g.length,q=new Array(A);A--;)q[A]=g[A];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,A){l.call(this,g,A+"")},o.setAttributeNS=function(g,A,q){s.call(this,g,A,q+"")},u.setProperty=function(g,A,q){f.call(this,g,A+"",q)}}e.ascending=c;function c(h,g){return hg?1:h>=g?0:NaN}e.descending=function(h,g){return gh?1:g>=h?0:NaN},e.min=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AC&&(L=C)}else{for(;++A=C){L=C;break}for(;++AC&&(L=C)}return L},e.max=function(h,g){var A=-1,q=h.length,L,C;if(arguments.length===1){for(;++A=C){L=C;break}for(;++AL&&(L=C)}else{for(;++A=C){L=C;break}for(;++AL&&(L=C)}return L},e.extent=function(h,g){var A=-1,q=h.length,L,C,I;if(arguments.length===1){for(;++A=C){L=I=C;break}for(;++AC&&(L=C),I=C){L=I=C;break}for(;++AC&&(L=C),I1)return I/(U-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)<0?q=C+1:L=C}return q},right:function(g,A,q,L){for(arguments.length<3&&(q=0),arguments.length<4&&(L=g.length);q>>1;h(g[C],A)>0?L=C:q=C+1}return q}}}var m=p(c);e.bisectLeft=m.left,e.bisect=e.bisectRight=m.right,e.bisector=function(h){return p(h.length===1?function(g,A){return c(h(g),A)}:h)},e.shuffle=function(h,g,A){(q=arguments.length)<3&&(A=h.length,q<2&&(g=0));for(var q=A-g,L,C;q;)C=Math.random()*q--|0,L=h[q+g],h[q+g]=h[C+g],h[C+g]=L;return h},e.permute=function(h,g){for(var A=g.length,q=new Array(A);A--;)q[A]=h[g[A]];return q},e.pairs=function(h){for(var g=0,A=h.length-1,q,L=h[0],C=new Array(A<0?0:A);g=0;)for(I=h[g],A=I.length;--A>=0;)C[--L]=I[A];return C};var x=Math.abs;e.range=function(h,g,A){if(arguments.length<3&&(A=1,arguments.length<2&&(g=h,h=0)),(g-h)/A===1/0)throw new Error("infinite range");var q=[],L=_(x(A)),C=-1,I;if(h*=L,g*=L,A*=L,A<0)for(;(I=h+A*++C)>g;)q.push(I/L);else for(;(I=h+A*++C)=g.length)return L?L.call(h,U):q?U.sort(q):U;for(var $=-1,ee=U.length,re=g[J++],_e,Me,ae,ce=new b,ge;++$=g.length)return F;var J=[],$=A[U++];return F.forEach(function(ee,re){J.push({key:ee,values:I(re,U)})}),$?J.sort(function(ee,re){return $(ee.key,re.key)}):J}return h.map=function(F,U){return C(U,F,0)},h.entries=function(F){return I(C(e.map,F,0),0)},h.key=function(F){return g.push(F),h},h.sortKeys=function(F){return A[g.length-1]=F,h},h.sortValues=function(F){return q=F,h},h.rollup=function(F){return L=F,h},h},e.set=function(h){var g=new O;if(h)for(var A=0,q=h.length;A=0&&(q=h.slice(A+1),h=h.slice(0,A)),h)return arguments.length<2?this[h].on(q):this[h].on(q,g);if(arguments.length===2){if(g==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(q,null);return this}};function Z(h){var g=[],A=new b;function q(){for(var L=g,C=-1,I=L.length,F;++C=0&&(A=h.slice(0,g))!=="xmlns"&&(h=h.slice(g+1)),pe.hasOwnProperty(A)?{space:pe[A],local:h}:h}},de.attr=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node();return h=e.ns.qualify(h),h.local?A.getAttributeNS(h.space,h.local):A.getAttribute(h)}for(g in h)this.each(me(g,h[g]));return this}return this.each(me(h,g))};function me(h,g){h=e.ns.qualify(h);function A(){this.removeAttribute(h)}function q(){this.removeAttributeNS(h.space,h.local)}function L(){this.setAttribute(h,g)}function C(){this.setAttributeNS(h.space,h.local,g)}function I(){var U=g.apply(this,arguments);U==null?this.removeAttribute(h):this.setAttribute(h,U)}function F(){var U=g.apply(this,arguments);U==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,U)}return g==null?h.local?q:A:typeof g=="function"?h.local?F:I:h.local?C:L}function we(h){return h.trim().replace(/\s+/g," ")}de.classed=function(h,g){if(arguments.length<2){if(typeof h=="string"){var A=this.node(),q=(h=Fe(h)).length,L=-1;if(g=A.classList){for(;++L=0;)(C=A[q])&&(L&&L!==C.nextSibling&&L.parentNode.insertBefore(C,L),L=C);return this},de.sort=function(h){h=Te.apply(this,arguments);for(var g=-1,A=this.length;++g=g&&(g=L+1);!(U=I[g])&&++g0&&(h=h.slice(0,L));var I=Ge.get(h);I&&(h=I,C=Ye);function F(){var $=this[q];$&&(this.removeEventListener(h,$,$.$),delete this[q])}function U(){var $=C(g,t(arguments));F.call(this),this.addEventListener(h,this[q]=$,$.$=A),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),ee;for(var re in this)if(ee=re.match($)){var _e=this[re];this.removeEventListener(ee[1],_e,_e.$),delete this[re]}}return L?g?U:F:g?V:J}var Ge=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ge.forEach(function(h){"on"+h in a&&Ge.remove(h)});function Ze(h,g){return function(A){var q=e.event;e.event=A,g[0]=this.__data__;try{h.apply(this,g)}finally{e.event=q}}}function Ye(h,g){var A=Ze(h,g);return function(q){var L=this,C=q.relatedTarget;(!C||C!==L&&!(C.compareDocumentPosition(L)&8))&&A.call(L,q)}}var He,$e=0;function cr(h){var g=".dragsuppress-"+ ++$e,A="click"+g,q=e.select(i(h)).on("touchmove"+g,te).on("dragstart"+g,te).on("selectstart"+g,te);if(He==null&&(He="onselectstart"in h?!1:G(h.style,"userSelect")),He){var L=n(h).style,C=L[He];L[He]="none"}return function(I){if(q.on(g,null),He&&(L[He]=C),I){var F=function(){q.on(A,null)};q.on(A,function(){te(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Oe(h,fe())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Oe(h,g){g.changedTouches&&(g=g.changedTouches[0]);var A=h.ownerSVGElement||h;if(A.createSVGPoint){var q=A.createSVGPoint();if(lr<0){var L=i(h);if(L.scrollX||L.scrollY){A=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var C=A[0][0].getScreenCTM();lr=!(C.f||C.e),A.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(h.getScreenCTM().inverse()),[q.x,q.y]}var I=h.getBoundingClientRect();return[g.clientX-I.left-h.clientLeft,g.clientY-I.top-h.clientTop]}e.touch=function(h,g,A){if(arguments.length<3&&(A=g,g=fe().changedTouches),g){for(var q=0,L=g.length,C;q0?1:h<0?-1:0}function zr(h,g,A){return(g[0]-h[0])*(A[1]-h[1])-(g[1]-h[1])*(A[0]-h[0])}function Et(h){return h>1?0:h<-1?qe:Math.acos(h)}function Dt(h){return h>1?ur:h<-1?-ur:Math.asin(h)}function ma(h){return((h=Math.exp(h))-1/h)/2}function St(h){return((h=Math.exp(h))+1/h)/2}function ja(h){return((h=Math.exp(2*h))-1)/(h+1)}function ga(h){return(h=Math.sin(h/2))*h}var jt=Math.SQRT2,Na=2,br=4;e.interpolateZoom=function(h,g){var A=h[0],q=h[1],L=h[2],C=g[0],I=g[1],F=g[2],U=C-A,J=I-q,$=U*U+J*J,ee,re;if($0&&(tr=tr.transition().duration(I)),tr.call(ke.event)}function dr(){ce&&ce.domain(ae.range().map(function(tr){return(tr-h.x)/h.k}).map(ae.invert)),Ae&&Ae.domain(ge.range().map(function(tr){return(tr-h.y)/h.k}).map(ge.invert))}function pr(tr){F++||tr({type:"zoomstart"})}function Er(tr){dr(),tr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function mr(tr){--F||(tr({type:"zoomend"}),A=null)}function kr(){var tr=this,Dr=Me.of(tr,arguments),Rr=0,tt=e.select(i(tr)).on(J,Oa).on($,an),Bt=xe(e.mouse(tr)),fa=cr(tr);Kd.call(tr),pr(Dr);function Oa(){Rr=1,fr(e.mouse(tr),Bt),Er(Dr)}function an(){tt.on(J,null).on($,null),fa(Rr),mr(Dr)}}function rt(){var tr=this,Dr=Me.of(tr,arguments),Rr={},tt=0,Bt,fa=".zoom-"+e.event.changedTouches[0].identifier,Oa="touchmove"+fa,an="touchend"+fa,yn=[],nn=e.select(tr),Mn=cr(tr);kn(),pr(Dr),nn.on(U,null).on(re,kn);function Za(){var ji=e.touches(tr);return Bt=h.k,ji.forEach(function(Ba){Ba.identifier in Rr&&(Rr[Ba.identifier]=xe(Ba))}),ji}function kn(){var ji=e.event.target;e.select(ji).on(Oa,Us).on(an,Uie),yn.push(ji);for(var Ba=e.event.changedTouches,ii=0,wo=Ba.length;ii1){var Gs=oi[0],Nl=oi[1],rp=Gs[0]-Nl[0],IA=Gs[1]-Nl[1];tt=rp*rp+IA*IA}}function Us(){var ji=e.touches(tr),Ba,ii,wo,oi;Kd.call(tr);for(var bf=0,Gs=ji.length;bf1?1:g,A=A<0?0:A>1?1:A,L=A<=.5?A*(1+g):A+g-A*g,q=2*A-L;function C(F){return F>360?F-=360:F<0&&(F+=360),F<60?q+(L-q)*F/60:F<180?L:F<240?q+(L-q)*(240-F)/60:q}function I(F){return Math.round(C(F)*255)}return new Ut(I(h+120),I(h),I(h-120))}e.hcl=Zt;function Zt(h,g,A){return this instanceof Zt?(this.h=+h,this.c=+g,void(this.l=+A)):arguments.length<2?h instanceof Zt?new Zt(h.h,h.c,h.l):h instanceof Xt?Rt(h.l,h.a,h.b):Rt((h=sr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new Zt(h,g,A)}var tn=Zt.prototype=new Pt;tn.brighter=function(h){return new Zt(this.h,this.c,Math.min(100,this.l+ft*(arguments.length?h:1)))},tn.darker=function(h){return new Zt(this.h,this.c,Math.max(0,this.l-ft*(arguments.length?h:1)))},tn.rgb=function(){return Tn(this.h,this.c,this.l).rgb()};function Tn(h,g,A){return isNaN(h)&&(h=0),isNaN(g)&&(g=0),new Xt(A,Math.cos(h*=Ar)*g,Math.sin(h)*g)}e.lab=Xt;function Xt(h,g,A){return this instanceof Xt?(this.l=+h,this.a=+g,void(this.b=+A)):arguments.length<2?h instanceof Xt?new Xt(h.l,h.a,h.b):h instanceof Zt?Tn(h.h,h.c,h.l):sr((h=Ut(h)).r,h.g,h.b):new Xt(h,g,A)}var ft=18,xa=.95047,Ko=1,Qo=1.08883,vt=Xt.prototype=new Pt;vt.brighter=function(h){return new Xt(Math.min(100,this.l+ft*(arguments.length?h:1)),this.a,this.b)},vt.darker=function(h){return new Xt(Math.max(0,this.l-ft*(arguments.length?h:1)),this.a,this.b)},vt.rgb=function(){return An(this.l,this.a,this.b)};function An(h,g,A){var q=(h+16)/116,L=q+g/500,C=q-A/200;return L=zs(L)*xa,q=zs(q)*Ko,C=zs(C)*Qo,new Ut(Gi(3.2404542*L-1.5371385*q-.4985314*C),Gi(-.969266*L+1.8760108*q+.041556*C),Gi(.0556434*L-.2040259*q+1.0572252*C))}function Rt(h,g,A){return h>0?new Zt(Math.atan2(A,g)*Wr,Math.sqrt(g*g+A*A),h):new Zt(NaN,NaN,h)}function zs(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function pn(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function Gi(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=Ut;function Ut(h,g,A){return this instanceof Ut?(this.r=~~h,this.g=~~g,void(this.b=~~A)):arguments.length<2?h instanceof Ut?new Ut(h.r,h.g,h.b):$r(""+h,Ut,ba):new Ut(h,g,A)}function Yi(h){return new Ut(h>>16,h>>8&255,h&255)}function Pl(h){return Yi(h)+""}var Rl=Ut.prototype=new Pt;Rl.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var g=this.r,A=this.g,q=this.b,L=30;return!g&&!A&&!q?new Ut(L,L,L):(g&&g>4,q=q>>4|q,L=U&240,L=L>>4|L,C=U&15,C=C<<4|C):h.length===7&&(q=(U&16711680)>>16,L=(U&65280)>>8,C=U&255)),g(q,L,C))}function ht(h,g,A){var q=Math.min(h/=255,g/=255,A/=255),L=Math.max(h,g,A),C=L-q,I,F,U=(L+q)/2;return C?(F=U<.5?C/(L+q):C/(2-L-q),h==L?I=(g-A)/C+(g0&&U<1?0:I),new Qr(I,F,U)}function sr(h,g,A){h=za(h),g=za(g),A=za(A);var q=pn((.4124564*h+.3575761*g+.1804375*A)/xa),L=pn((.2126729*h+.7151522*g+.072175*A)/Ko),C=pn((.0193339*h+.119192*g+.9503041*A)/Qo);return Xt(116*L-16,500*(q-L),200*(L-C))}function za(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Tt(h){var g=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(g*2.55):g}var Ia=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Ia.forEach(function(h,g){Ia.set(h,Yi(g))});function Br(h){return typeof h=="function"?h:function(){return h}}e.functor=Br,e.xhr=Vi(H);function Vi(h){return function(g,A,q){return arguments.length===2&&typeof A=="function"&&(q=A,A=null),Is(g,A,h,q)}}function Is(h,g,A,q){var L={},C=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,U=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=J:F.onreadystatechange=function(){F.readyState>3&&J()};function J(){var $=F.status,ee;if(!$&&Yae(F)||$>=200&&$<300||$===304){try{ee=A.call(L,F)}catch(re){C.error.call(L,re);return}C.load.call(L,ee)}else C.error.call(L,F)}return F.onprogress=function($){var ee=e.event;e.event=$;try{C.progress.call(L,F)}finally{e.event=ee}},L.header=function($,ee){return $=($+"").toLowerCase(),arguments.length<2?I[$]:(ee==null?delete I[$]:I[$]=ee+"",L)},L.mimeType=function($){return arguments.length?(g=$==null?null:$+"",L):g},L.responseType=function($){return arguments.length?(U=$,L):U},L.response=function($){return A=$,L},["get","post"].forEach(function($){L[$]=function(){return L.send.apply(L,[$].concat(t(arguments)))}}),L.send=function($,ee,re){if(arguments.length===2&&typeof ee=="function"&&(re=ee,ee=null),F.open($,h,!0),g!=null&&!("accept"in I)&&(I.accept=g+",*/*"),F.setRequestHeader)for(var _e in I)F.setRequestHeader(_e,I[_e]);return g!=null&&F.overrideMimeType&&F.overrideMimeType(g),U!=null&&(F.responseType=U),re!=null&&L.on("error",re).on("load",function(Me){re(null,Me)}),C.beforesend.call(L,F),F.send(ee==null?null:ee),L},L.abort=function(){return F.abort(),L},e.rebind(L,C,"on"),q==null?L:L.get(Gae(q))}function Gae(h){return h.length===1?function(g,A){h(g==null?A:null)}:h}function Yae(h){var g=h.responseType;return g&&g!=="text"?h.response:h.responseText}e.dsv=function(h,g){var A=new RegExp('["'+h+` ]`),q=h.charCodeAt(0);function L(J,$,ee){arguments.length<3&&(ee=$,$=null);var re=Is(J,g,$==null?C:I($),ee);return re.row=function(_e){return arguments.length?re.response(($=_e)==null?C:I(_e)):$},re}function C(J){return L.parse(J.responseText)}function I(J){return function($){return L.parse($.responseText,J)}}L.parse=function(J,$){var ee;return L.parseRows(J,function(re,_e){if(ee)return ee(re,_e-1);var Me=function(ae){for(var ce={},ge=re.length,Ae=0;Ae=Me)return re;if(Ae)return Ae=!1,ee;var Ve=ae;if(J.charCodeAt(Ve)===34){for(var nr=Ve;nr++24?(isFinite(g)&&(clearTimeout(Nd),Nd=setTimeout(A3,g)),Fd=0):(Fd=1,A8(A3))}e.timer.flush=function(){M8(),k8()};function M8(){for(var h=Date.now(),g=Pd;g;)h>=g.t&&g.c(h-g.t)&&(g.c=null),g=g.n;return h}function k8(){for(var h,g=Pd,A=1/0;g;)g.c?(g.t=0;--F)ae.push(L[J[ee[F]][2]]);for(F=+_e;F1&&zr(h[A[q-2]],h[A[q-1]],h[L])<=0;)--q;A[q++]=L}return A.slice(0,q)}function Vae(h,g){return h[0]-g[0]||h[1]-g[1]}e.geom.polygon=function(h){return K(h,Id),h};var Id=e.geom.polygon.prototype=[];Id.area=function(){for(var h=-1,g=this.length,A,q=this[g-1],L=0;++hve)F=F.L;else if(I=g-Xae(F,A),I>ve){if(!F.R){q=F;break}F=F.R}else{C>-ve?(q=F.P,L=F):I>-ve?(q=F,L=F.N):q=L=F;break}var U=E8(h);if(pf.insert(q,U),!(!q&&!L)){if(q===L){mf(q),L=E8(q.site),pf.insert(U,L),U.edge=L.edge=Rv(q.site,U.site),yf(q),yf(L);return}if(!L){U.edge=Rv(q.site,U.site);return}mf(q),mf(L);var J=q.site,$=J.x,ee=J.y,re=h.x-$,_e=h.y-ee,Me=L.site,ae=Me.x-$,ce=Me.y-ee,ge=2*(re*ce-_e*ae),Ae=re*re+_e*_e,ke=ae*ae+ce*ce,xe={x:(ce*Ae-_e*ke)/ge+$,y:(re*ke-ae*Ae)/ge+ee};Od(L.edge,J,Me,xe),U.edge=Rv(J,h,null,xe),L.edge=Rv(h,Me,null,xe),yf(q),yf(L)}}function D8(h,g){var A=h.site,q=A.x,L=A.y,C=L-g;if(!C)return q;var I=h.P;if(!I)return-1/0;A=I.site;var F=A.x,U=A.y,J=U-g;if(!J)return F;var $=F-q,ee=1/C-1/J,re=$/J;return ee?(-re+Math.sqrt(re*re-2*ee*($*$/(-2*J)-U+J/2+L-C/2)))/ee+q:(q+F)/2}function Xae(h,g){var A=h.N;if(A)return D8(A,g);var q=h.site;return q.y===g?q.x:1/0}function P8(h){this.site=h,this.edges=[]}P8.prototype.prepare=function(){for(var h=this.edges,g=h.length,A;g--;)A=h[g].edge,(!A.b||!A.a)&&h.splice(g,1);return h.sort(R8),h.length};function Jae(h){for(var g=h[0][0],A=h[1][0],q=h[0][1],L=h[1][1],C,I,F,U,J=Os,$=J.length,ee,re,_e,Me,ae,ce;$--;)if(ee=J[$],!(!ee||!ee.prepare()))for(_e=ee.edges,Me=_e.length,re=0;reve||x(U-I)>ve)&&(_e.splice(re,0,new Bd(rne(ee.site,ce,x(F-g)ve?{x:g,y:x(C-g)ve?{x:x(I-L)ve?{x:A,y:x(C-A)ve?{x:x(I-q)=-De)){var re=U*U+J*J,_e=$*$+ce*ce,Me=(ce*re-J*_e)/ee,ae=(U*_e-$*re)/ee,ce=ae+F,ge=C8.pop()||new $ae;ge.arc=h,ge.site=L,ge.x=Me+I,ge.y=ce+Math.sqrt(Me*Me+ae*ae),ge.cy=ce,h.circle=ge;for(var Ae=null,ke=Pv._;ke;)if(ge.y0)){if(ae/=_e,_e<0){if(ae0){if(ae>re)return;ae>ee&&(ee=ae)}if(ae=A-F,!(!_e&&ae<0)){if(ae/=_e,_e<0){if(ae>re)return;ae>ee&&(ee=ae)}else if(_e>0){if(ae0)){if(ae/=Me,Me<0){if(ae0){if(ae>re)return;ae>ee&&(ee=ae)}if(ae=q-U,!(!Me&&ae<0)){if(ae/=Me,Me<0){if(ae>re)return;ae>ee&&(ee=ae)}else if(Me>0){if(ae0&&(L.a={x:F+ee*_e,y:U+ee*Me}),re<1&&(L.b={x:F+re*_e,y:U+re*Me}),L}}}}}}function Qae(h){for(var g=df,A=Kae(h[0][0],h[0][1],h[1][0],h[1][1]),q=g.length,L;q--;)L=g[q],(!ene(L,h)||!A(L)||x(L.a.x-L.b.x)=C)return;if($>re){if(!q)q={x:Me,y:I};else if(q.y>=F)return;A={x:Me,y:F}}else{if(!q)q={x:Me,y:F};else if(q.y1)if($>re){if(!q)q={x:(I-ge)/ce,y:I};else if(q.y>=F)return;A={x:(F-ge)/ce,y:F}}else{if(!q)q={x:(F-ge)/ce,y:F};else if(q.y=C)return;A={x:C,y:ce*C+ge}}else{if(!q)q={x:C,y:ce*C+ge};else if(q.x=$&&ge.x<=re&&ge.y>=ee&&ge.y<=_e?[[$,_e],[re,_e],[re,ee],[$,ee]]:[];Ae.point=U[ae]}),J}function F(U){return U.map(function(J,$){return{x:Math.round(q(J,$)/ve)*ve,y:Math.round(L(J,$)/ve)*ve,i:$}})}return I.links=function(U){return C3(F(U)).edges.filter(function(J){return J.l&&J.r}).map(function(J){return{source:U[J.l.i],target:U[J.r.i]}})},I.triangles=function(U){var J=[];return C3(F(U)).cells.forEach(function($,ee){for(var re=$.site,_e=$.edges.sort(R8),Me=-1,ae=_e.length,ce,ge,Ae=_e[ae-1].edge,ke=Ae.l===re?Ae.r:Ae.l;++Meke&&(ke=$.x),$.y>xe&&(xe=$.y),_e.push($.x),Me.push($.y);else for(ae=0;aeke&&(ke=Ve),nr>xe&&(xe=nr),_e.push(Ve),Me.push(nr)}var fr=ke-ge,or=xe-Ae;fr>or?xe=Ae+fr:ke=ge+or;function dr(mr,kr,rt,Jt,yt,tr,Dr,Rr){if(!(isNaN(rt)||isNaN(Jt)))if(mr.leaf){var tt=mr.x,Bt=mr.y;if(tt!=null)if(x(tt-rt)+x(Bt-Jt)<.01)pr(mr,kr,rt,Jt,yt,tr,Dr,Rr);else{var fa=mr.point;mr.x=mr.y=mr.point=null,pr(mr,fa,tt,Bt,yt,tr,Dr,Rr),pr(mr,kr,rt,Jt,yt,tr,Dr,Rr)}else mr.x=rt,mr.y=Jt,mr.point=kr}else pr(mr,kr,rt,Jt,yt,tr,Dr,Rr)}function pr(mr,kr,rt,Jt,yt,tr,Dr,Rr){var tt=(yt+Dr)*.5,Bt=(tr+Rr)*.5,fa=rt>=tt,Oa=Jt>=Bt,an=Oa<<1|fa;mr.leaf=!1,mr=mr.nodes[an]||(mr.nodes[an]=z8()),fa?yt=tt:Dr=tt,Oa?tr=Bt:Rr=Bt,dr(mr,kr,rt,Jt,yt,tr,Dr,Rr)}var Er=z8();if(Er.add=function(mr){dr(Er,mr,+ee(mr,++ae),+re(mr,ae),ge,Ae,ke,xe)},Er.visit=function(mr){zv(mr,Er,ge,Ae,ke,xe)},Er.find=function(mr){return one(Er,mr[0],mr[1],ge,Ae,ke,xe)},ae=-1,g==null){for(;++aeC||re>I||_e=Ve,or=A>=nr,dr=or<<1|fr,pr=dr+4;drA&&(C=g.slice(A,C),F[I]?F[I]+=C:F[++I]=C),(q=q[0])===(L=L[0])?F[I]?F[I]+=L:F[++I]=L:(F[++I]=null,U.push({i:I,x:el(q,L)})),A=P3.lastIndex;return A=0&&!(q=e.interpolators[A](h,g)););return q}e.interpolators=[function(h,g){var A=typeof g;return(A==="string"?Ia.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?E3:O8:g instanceof Pt?E3:Array.isArray(g)?Gd:A==="object"&&isNaN(g)?I8:el)(h,g)}],e.interpolateArray=Gd;function Gd(h,g){var A=[],q=[],L=h.length,C=g.length,I=Math.min(h.length,g.length),F;for(F=0;F=0?h.slice(0,g):h,q=g>=0?h.slice(g+1):"in";return A=lne.get(A)||B8,q=sne.get(q)||H,une(q(A.apply(null,r.call(arguments,1))))};function une(h){return function(g){return g<=0?0:g>=1?1:h(g)}}function H8(h){return function(g){return 1-h(1-g)}}function U8(h){return function(g){return .5*(g<.5?h(2*g):2-h(2-2*g))}}function fne(h){return h*h}function cne(h){return h*h*h}function vne(h){if(h<=0)return 0;if(h>=1)return 1;var g=h*h,A=g*h;return 4*(h<.5?A:3*(h-g)+A-.75)}function hne(h){return function(g){return Math.pow(g,h)}}function dne(h){return 1-Math.cos(h*ur)}function pne(h){return Math.pow(2,10*(h-1))}function yne(h){return 1-Math.sqrt(1-h*h)}function mne(h,g){var A;return arguments.length<2&&(g=.45),arguments.length?A=g/ar*Math.asin(1/h):(h=1,A=g/4),function(q){return 1+h*Math.pow(2,-10*q)*Math.sin((q-A)*ar/g)}}function gne(h){return h||(h=1.70158),function(g){return g*g*((h+1)*g-h)}}function bne(h){return h<1/2.75?7.5625*h*h:h<2/2.75?7.5625*(h-=1.5/2.75)*h+.75:h<2.5/2.75?7.5625*(h-=2.25/2.75)*h+.9375:7.5625*(h-=2.625/2.75)*h+.984375}e.interpolateHcl=xne;function xne(h,g){h=e.hcl(h),g=e.hcl(g);var A=h.h,q=h.c,L=h.l,C=g.h-A,I=g.c-q,F=g.l-L;return isNaN(I)&&(I=0,q=isNaN(q)?g.c:q),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(U){return Tn(A+C*U,q+I*U,L+F*U)+""}}e.interpolateHsl=_ne;function _ne(h,g){h=e.hsl(h),g=e.hsl(g);var A=h.h,q=h.s,L=h.l,C=g.h-A,I=g.s-q,F=g.l-L;return isNaN(I)&&(I=0,q=isNaN(q)?g.s:q),isNaN(C)?(C=0,A=isNaN(A)?g.h:A):C>180?C-=360:C<-180&&(C+=360),function(U){return ba(A+C*U,q+I*U,L+F*U)+""}}e.interpolateLab=wne;function wne(h,g){h=e.lab(h),g=e.lab(g);var A=h.l,q=h.a,L=h.b,C=g.l-A,I=g.a-q,F=g.b-L;return function(U){return An(A+C*U,q+I*U,L+F*U)+""}}e.interpolateRound=G8;function G8(h,g){return g-=h,function(A){return Math.round(h+g*A)}}e.transform=function(h){var g=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(A){if(A!=null){g.setAttribute("transform",A);var q=g.transform.baseVal.consolidate()}return new Y8(q?q.matrix:Ane)})(h)};function Y8(h){var g=[h.a,h.b],A=[h.c,h.d],q=W8(g),L=V8(g,A),C=W8(Tne(A,g,-L))||0;g[0]*A[1]180?g+=360:g-h>180&&(h+=360),q.push({i:A.push(gf(A)+"rotate(",null,")")-2,x:el(h,g)})):g&&A.push(gf(A)+"rotate("+g+")")}function Sne(h,g,A,q){h!==g?q.push({i:A.push(gf(A)+"skewX(",null,")")-2,x:el(h,g)}):g&&A.push(gf(A)+"skewX("+g+")")}function qne(h,g,A,q){if(h[0]!==g[0]||h[1]!==g[1]){var L=A.push(gf(A)+"scale(",null,",",null,")");q.push({i:L-4,x:el(h[0],g[0])},{i:L-2,x:el(h[1],g[1])})}else(g[0]!==1||g[1]!==1)&&A.push(gf(A)+"scale("+g+")")}function j8(h,g){var A=[],q=[];return h=e.transform(h),g=e.transform(g),Mne(h.translate,g.translate,A,q),kne(h.rotate,g.rotate,A,q),Sne(h.skew,g.skew,A,q),qne(h.scale,g.scale,A,q),h=g=null,function(L){for(var C=-1,I=q.length,F;++C0?C=xe:(A.c=null,A.t=NaN,A=null,g.end({type:"end",alpha:C=0})):xe>0&&(g.start({type:"start",alpha:C=xe}),A=zd(h.tick)),h):C},h.start=function(){var xe,Ve=_e.length,nr=Me.length,fr=q[0],or=q[1],dr,pr;for(xe=0;xe=0;)C.push($=J[U]),$.parent=F,$.depth=F.depth+1;A&&(F.value=0),F.children=J}else A&&(F.value=+A.call(q,F,F.depth)||0),delete F.children;return _o(L,function(ee){var re,_e;h&&(re=ee.children)&&re.sort(h),A&&(_e=ee.parent)&&(_e.value+=ee.value)}),I}return q.sort=function(L){return arguments.length?(h=L,q):h},q.children=function(L){return arguments.length?(g=L,q):g},q.value=function(L){return arguments.length?(A=L,q):A},q.revalue=function(L){return A&&(Ov(L,function(C){C.children&&(C.value=0)}),_o(L,function(C){var I;C.children||(C.value=+A.call(q,C,C.depth)||0),(I=C.parent)&&(I.value+=C.value)})),L},q};function Iv(h,g){return e.rebind(h,g,"sort","children","value"),h.nodes=h,h.links=Gne,h}function Ov(h,g){for(var A=[h];(h=A.pop())!=null;)if(g(h),(L=h.children)&&(q=L.length))for(var q,L;--q>=0;)A.push(L[q])}function _o(h,g){for(var A=[h],q=[];(h=A.pop())!=null;)if(q.push(h),(I=h.children)&&(C=I.length))for(var L=-1,C,I;++LL&&(L=F),q.push(F)}for(I=0;Iq&&(A=g,q=L);return A}function Jne(h){return h.reduce($ne,0)}function $ne(h,g){return h+g[1]}e.layout.histogram=function(){var h=!0,g=Number,A=Qne,q=Kne;function L(C,re){for(var F=[],U=C.map(g,this),J=A.call(this,U,re),$=q.call(this,J,U,re),ee,re=-1,_e=U.length,Me=$.length-1,ae=h?1:1/_e,ce;++re0)for(re=-1;++re<_e;)ce=U[re],ce>=J[0]&&ce<=J[1]&&(ee=F[e.bisect($,ce,1,Me)-1],ee.y+=ae,ee.push(C[re]));return F}return L.value=function(C){return arguments.length?(g=C,L):g},L.range=function(C){return arguments.length?(A=Br(C),L):A},L.bins=function(C){return arguments.length?(q=typeof C=="number"?function(I){return $8(I,C)}:Br(C),L):q},L.frequency=function(C){return arguments.length?(h=!!C,L):h},L};function Kne(h,g){return $8(h,Math.ceil(Math.log(g.length)/Math.LN2+1))}function $8(h,g){for(var A=-1,q=+h[0],L=(h[1]-q)/g,C=[];++A<=g;)C[A]=L*A+q;return C}function Qne(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(eie),g=0,A=[1,1],q;function L(C,I){var F=h.call(this,C,I),U=F[0],J=A[0],$=A[1],ee=q==null?Math.sqrt:typeof q=="function"?q:function(){return q};if(U.x=U.y=0,_o(U,function(_e){_e.r=+ee(_e.value)}),_o(U,eA),g){var re=g*(q?1:Math.max(2*U.r/J,2*U.r/$))/2;_o(U,function(_e){_e.r+=re}),_o(U,eA),_o(U,function(_e){_e.r-=re})}return rA(U,J/2,$/2,q?1:1/Math.max(2*U.r/J,2*U.r/$)),F}return L.size=function(C){return arguments.length?(A=C,L):A},L.radius=function(C){return arguments.length?(q=C==null||typeof C=="function"?C:+C,L):q},L.padding=function(C){return arguments.length?(g=+C,L):g},Iv(L,h)};function eie(h,g){return h.value-g.value}function N3(h,g){var A=h._pack_next;h._pack_next=g,g._pack_prev=h,g._pack_next=A,A._pack_prev=g}function K8(h,g){h._pack_next=g,g._pack_prev=h}function Q8(h,g){var A=g.x-h.x,q=g.y-h.y,L=h.r+g.r;return .999*L*L>A*A+q*q}function eA(h){if(!(g=h.children)||!(re=g.length))return;var g,A=1/0,q=-1/0,L=1/0,C=-1/0,I,F,U,J,$,ee,re;function _e(xe){A=Math.min(xe.x-xe.r,A),q=Math.max(xe.x+xe.r,q),L=Math.min(xe.y-xe.r,L),C=Math.max(xe.y+xe.r,C)}if(g.forEach(rie),I=g[0],I.x=-I.r,I.y=0,_e(I),re>1&&(F=g[1],F.x=F.r,F.y=0,_e(F),re>2))for(U=g[2],tA(I,F,U),_e(U),N3(I,U),I._pack_prev=U,N3(U,F),F=I._pack_next,J=3;Jce.x&&(ce=Ve),Ve.depth>ge.depth&&(ge=Ve)});var Ae=g(ae,ce)/2-ae.x,ke=A[0]/(ce.x+g(ce,ae)/2+Ae),xe=A[1]/(ge.depth||1);Ov(_e,function(Ve){Ve.x=(Ve.x+Ae)*ke,Ve.y=Ve.depth*xe})}return re}function C($){for(var ee={A:null,children:[$]},re=[ee],_e;(_e=re.pop())!=null;)for(var Me=_e.children,ae,ce=0,ge=Me.length;ce0&&(aie(iie(ae,$,re),$,Ve),ge+=Ve,Ae+=Ve),ke+=ae.m,ge+=_e.m,xe+=ce.m,Ae+=Me.m;ae&&!I3(Me)&&(Me.t=ae,Me.m+=ke-Ae),_e&&!z3(ce)&&(ce.t=_e,ce.m+=ge-xe,re=$)}return re}function J($){$.x*=A[0],$.y=$.depth*A[1]}return L.separation=function($){return arguments.length?(g=$,L):g},L.size=function($){return arguments.length?(q=(A=$)==null?J:null,L):q?null:A},L.nodeSize=function($){return arguments.length?(q=(A=$)==null?null:J,L):q?A:null},Iv(L,h)};function aA(h,g){return h.parent==g.parent?1:2}function z3(h){var g=h.children;return g.length?g[0]:h.t}function I3(h){var g=h.children,A;return(A=g.length)?g[A-1]:h.t}function aie(h,g,A){var q=A/(g.i-h.i);g.c-=q,g.s+=A,h.c+=q,g.z+=A,g.m+=A}function nie(h){for(var g=0,A=0,q=h.children,L=q.length,C;--L>=0;)C=q[L],C.z+=g,C.m+=g,g+=C.s+(A+=C.c)}function iie(h,g,A){return h.a.parent===g.parent?h.a:A}e.layout.cluster=function(){var h=e.layout.hierarchy().sort(null).value(null),g=aA,A=[1,1],q=!1;function L(C,I){var F=h.call(this,C,I),U=F[0],J,$=0;_o(U,function(ae){var ce=ae.children;ce&&ce.length?(ae.x=lie(ce),ae.y=oie(ce)):(ae.x=J?$+=g(ae,J):0,ae.y=0,J=ae)});var ee=nA(U),re=iA(U),_e=ee.x-g(ee,re)/2,Me=re.x+g(re,ee)/2;return _o(U,q?function(ae){ae.x=(ae.x-U.x)*A[0],ae.y=(U.y-ae.y)*A[1]}:function(ae){ae.x=(ae.x-_e)/(Me-_e)*A[0],ae.y=(1-(U.y?ae.y/U.y:1))*A[1]}),F}return L.separation=function(C){return arguments.length?(g=C,L):g},L.size=function(C){return arguments.length?(q=(A=C)==null,L):q?null:A},L.nodeSize=function(C){return arguments.length?(q=(A=C)!=null,L):q?A:null},Iv(L,h)};function oie(h){return 1+e.max(h,function(g){return g.y})}function lie(h){return h.reduce(function(g,A){return g+A.x},0)/h.length}function nA(h){var g=h.children;return g&&g.length?nA(g[0]):h}function iA(h){var g=h.children,A;return g&&(A=g.length)?iA(g[A-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),g=Math.round,A=[1,1],q=null,L=O3,C=!1,I,F="squarify",U=.5*(1+Math.sqrt(5));function J(ae,ce){for(var ge=-1,Ae=ae.length,ke,xe;++ge0;)Ae.push(xe=ke[or-1]),Ae.area+=xe.area,F!=="squarify"||(nr=re(Ae,fr))<=Ve?(ke.pop(),Ve=nr):(Ae.area-=Ae.pop().area,_e(Ae,fr,ge,!1),fr=Math.min(ge.dx,ge.dy),Ae.length=Ae.area=0,Ve=1/0);Ae.length&&(_e(Ae,fr,ge,!0),Ae.length=Ae.area=0),ce.forEach($)}}function ee(ae){var ce=ae.children;if(ce&&ce.length){var ge=L(ae),Ae=ce.slice(),ke,xe=[];for(J(Ae,ge.dx*ge.dy/ae.value),xe.area=0;ke=Ae.pop();)xe.push(ke),xe.area+=ke.area,ke.z!=null&&(_e(xe,ke.z?ge.dx:ge.dy,ge,!Ae.length),xe.length=xe.area=0);ce.forEach(ee)}}function re(ae,ce){for(var ge=ae.area,Ae,ke=0,xe=1/0,Ve=-1,nr=ae.length;++Veke&&(ke=Ae));return ge*=ge,ce*=ce,ge?Math.max(ce*ke*U/ge,ge/(ce*xe*U)):1/0}function _e(ae,ce,ge,Ae){var ke=-1,xe=ae.length,Ve=ge.x,nr=ge.y,fr=ce?g(ae.area/ce):0,or;if(ce==ge.dx){for((Ae||fr>ge.dy)&&(fr=ge.dy);++kege.dx)&&(fr=ge.dx);++ke1);return h+g*q*Math.sqrt(-2*Math.log(C)/C)}},logNormal:function(){var h=e.random.normal.apply(e,arguments);return function(){return Math.exp(h())}},bates:function(h){var g=e.random.irwinHall(h);return function(){return g()/h}},irwinHall:function(h){return function(){for(var g=0,A=0;A2?fie:sie,J=q?Cne:Lne;return L=U(h,g,J,A),C=U(g,h,J,Bs),F}function F(U){return L(U)}return F.invert=function(U){return C(U)},F.domain=function(U){return arguments.length?(h=U.map(Number),I()):h},F.range=function(U){return arguments.length?(g=U,I()):g},F.rangeRound=function(U){return F.range(U).interpolate(G8)},F.clamp=function(U){return arguments.length?(q=U,I()):q},F.interpolate=function(U){return arguments.length?(A=U,I()):A},F.ticks=function(U){return U3(h,U)},F.tickFormat=function(U,J){return d3_scale_linearTickFormat(h,U,J)},F.nice=function(U){return fA(h,U),I()},F.copy=function(){return sA(h,g,A,q)},I()}function uA(h,g){return e.rebind(h,g,"range","rangeRound","interpolate","clamp")}function fA(h,g){return B3(h,lA(H3(h,g)[2])),B3(h,lA(H3(h,g)[2])),h}function H3(h,g){g==null&&(g=10);var A=Yd(h),q=A[1]-A[0],L=Math.pow(10,Math.floor(Math.log(q/g)/Math.LN10)),C=g/q*L;return C<=.15?L*=10:C<=.35?L*=5:C<=.75&&(L*=2),A[0]=Math.ceil(A[0]/L)*L,A[1]=Math.floor(A[1]/L)*L+L*.5,A[2]=L,A}function U3(h,g){return e.range.apply(e,H3(h,g))}var cie={s:1,g:1,p:1,r:1,e:1};function cA(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function QLe(h,g){var A=cA(g[2]);return h in cie?Math.abs(A-cA(Math.max(x(g[0]),x(g[1]))))+ +(h!=="e"):A-(h==="%")*2}e.scale.log=function(){return vA(e.scale.linear().domain([0,1]),10,!0,[1,10])};function vA(h,g,A,q){function L(F){return(A?Math.log(F<0?0:F):-Math.log(F>0?0:-F))/Math.log(g)}function C(F){return A?Math.pow(g,F):-Math.pow(g,-F)}function I(F){return h(L(F))}return I.invert=function(F){return C(h.invert(F))},I.domain=function(F){return arguments.length?(A=F[0]>=0,h.domain((q=F.map(Number)).map(L)),I):q},I.base=function(F){return arguments.length?(g=+F,h.domain(q.map(L)),I):g},I.nice=function(){var F=B3(q.map(L),A?Math:vie);return h.domain(F),q=F.map(C),I},I.ticks=function(){var F=Yd(q),U=[],J=F[0],$=F[1],ee=Math.floor(L(J)),re=Math.ceil(L($)),_e=g%1?2:g;if(isFinite(re-ee)){if(A){for(;ee0;Me--)U.push(C(ee)*Me);for(ee=0;U[ee]$;re--);U=U.slice(ee,re)}return U},I.copy=function(){return vA(h.copy(),g,A,q)},uA(I,h)}var vie={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return hA(e.scale.linear(),1,[0,1])};function hA(h,g,A){var q=Wd(g),L=Wd(1/g);function C(I){return h(q(I))}return C.invert=function(I){return L(h.invert(I))},C.domain=function(I){return arguments.length?(h.domain((A=I.map(Number)).map(q)),C):A},C.ticks=function(I){return U3(A,I)},C.tickFormat=function(I,F){return d3_scale_linearTickFormat(A,I,F)},C.nice=function(I){return C.domain(fA(A,I))},C.exponent=function(I){return arguments.length?(q=Wd(g=I),L=Wd(1/g),h.domain(A.map(q)),C):g},C.copy=function(){return hA(h.copy(),g,A)},uA(C,h)}function Wd(h){return function(g){return g<0?-Math.pow(-g,h):Math.pow(g,h)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return dA([],{t:"range",a:[[]]})};function dA(h,g){var A,q,L;function C(F){return q[((A.get(F)||(g.t==="range"?A.set(F,h.push(F)):NaN))-1)%q.length]}function I(F,U){return e.range(h.length).map(function(J){return F+U*J})}return C.domain=function(F){if(!arguments.length)return h;h=[],A=new b;for(var U=-1,J=F.length,$;++U0?A[C-1]:h[0],Cre?0:1;if($=hr)return U($,Me)+(J?U(J,1-Me):"")+"Z";var ae,ce,ge,Ae,ke=0,xe=0,Ve,nr,fr,or,dr,pr,Er,mr,kr=[];if((Ae=(+I.apply(this,arguments)||0)/2)&&(ge=q===jd?Math.sqrt(J*J+$*$):+q.apply(this,arguments),Me||(xe*=-1),$&&(xe=Dt(ge/$*Math.sin(Ae))),J&&(ke=Dt(ge/J*Math.sin(Ae)))),$){Ve=$*Math.cos(ee+xe),nr=$*Math.sin(ee+xe),fr=$*Math.cos(re-xe),or=$*Math.sin(re-xe);var rt=Math.abs(re-ee-2*xe)<=qe?0:1;if(xe&&Zd(Ve,nr,fr,or)===Me^rt){var Jt=(ee+re)/2;Ve=$*Math.cos(Jt),nr=$*Math.sin(Jt),fr=or=null}}else Ve=nr=0;if(J){dr=J*Math.cos(re-ke),pr=J*Math.sin(re-ke),Er=J*Math.cos(ee+ke),mr=J*Math.sin(ee+ke);var yt=Math.abs(ee-re+2*ke)<=qe?0:1;if(ke&&Zd(dr,pr,Er,mr)===1-Me^yt){var tr=(ee+re)/2;dr=J*Math.cos(tr),pr=J*Math.sin(tr),Er=mr=null}}else dr=pr=0;if(_e>ve&&(ae=Math.min(Math.abs($-J)/2,+A.apply(this,arguments)))>.001){ce=J<$^Me?0:1;var Dr=ae,Rr=ae;if(_e0?0:1}function Xd(h,g,A,q,L){var C=h[0]-g[0],I=h[1]-g[1],F=(L?q:-q)/Math.sqrt(C*C+I*I),U=F*I,J=-F*C,$=h[0]+U,ee=h[1]+J,re=g[0]+U,_e=g[1]+J,Me=($+re)/2,ae=(ee+_e)/2,ce=re-$,ge=_e-ee,Ae=ce*ce+ge*ge,ke=A-q,xe=$*_e-re*ee,Ve=(ge<0?-1:1)*Math.sqrt(Math.max(0,ke*ke*Ae-xe*xe)),nr=(xe*ge-ce*Ve)/Ae,fr=(-xe*ce-ge*Ve)/Ae,or=(xe*ge+ce*Ve)/Ae,dr=(-xe*ce+ge*Ve)/Ae,pr=nr-Me,Er=fr-ae,mr=or-Me,kr=dr-ae;return pr*pr+Er*Er>mr*mr+kr*kr&&(nr=or,fr=dr),[[nr-U,fr-J],[nr*A/ke,fr*A/ke]]}function _A(){return!0}function wA(h){var g=hf,A=Dv,q=_A,L=Wi,C=L.key,I=.7;function F(U){var J=[],$=[],ee=-1,re=U.length,_e,Me=Br(g),ae=Br(A);function ce(){J.push("M",L(h($),I))}for(;++ee1?h.join("L"):h+"Z"}function TA(h){return h.join("L")+"Z"}function _ie(h){for(var g=0,A=h.length,q=h[0],L=[q[0],",",q[1]];++g1&&L.push("H",q[0]),L.join("")}function Y3(h){for(var g=0,A=h.length,q=h[0],L=[q[0],",",q[1]];++g1){F=g[1],C=h[U],U++,q+="C"+(L[0]+I[0])+","+(L[1]+I[1])+","+(C[0]-F[0])+","+(C[1]-F[1])+","+C[0]+","+C[1];for(var J=2;J9&&(C=A*3/Math.sqrt(C),I[F]=C*q,I[F+1]=C*L));for(F=-1;++F<=U;)C=(h[Math.min(U,F+1)][0]-h[Math.max(0,F-1)][0])/(6*(1+I[F]*I[F])),g.push([C||0,I[F]*C||0]);return g}function Cie(h){return h.length<3?Wi(h):h[0]+Jd(h,Lie(h))}e.svg.line.radial=function(){var h=wA(SA);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function SA(h){for(var g,A=-1,q=h.length,L,C;++Aqe)+",1 "+ee}function J($,ee,re,_e){return"Q 0,0 "+_e}return C.radius=function($){return arguments.length?(A=Br($),C):A},C.source=function($){return arguments.length?(h=Br($),C):h},C.target=function($){return arguments.length?(g=Br($),C):g},C.startAngle=function($){return arguments.length?(q=Br($),C):q},C.endAngle=function($){return arguments.length?(L=Br($),C):L},C};function Eie(h){return h.radius}e.svg.diagonal=function(){var h=LA,g=CA,A=EA;function q(L,C){var I=h.call(this,L,C),F=g.call(this,L,C),U=(I.y+F.y)/2,J=[I,{x:I.x,y:U},{x:F.x,y:U},F];return J=J.map(A),"M"+J[0]+"C"+J[1]+" "+J[2]+" "+J[3]}return q.source=function(L){return arguments.length?(h=Br(L),q):h},q.target=function(L){return arguments.length?(g=Br(L),q):g},q.projection=function(L){return arguments.length?(A=L,q):A},q};function EA(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),g=EA,A=h.projection;return h.projection=function(q){return arguments.length?A(Die(g=q)):g},h};function Die(h){return function(){var g=h.apply(this,arguments),A=g[0],q=g[1]-ur;return[A*Math.cos(q),A*Math.sin(q)]}}e.svg.symbol=function(){var h=Rie,g=Pie;function A(q,L){return(PA.get(h.call(this,q,L))||DA)(g.call(this,q,L))}return A.type=function(q){return arguments.length?(h=Br(q),A):h},A.size=function(q){return arguments.length?(g=Br(q),A):g},A};function Pie(){return 64}function Rie(){return"circle"}function DA(h){var g=Math.sqrt(h/qe);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var PA=e.map({circle:DA,cross:function(h){var g=Math.sqrt(h/5)/2;return"M"+-3*g+","+-g+"H"+-g+"V"+-3*g+"H"+g+"V"+-g+"H"+3*g+"V"+g+"H"+g+"V"+3*g+"H"+-g+"V"+g+"H"+-3*g+"Z"},diamond:function(h){var g=Math.sqrt(h/(2*RA)),A=g*RA;return"M0,"+-g+"L"+A+",0 0,"+g+" "+-A+",0Z"},square:function(h){var g=Math.sqrt(h)/2;return"M"+-g+","+-g+"L"+g+","+-g+" "+g+","+g+" "+-g+","+g+"Z"},"triangle-down":function(h){var g=Math.sqrt(h/$d),A=g*$d/2;return"M0,"+A+"L"+g+","+-A+" "+-g+","+-A+"Z"},"triangle-up":function(h){var g=Math.sqrt(h/$d),A=g*$d/2;return"M0,"+-A+"L"+g+","+A+" "+-g+","+A+"Z"}});e.svg.symbolTypes=PA.keys();var $d=Math.sqrt(3),RA=Math.tan(30*Ar);de.transition=function(h){for(var g=Hs||++NA,A=J3(h),q=[],L,C,I=Qd||{time:Date.now(),ease:vne,delay:0,duration:250},F=-1,U=this.length;++F0;)ee[--Ae].call(h,ge);if(ce>=1)return I.event&&I.event.end.call(h,h.__data__,g),--C.count?delete C[q]:delete h[A],1}I||(F=L.time,U=zd(re,0,F),I=C[q]={tween:new b,time:F,timer:U,delay:L.delay,duration:L.duration,ease:L.ease,index:g},L=null,++C.count)}e.svg.axis=function(){var h=e.scale.linear(),g=zA,A=6,q=6,L=3,C=[10],I=null,F;function U(J){J.each(function(){var $=e.select(this),ee=this.__chart__||h,re=this.__chart__=h.copy(),_e=I==null?re.ticks?re.ticks.apply(re,C):re.domain():I,Me=F==null?re.tickFormat?re.tickFormat.apply(re,C):H:F,ae=$.selectAll(".tick").data(_e,re),ce=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",ve),ge=e.transition(ae.exit()).style("opacity",ve).remove(),Ae=e.transition(ae.order()).style("opacity",1),ke=Math.max(A,0)+L,xe,Ve=Vd(re),nr=$.selectAll(".domain").data([0]),fr=(nr.enter().append("path").attr("class","domain"),e.transition(nr));ce.append("line"),ce.append("text");var or=ce.select("line"),dr=Ae.select("line"),pr=ae.select("text").text(Me),Er=ce.select("text"),mr=Ae.select("text"),kr=g==="top"||g==="left"?-1:1,rt,Jt,yt,tr;if(g==="bottom"||g==="top"?(xe=zie,rt="x",yt="y",Jt="x2",tr="y2",pr.attr("dy",kr<0?"0em":".71em").style("text-anchor","middle"),fr.attr("d","M"+Ve[0]+","+kr*q+"V0H"+Ve[1]+"V"+kr*q)):(xe=Iie,rt="y",yt="x",Jt="y2",tr="x2",pr.attr("dy",".32em").style("text-anchor",kr<0?"end":"start"),fr.attr("d","M"+kr*q+","+Ve[0]+"H0V"+Ve[1]+"H"+kr*q)),or.attr(tr,kr*A),Er.attr(yt,kr*ke),dr.attr(Jt,0).attr(tr,kr*A),mr.attr(rt,0).attr(yt,kr*ke),re.rangeBand){var Dr=re,Rr=Dr.rangeBand()/2;ee=re=function(tt){return Dr(tt)+Rr}}else ee.rangeBand?ee=re:ge.call(xe,re,ee);ce.call(xe,ee,re),Ae.call(xe,re,re)})}return U.scale=function(J){return arguments.length?(h=J,U):h},U.orient=function(J){return arguments.length?(g=J in Nie?J+"":zA,U):g},U.ticks=function(){return arguments.length?(C=t(arguments),U):C},U.tickValues=function(J){return arguments.length?(I=J,U):I},U.tickFormat=function(J){return arguments.length?(F=J,U):F},U.tickSize=function(J){var $=arguments.length;return $?(A=+J,q=+arguments[$-1],U):A},U.innerTickSize=function(J){return arguments.length?(A=+J,U):A},U.outerTickSize=function(J){return arguments.length?(q=+J,U):q},U.tickPadding=function(J){return arguments.length?(L=+J,U):L},U.tickSubdivide=function(){return arguments.length&&U},U};var zA="bottom",Nie={top:1,right:1,bottom:1,left:1};function zie(h,g,A){h.attr("transform",function(q){var L=g(q);return"translate("+(isFinite(L)?L:A(q))+",0)"})}function Iie(h,g,A){h.attr("transform",function(q){var L=g(q);return"translate(0,"+(isFinite(L)?L:A(q))+")"})}e.svg.brush=function(){var h=le($,"brushstart","brush","brushend"),g=null,A=null,q=[0,0],L=[0,0],C,I,F=!0,U=!0,J=$3[0];function $(ae){ae.each(function(){var ce=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Me).on("touchstart.brush",Me),ge=ce.selectAll(".background").data([0]);ge.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),ce.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ae=ce.selectAll(".resize").data(J,H);Ae.exit().remove(),Ae.enter().append("g").attr("class",function(nr){return"resize "+nr}).style("cursor",function(nr){return Oie[nr]}).append("rect").attr("x",function(nr){return/[ew]$/.test(nr)?-3:null}).attr("y",function(nr){return/^[ns]/.test(nr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ae.style("display",$.empty()?"none":null);var ke=e.transition(ce),xe=e.transition(ge),Ve;g&&(Ve=Vd(g),xe.attr("x",Ve[0]).attr("width",Ve[1]-Ve[0]),re(ke)),A&&(Ve=Vd(A),xe.attr("y",Ve[0]).attr("height",Ve[1]-Ve[0]),_e(ke)),ee(ke)})}$.event=function(ae){ae.each(function(){var ce=h.of(this,arguments),ge={x:q,y:L,i:C,j:I},Ae=this.__chart__||ge;this.__chart__=ge,Hs?e.select(this).transition().each("start.brush",function(){C=Ae.i,I=Ae.j,q=Ae.x,L=Ae.y,ce({type:"brushstart"})}).tween("brush:brush",function(){var ke=Gd(q,ge.x),xe=Gd(L,ge.y);return C=I=null,function(Ve){q=ge.x=ke(Ve),L=ge.y=xe(Ve),ce({type:"brush",mode:"resize"})}}).each("end.brush",function(){C=ge.i,I=ge.j,ce({type:"brush",mode:"resize"}),ce({type:"brushend"})}):(ce({type:"brushstart"}),ce({type:"brush",mode:"resize"}),ce({type:"brushend"}))})};function ee(ae){ae.selectAll(".resize").attr("transform",function(ce){return"translate("+q[+/e$/.test(ce)]+","+L[+/^s/.test(ce)]+")"})}function re(ae){ae.select(".extent").attr("x",q[0]),ae.selectAll(".extent,.n>rect,.s>rect").attr("width",q[1]-q[0])}function _e(ae){ae.select(".extent").attr("y",L[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",L[1]-L[0])}function Me(){var ae=this,ce=e.select(e.event.target),ge=h.of(ae,arguments),Ae=e.select(ae),ke=ce.datum(),xe=!/^(n|s)$/.test(ke)&&g,Ve=!/^(e|w)$/.test(ke)&&A,nr=ce.classed("extent"),fr=cr(ae),or,dr=e.mouse(ae),pr,Er=e.select(i(ae)).on("keydown.brush",rt).on("keyup.brush",Jt);if(e.event.changedTouches?Er.on("touchmove.brush",yt).on("touchend.brush",Dr):Er.on("mousemove.brush",yt).on("mouseup.brush",Dr),Ae.interrupt().selectAll("*").interrupt(),nr)dr[0]=q[0]-dr[0],dr[1]=L[0]-dr[1];else if(ke){var mr=+/w$/.test(ke),kr=+/^n/.test(ke);pr=[q[1-mr]-dr[0],L[1-kr]-dr[1]],dr[0]=q[mr],dr[1]=L[kr]}else e.event.altKey&&(or=dr.slice());Ae.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",ce.style("cursor")),ge({type:"brushstart"}),yt();function rt(){e.event.keyCode==32&&(nr||(or=null,dr[0]-=q[1],dr[1]-=L[1],nr=2),te())}function Jt(){e.event.keyCode==32&&nr==2&&(dr[0]+=q[1],dr[1]+=L[1],nr=0,te())}function yt(){var Rr=e.mouse(ae),tt=!1;pr&&(Rr[0]+=pr[0],Rr[1]+=pr[1]),nr||(e.event.altKey?(or||(or=[(q[0]+q[1])/2,(L[0]+L[1])/2]),dr[0]=q[+(Rr[0]{(function(e,r){typeof ip=="object"&&typeof YA!="undefined"?r(ip):(e=e||self,r(e.d3=e.d3||{}))})(ip,function(e){"use strict";var r=new Date,t=new Date;function a(se,Te,Se,ir){function Qe(Le){return se(Le=arguments.length===0?new Date:new Date(+Le)),Le}return Qe.floor=function(Le){return se(Le=new Date(+Le)),Le},Qe.ceil=function(Le){return se(Le=new Date(Le-1)),Te(Le,1),se(Le),Le},Qe.round=function(Le){var Ce=Qe(Le),Ge=Qe.ceil(Le);return Le-Ce0))return Ze;do Ze.push(Ye=new Date(+Le)),Te(Le,Ge),se(Le);while(Ye=Ce)for(;se(Ce),!Le(Ce);)Ce.setTime(Ce-1)},function(Ce,Ge){if(Ce>=Ce)if(Ge<0)for(;++Ge<=0;)for(;Te(Ce,-1),!Le(Ce););else for(;--Ge>=0;)for(;Te(Ce,1),!Le(Ce););})},Se&&(Qe.count=function(Le,Ce){return r.setTime(+Le),t.setTime(+Ce),se(r),se(t),Math.floor(Se(r,t))},Qe.every=function(Le){return Le=Math.floor(Le),!isFinite(Le)||!(Le>0)?null:Le>1?Qe.filter(ir?function(Ce){return ir(Ce)%Le===0}:function(Ce){return Qe.count(0,Ce)%Le===0}):Qe}),Qe}var n=a(function(){},function(se,Te){se.setTime(+se+Te)},function(se,Te){return Te-se});n.every=function(se){return se=Math.floor(se),!isFinite(se)||!(se>0)?null:se>1?a(function(Te){Te.setTime(Math.floor(Te/se)*se)},function(Te,Se){Te.setTime(+Te+Se*se)},function(Te,Se){return(Se-Te)/se}):n};var i=n.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,c=a(function(se){se.setTime(se-se.getMilliseconds())},function(se,Te){se.setTime(+se+Te*o)},function(se,Te){return(Te-se)/o},function(se){return se.getUTCSeconds()}),v=c.range,d=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o)},function(se,Te){se.setTime(+se+Te*l)},function(se,Te){return(Te-se)/l},function(se){return se.getMinutes()}),p=d.range,m=a(function(se){se.setTime(se-se.getMilliseconds()-se.getSeconds()*o-se.getMinutes()*l)},function(se,Te){se.setTime(+se+Te*s)},function(se,Te){return(Te-se)/s},function(se){return se.getHours()}),y=m.range,x=a(function(se){se.setHours(0,0,0,0)},function(se,Te){se.setDate(se.getDate()+Te)},function(se,Te){return(Te-se-(Te.getTimezoneOffset()-se.getTimezoneOffset())*l)/u},function(se){return se.getDate()-1}),_=x.range;function w(se){return a(function(Te){Te.setDate(Te.getDate()-(Te.getDay()+7-se)%7),Te.setHours(0,0,0,0)},function(Te,Se){Te.setDate(Te.getDate()+Se*7)},function(Te,Se){return(Se-Te-(Se.getTimezoneOffset()-Te.getTimezoneOffset())*l)/f})}var b=w(0),T=w(1),k=w(2),M=w(3),S=w(4),E=w(5),P=w(6),R=b.range,D=T.range,z=k.range,O=M.range,H=S.range,Y=E.range,G=P.range,B=a(function(se){se.setDate(1),se.setHours(0,0,0,0)},function(se,Te){se.setMonth(se.getMonth()+Te)},function(se,Te){return Te.getMonth()-se.getMonth()+(Te.getFullYear()-se.getFullYear())*12},function(se){return se.getMonth()}),V=B.range,X=a(function(se){se.setMonth(0,1),se.setHours(0,0,0,0)},function(se,Te){se.setFullYear(se.getFullYear()+Te)},function(se,Te){return Te.getFullYear()-se.getFullYear()},function(se){return se.getFullYear()});X.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Te){Te.setFullYear(Math.floor(Te.getFullYear()/se)*se),Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,Se){Te.setFullYear(Te.getFullYear()+Se*se)})};var Z=X.range,te=a(function(se){se.setUTCSeconds(0,0)},function(se,Te){se.setTime(+se+Te*l)},function(se,Te){return(Te-se)/l},function(se){return se.getUTCMinutes()}),fe=te.range,le=a(function(se){se.setUTCMinutes(0,0,0)},function(se,Te){se.setTime(+se+Te*s)},function(se,Te){return(Te-se)/s},function(se){return se.getUTCHours()}),ie=le.range,K=a(function(se){se.setUTCHours(0,0,0,0)},function(se,Te){se.setUTCDate(se.getUTCDate()+Te)},function(se,Te){return(Te-se)/u},function(se){return se.getUTCDate()-1}),he=K.range;function oe(se){return a(function(Te){Te.setUTCDate(Te.getUTCDate()-(Te.getUTCDay()+7-se)%7),Te.setUTCHours(0,0,0,0)},function(Te,Se){Te.setUTCDate(Te.getUTCDate()+Se*7)},function(Te,Se){return(Se-Te)/f})}var ye=oe(0),ue=oe(1),de=oe(2),W=oe(3),Q=oe(4),j=oe(5),pe=oe(6),me=ye.range,we=ue.range,Ne=de.range,Fe=W.range,Re=Q.range,Ie=j.range,Be=pe.range,ze=a(function(se){se.setUTCDate(1),se.setUTCHours(0,0,0,0)},function(se,Te){se.setUTCMonth(se.getUTCMonth()+Te)},function(se,Te){return Te.getUTCMonth()-se.getUTCMonth()+(Te.getUTCFullYear()-se.getUTCFullYear())*12},function(se){return se.getUTCMonth()}),Pe=ze.range,Xe=a(function(se){se.setUTCMonth(0,1),se.setUTCHours(0,0,0,0)},function(se,Te){se.setUTCFullYear(se.getUTCFullYear()+Te)},function(se,Te){return Te.getUTCFullYear()-se.getUTCFullYear()},function(se){return se.getUTCFullYear()});Xe.every=function(se){return!isFinite(se=Math.floor(se))||!(se>0)?null:a(function(Te){Te.setUTCFullYear(Math.floor(Te.getUTCFullYear()/se)*se),Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,Se){Te.setUTCFullYear(Te.getUTCFullYear()+Se*se)})};var Ue=Xe.range;e.timeDay=x,e.timeDays=_,e.timeFriday=E,e.timeFridays=Y,e.timeHour=m,e.timeHours=y,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=T,e.timeMondays=D,e.timeMonth=B,e.timeMonths=V,e.timeSaturday=P,e.timeSaturdays=G,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=b,e.timeSundays=R,e.timeThursday=S,e.timeThursdays=H,e.timeTuesday=k,e.timeTuesdays=z,e.timeWednesday=M,e.timeWednesdays=O,e.timeWeek=b,e.timeWeeks=R,e.timeYear=X,e.timeYears=Z,e.utcDay=K,e.utcDays=he,e.utcFriday=j,e.utcFridays=Ie,e.utcHour=le,e.utcHours=ie,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=te,e.utcMinutes=fe,e.utcMonday=ue,e.utcMondays=we,e.utcMonth=ze,e.utcMonths=Pe,e.utcSaturday=pe,e.utcSaturdays=Be,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=ye,e.utcSundays=me,e.utcThursday=Q,e.utcThursdays=Re,e.utcTuesday=de,e.utcTuesdays=Ne,e.utcWednesday=W,e.utcWednesdays=Fe,e.utcWeek=ye,e.utcWeeks=me,e.utcYear=Xe,e.utcYears=Ue,Object.defineProperty(e,"__esModule",{value:!0})})});var xf=N((op,VA)=>{(function(e,r){typeof op=="object"&&typeof VA!="undefined"?r(op,K3()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(op,function(e,r){"use strict";function t(ne){if(0<=ne.y&&ne.y<100){var ve=new Date(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L);return ve.setFullYear(ne.y),ve}return new Date(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L)}function a(ne){if(0<=ne.y&&ne.y<100){var ve=new Date(Date.UTC(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L));return ve.setUTCFullYear(ne.y),ve}return new Date(Date.UTC(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L))}function n(ne,ve,De){return{y:ne,m:ve,d:De,H:0,M:0,S:0,L:0}}function i(ne){var ve=ne.dateTime,De=ne.date,qe=ne.time,ar=ne.periods,hr=ne.days,ur=ne.shortDays,Ar=ne.months,Wr=ne.shortMonths,Vr=v(ar),zr=d(ar),Et=v(hr),Dt=d(hr),ma=v(ur),St=d(ur),ja=v(Ar),ga=d(Ar),jt=v(Wr),Na=d(Wr),br={a:Ko,A:Qo,b:vt,B:An,c:null,d:B,e:B,f:fe,H:V,I:X,j:Z,L:te,m:le,M:ie,p:Rt,q:zs,Q:Ce,s:Ge,S:K,u:he,U:oe,V:ye,w:ue,W:de,x:null,X:null,y:W,Y:Q,Z:j,"%":Le},pt={a:pn,A:Gi,b:Ut,B:Yi,c:null,d:pe,e:pe,f:Re,H:me,I:we,j:Ne,L:Fe,m:Ie,M:Be,p:Pl,q:Rl,Q:Ce,s:Ge,S:ze,u:Pe,U:Xe,V:Ue,w:se,W:Te,x:null,X:null,y:Se,Y:ir,Z:Qe,"%":Le},Nr={a:ba,A:Zt,b:tn,B:Tn,c:Xt,d:S,e:S,f:O,H:P,I:P,j:E,L:z,m:M,M:R,p:ct,q:k,Q:Y,s:G,S:D,u:m,U:y,V:x,w:p,W:_,x:ft,X:xa,y:b,Y:w,Z:T,"%":H};br.x=ut(De,br),br.X=ut(qe,br),br.c=ut(ve,br),pt.x=ut(De,pt),pt.X=ut(qe,pt),pt.c=ut(ve,pt);function ut(yr,$r){return function(ht){var sr=[],za=-1,Tt=0,Ia=yr.length,Br,Vi,Is;for(ht instanceof Date||(ht=new Date(+ht));++za53)return null;"w"in sr||(sr.w=1),"Z"in sr?(Tt=a(n(sr.y,0,1)),Ia=Tt.getUTCDay(),Tt=Ia>4||Ia===0?r.utcMonday.ceil(Tt):r.utcMonday(Tt),Tt=r.utcDay.offset(Tt,(sr.V-1)*7),sr.y=Tt.getUTCFullYear(),sr.m=Tt.getUTCMonth(),sr.d=Tt.getUTCDate()+(sr.w+6)%7):(Tt=t(n(sr.y,0,1)),Ia=Tt.getDay(),Tt=Ia>4||Ia===0?r.timeMonday.ceil(Tt):r.timeMonday(Tt),Tt=r.timeDay.offset(Tt,(sr.V-1)*7),sr.y=Tt.getFullYear(),sr.m=Tt.getMonth(),sr.d=Tt.getDate()+(sr.w+6)%7)}else("W"in sr||"U"in sr)&&("w"in sr||(sr.w="u"in sr?sr.u%7:"W"in sr?1:0),Ia="Z"in sr?a(n(sr.y,0,1)).getUTCDay():t(n(sr.y,0,1)).getDay(),sr.m=0,sr.d="W"in sr?(sr.w+6)%7+sr.W*7-(Ia+5)%7:sr.w+sr.U*7-(Ia+6)%7);return"Z"in sr?(sr.H+=sr.Z/100|0,sr.M+=sr.Z%100,a(sr)):t(sr)}}function Qr(yr,$r,ht,sr){for(var za=0,Tt=$r.length,Ia=ht.length,Br,Vi;za=Ia)return-1;if(Br=$r.charCodeAt(za++),Br===37){if(Br=$r.charAt(za++),Vi=Nr[Br in o?$r.charAt(za++):Br],!Vi||(sr=Vi(yr,ht,sr))<0)return-1}else if(Br!=ht.charCodeAt(sr++))return-1}return sr}function ct(yr,$r,ht){var sr=Vr.exec($r.slice(ht));return sr?(yr.p=zr[sr[0].toLowerCase()],ht+sr[0].length):-1}function ba(yr,$r,ht){var sr=ma.exec($r.slice(ht));return sr?(yr.w=St[sr[0].toLowerCase()],ht+sr[0].length):-1}function Zt(yr,$r,ht){var sr=Et.exec($r.slice(ht));return sr?(yr.w=Dt[sr[0].toLowerCase()],ht+sr[0].length):-1}function tn(yr,$r,ht){var sr=jt.exec($r.slice(ht));return sr?(yr.m=Na[sr[0].toLowerCase()],ht+sr[0].length):-1}function Tn(yr,$r,ht){var sr=ja.exec($r.slice(ht));return sr?(yr.m=ga[sr[0].toLowerCase()],ht+sr[0].length):-1}function Xt(yr,$r,ht){return Qr(yr,ve,$r,ht)}function ft(yr,$r,ht){return Qr(yr,De,$r,ht)}function xa(yr,$r,ht){return Qr(yr,qe,$r,ht)}function Ko(yr){return ur[yr.getDay()]}function Qo(yr){return hr[yr.getDay()]}function vt(yr){return Wr[yr.getMonth()]}function An(yr){return Ar[yr.getMonth()]}function Rt(yr){return ar[+(yr.getHours()>=12)]}function zs(yr){return 1+~~(yr.getMonth()/3)}function pn(yr){return ur[yr.getUTCDay()]}function Gi(yr){return hr[yr.getUTCDay()]}function Ut(yr){return Wr[yr.getUTCMonth()]}function Yi(yr){return Ar[yr.getUTCMonth()]}function Pl(yr){return ar[+(yr.getUTCHours()>=12)]}function Rl(yr){return 1+~~(yr.getUTCMonth()/3)}return{format:function(yr){var $r=ut(yr+="",br);return $r.toString=function(){return yr},$r},parse:function(yr){var $r=Pt(yr+="",!1);return $r.toString=function(){return yr},$r},utcFormat:function(yr){var $r=ut(yr+="",pt);return $r.toString=function(){return yr},$r},utcParse:function(yr){var $r=Pt(yr+="",!0);return $r.toString=function(){return yr},$r}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,ve,De){var qe=ne<0?"-":"",ar=(qe?-ne:ne)+"",hr=ar.length;return qe+(hr68?1900:2e3),De+qe[0].length):-1}function T(ne,ve,De){var qe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ve.slice(De,De+6));return qe?(ne.Z=qe[1]?0:-(qe[2]+(qe[3]||"00")),De+qe[0].length):-1}function k(ne,ve,De){var qe=l.exec(ve.slice(De,De+1));return qe?(ne.q=qe[0]*3-3,De+qe[0].length):-1}function M(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.m=qe[0]-1,De+qe[0].length):-1}function S(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.d=+qe[0],De+qe[0].length):-1}function E(ne,ve,De){var qe=l.exec(ve.slice(De,De+3));return qe?(ne.m=0,ne.d=+qe[0],De+qe[0].length):-1}function P(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.H=+qe[0],De+qe[0].length):-1}function R(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.M=+qe[0],De+qe[0].length):-1}function D(ne,ve,De){var qe=l.exec(ve.slice(De,De+2));return qe?(ne.S=+qe[0],De+qe[0].length):-1}function z(ne,ve,De){var qe=l.exec(ve.slice(De,De+3));return qe?(ne.L=+qe[0],De+qe[0].length):-1}function O(ne,ve,De){var qe=l.exec(ve.slice(De,De+6));return qe?(ne.L=Math.floor(qe[0]/1e3),De+qe[0].length):-1}function H(ne,ve,De){var qe=s.exec(ve.slice(De,De+1));return qe?De+qe[0].length:-1}function Y(ne,ve,De){var qe=l.exec(ve.slice(De));return qe?(ne.Q=+qe[0],De+qe[0].length):-1}function G(ne,ve,De){var qe=l.exec(ve.slice(De));return qe?(ne.s=+qe[0],De+qe[0].length):-1}function B(ne,ve){return f(ne.getDate(),ve,2)}function V(ne,ve){return f(ne.getHours(),ve,2)}function X(ne,ve){return f(ne.getHours()%12||12,ve,2)}function Z(ne,ve){return f(1+r.timeDay.count(r.timeYear(ne),ne),ve,3)}function te(ne,ve){return f(ne.getMilliseconds(),ve,3)}function fe(ne,ve){return te(ne,ve)+"000"}function le(ne,ve){return f(ne.getMonth()+1,ve,2)}function ie(ne,ve){return f(ne.getMinutes(),ve,2)}function K(ne,ve){return f(ne.getSeconds(),ve,2)}function he(ne){var ve=ne.getDay();return ve===0?7:ve}function oe(ne,ve){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),ve,2)}function ye(ne,ve){var De=ne.getDay();return ne=De>=4||De===0?r.timeThursday(ne):r.timeThursday.ceil(ne),f(r.timeThursday.count(r.timeYear(ne),ne)+(r.timeYear(ne).getDay()===4),ve,2)}function ue(ne){return ne.getDay()}function de(ne,ve){return f(r.timeMonday.count(r.timeYear(ne)-1,ne),ve,2)}function W(ne,ve){return f(ne.getFullYear()%100,ve,2)}function Q(ne,ve){return f(ne.getFullYear()%1e4,ve,4)}function j(ne){var ve=ne.getTimezoneOffset();return(ve>0?"-":(ve*=-1,"+"))+f(ve/60|0,"0",2)+f(ve%60,"0",2)}function pe(ne,ve){return f(ne.getUTCDate(),ve,2)}function me(ne,ve){return f(ne.getUTCHours(),ve,2)}function we(ne,ve){return f(ne.getUTCHours()%12||12,ve,2)}function Ne(ne,ve){return f(1+r.utcDay.count(r.utcYear(ne),ne),ve,3)}function Fe(ne,ve){return f(ne.getUTCMilliseconds(),ve,3)}function Re(ne,ve){return Fe(ne,ve)+"000"}function Ie(ne,ve){return f(ne.getUTCMonth()+1,ve,2)}function Be(ne,ve){return f(ne.getUTCMinutes(),ve,2)}function ze(ne,ve){return f(ne.getUTCSeconds(),ve,2)}function Pe(ne){var ve=ne.getUTCDay();return ve===0?7:ve}function Xe(ne,ve){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),ve,2)}function Ue(ne,ve){var De=ne.getUTCDay();return ne=De>=4||De===0?r.utcThursday(ne):r.utcThursday.ceil(ne),f(r.utcThursday.count(r.utcYear(ne),ne)+(r.utcYear(ne).getUTCDay()===4),ve,2)}function se(ne){return ne.getUTCDay()}function Te(ne,ve){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),ve,2)}function Se(ne,ve){return f(ne.getUTCFullYear()%100,ve,2)}function ir(ne,ve){return f(ne.getUTCFullYear()%1e4,ve,4)}function Qe(){return"+0000"}function Le(){return"%"}function Ce(ne){return+ne}function Ge(ne){return Math.floor(+ne/1e3)}var Ze;Ye({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ye(ne){return Ze=i(ne),e.timeFormat=Ze.format,e.timeParse=Ze.parse,e.utcFormat=Ze.utcFormat,e.utcParse=Ze.utcParse,Ze}var He="%Y-%m-%dT%H:%M:%S.%LZ";function $e(ne){return ne.toISOString()}var cr=Date.prototype.toISOString?$e:e.utcFormat(He);function lr(ne){var ve=new Date(ne);return isNaN(ve)?null:ve}var Oe=+new Date("2000-01-01T00:00:00.000Z")?lr:e.utcParse(He);e.isoFormat=cr,e.isoParse=Oe,e.timeFormatDefaultLocale=Ye,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var Q3=N((lp,WA)=>{(function(e,r){typeof lp=="object"&&typeof WA!="undefined"?r(lp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(lp,function(e){"use strict";function r(M){return Math.abs(M=Math.round(M))>=1e21?M.toLocaleString("en").replace(/,/g,""):M.toString(10)}function t(M,S){if((E=(M=S?M.toExponential(S-1):M.toExponential()).indexOf("e"))<0)return null;var E,P=M.slice(0,E);return[P.length>1?P[0]+P.slice(2):P,+M.slice(E+1)]}function a(M){return M=t(Math.abs(M)),M?M[1]:NaN}function n(M,S){return function(E,P){for(var R=E.length,D=[],z=0,O=M[0],H=0;R>0&&O>0&&(H+O+1>P&&(O=Math.max(1,P-H)),D.push(E.substring(R-=O,R+O)),!((H+=O+1)>P));)O=M[z=(z+1)%M.length];return D.reverse().join(S)}}function i(M){return function(S){return S.replace(/[0-9]/g,function(E){return M[+E]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(S=o.exec(M)))throw new Error("invalid format: "+M);var S;return new s({fill:S[1],align:S[2],sign:S[3],symbol:S[4],zero:S[5],width:S[6],comma:S[7],precision:S[8]&&S[8].slice(1),trim:S[9],type:S[10]})}l.prototype=s.prototype;function s(M){this.fill=M.fill===void 0?" ":M.fill+"",this.align=M.align===void 0?">":M.align+"",this.sign=M.sign===void 0?"-":M.sign+"",this.symbol=M.symbol===void 0?"":M.symbol+"",this.zero=!!M.zero,this.width=M.width===void 0?void 0:+M.width,this.comma=!!M.comma,this.precision=M.precision===void 0?void 0:+M.precision,this.trim=!!M.trim,this.type=M.type===void 0?"":M.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(M){e:for(var S=M.length,E=1,P=-1,R;E0&&(P=0);break}return P>0?M.slice(0,P)+M.slice(R+1):M}var f;function c(M,S){var E=t(M,S);if(!E)return M+"";var P=E[0],R=E[1],D=R-(f=Math.max(-8,Math.min(8,Math.floor(R/3)))*3)+1,z=P.length;return D===z?P:D>z?P+new Array(D-z+1).join("0"):D>0?P.slice(0,D)+"."+P.slice(D):"0."+new Array(1-D).join("0")+t(M,Math.max(0,S+D-1))[0]}function v(M,S){var E=t(M,S);if(!E)return M+"";var P=E[0],R=E[1];return R<0?"0."+new Array(-R).join("0")+P:P.length>R+1?P.slice(0,R+1)+"."+P.slice(R+1):P+new Array(R-P.length+2).join("0")}var d={"%":function(M,S){return(M*100).toFixed(S)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,S){return M.toExponential(S)},f:function(M,S){return M.toFixed(S)},g:function(M,S){return M.toPrecision(S)},o:function(M){return Math.round(M).toString(8)},p:function(M,S){return v(M*100,S)},r:v,s:c,X:function(M){return Math.round(M).toString(16).toUpperCase()},x:function(M){return Math.round(M).toString(16)}};function p(M){return M}var m=Array.prototype.map,y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function x(M){var S=M.grouping===void 0||M.thousands===void 0?p:n(m.call(M.grouping,Number),M.thousands+""),E=M.currency===void 0?"":M.currency[0]+"",P=M.currency===void 0?"":M.currency[1]+"",R=M.decimal===void 0?".":M.decimal+"",D=M.numerals===void 0?p:i(m.call(M.numerals,String)),z=M.percent===void 0?"%":M.percent+"",O=M.minus===void 0?"-":M.minus+"",H=M.nan===void 0?"NaN":M.nan+"";function Y(B){B=l(B);var V=B.fill,X=B.align,Z=B.sign,te=B.symbol,fe=B.zero,le=B.width,ie=B.comma,K=B.precision,he=B.trim,oe=B.type;oe==="n"?(ie=!0,oe="g"):d[oe]||(K===void 0&&(K=12),he=!0,oe="g"),(fe||V==="0"&&X==="=")&&(fe=!0,V="0",X="=");var ye=te==="$"?E:te==="#"&&/[boxX]/.test(oe)?"0"+oe.toLowerCase():"",ue=te==="$"?P:/[%p]/.test(oe)?z:"",de=d[oe],W=/[defgprs%]/.test(oe);K=K===void 0?6:/[gprs]/.test(oe)?Math.max(1,Math.min(21,K)):Math.max(0,Math.min(20,K));function Q(j){var pe=ye,me=ue,we,Ne,Fe;if(oe==="c")me=de(j)+me,j="";else{j=+j;var Re=j<0||1/j<0;if(j=isNaN(j)?H:de(Math.abs(j),K),he&&(j=u(j)),Re&&+j==0&&Z!=="+"&&(Re=!1),pe=(Re?Z==="("?Z:O:Z==="-"||Z==="("?"":Z)+pe,me=(oe==="s"?y[8+f/3]:"")+me+(Re&&Z==="("?")":""),W){for(we=-1,Ne=j.length;++weFe||Fe>57){me=(Fe===46?R+j.slice(we+1):j.slice(we))+me,j=j.slice(0,we);break}}}ie&&!fe&&(j=S(j,1/0));var Ie=pe.length+j.length+me.length,Be=Ie>1)+pe+j+me+Be.slice(Ie);break;default:j=Be+pe+j+me;break}return D(j)}return Q.toString=function(){return B+""},Q}function G(B,V){var X=Y((B=l(B),B.type="f",B)),Z=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,te=Math.pow(10,-Z),fe=y[8+Z/3];return function(le){return X(te*le)+fe}}return{format:Y,formatPrefix:G}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(M){return _=x(M),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function b(M){return Math.max(0,-a(Math.abs(M)))}function T(M,S){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(S)/3)))*3-a(Math.abs(M)))}function k(M,S){return M=Math.abs(M),S=Math.abs(S)-M,Math.max(0,a(S)-a(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=w,e.formatLocale=x,e.formatSpecifier=l,e.precisionFixed=b,e.precisionPrefix=T,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var ZA=N((aCe,jA)=>{"use strict";jA.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var Pr=N((nCe,XA)=>{"use strict";var Zie=ZA();XA.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&Zie(t))return!1}else if(r!=="number")return!1;return e-e<1}});var Ft=N((iCe,JA)=>{"use strict";JA.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var eb=N((sp,$A)=>{(function(e,r){typeof sp=="object"&&typeof $A!="undefined"?r(sp):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(sp,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(l[s]&3)<<4|l[s+1]>>4],f+=r[(l[s+1]&15)<<2|l[s+2]>>6],f+=r[l[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(o){var l=o.length*.75,s=o.length,u,f=0,c,v,d,p;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var m=new ArrayBuffer(l),y=new Uint8Array(m);for(u=0;u>4,y[f++]=(v&15)<<4|d>>2,y[f++]=(d&3)<<6|p&63;return m};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var zl=N((oCe,KA)=>{"use strict";KA.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var Wn=N(Zi=>{"use strict";var Xie=eb().decode,Jie=zl(),rb=Array.isArray,$ie=ArrayBuffer,Kie=DataView;function QA(e){return $ie.isView(e)&&!(e instanceof Kie)}Zi.isTypedArray=QA;function up(e){return rb(e)||QA(e)}Zi.isArrayOrTypedArray=up;function Qie(e){return!up(e[0])}Zi.isArray1D=Qie;Zi.ensureArray=function(e,r){return rb(e)||(e=[]),e.length=r,e};var qa={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};qa.uint8c=qa.u1c;qa.uint8=qa.u1;qa.int8=qa.i1;qa.uint16=qa.u2;qa.int16=qa.i2;qa.uint32=qa.u4;qa.int32=qa.i4;qa.float32=qa.f4;qa.float64=qa.f8;function tb(e){return e.constructor===ArrayBuffer}Zi.isArrayBuffer=tb;Zi.decodeTypedArraySpec=function(e){var r=[],t=eoe(e),a=t.dtype,n=qa[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;tb(o)||(o=Xie(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,u,f,c=+l[0],v=i*c,d=0;if(s===1)r=new n(o);else if(s===2)for(u=+l[1],f=0;f{"use strict";var rM=Pr(),nb=Wn().isArrayOrTypedArray;iM.exports=function(r,t){if(rM(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,o,l;for(l=0;l{"use strict";var _f=fp(),ioe=/^\w*$/,ooe=0,oM=1,cp=2,lM=3,Ys=4;sM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=_f(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|cp,c.set(v,null);if(f){for(i=d;i{"use strict";var loe=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,soe=/^[^\.\[\]]+$/;fM.exports=function(e,r){for(;r;){var t=e.match(loe);if(t)e=t[1];else if(e.match(soe))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var vp=N((cCe,vM)=>{"use strict";var uoe=Pr();vM.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return uoe(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var pM=N((vCe,dM)=>{"use strict";var hM=Wn().isArrayOrTypedArray,Hv=zl();dM.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(hM(n)&&hM(i)&&Hv(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function foe(e,r){var t=e%r;return t<0?t+r:t}function coe(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}yM.exports={mod:foe,modHalf:coe}});var Sn=N((dCe,hp)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,o=e.max,l=e.random;function s(W,Q){if(W=W||"",Q=Q||{},W instanceof s)return W;if(!(this instanceof s))return new s(W,Q);var j=u(W);this._originalInput=W,this._r=j.r,this._g=j.g,this._b=j.b,this._a=j.a,this._roundA=n(100*this._a)/100,this._format=Q.format||j.format,this._gradientType=Q.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=j.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var W=this.toRgb();return(W.r*299+W.g*587+W.b*114)/1e3},getLuminance:function(){var W=this.toRgb(),Q,j,pe,me,we,Ne;return Q=W.r/255,j=W.g/255,pe=W.b/255,Q<=.03928?me=Q/12.92:me=e.pow((Q+.055)/1.055,2.4),j<=.03928?we=j/12.92:we=e.pow((j+.055)/1.055,2.4),pe<=.03928?Ne=pe/12.92:Ne=e.pow((pe+.055)/1.055,2.4),.2126*me+.7152*we+.0722*Ne},setAlpha:function(W){return this._a=B(W),this._roundA=n(100*this._a)/100,this},toHsv:function(){var W=d(this._r,this._g,this._b);return{h:W.h*360,s:W.s,v:W.v,a:this._a}},toHsvString:function(){var W=d(this._r,this._g,this._b),Q=n(W.h*360),j=n(W.s*100),pe=n(W.v*100);return this._a==1?"hsv("+Q+", "+j+"%, "+pe+"%)":"hsva("+Q+", "+j+"%, "+pe+"%, "+this._roundA+")"},toHsl:function(){var W=c(this._r,this._g,this._b);return{h:W.h*360,s:W.s,l:W.l,a:this._a}},toHslString:function(){var W=c(this._r,this._g,this._b),Q=n(W.h*360),j=n(W.s*100),pe=n(W.l*100);return this._a==1?"hsl("+Q+", "+j+"%, "+pe+"%)":"hsla("+Q+", "+j+"%, "+pe+"%, "+this._roundA+")"},toHex:function(W){return m(this._r,this._g,this._b,W)},toHexString:function(W){return"#"+this.toHex(W)},toHex8:function(W){return y(this._r,this._g,this._b,this._a,W)},toHex8String:function(W){return"#"+this.toHex8(W)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(V(this._r,255)*100)+"%",g:n(V(this._g,255)*100)+"%",b:n(V(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%)":"rgba("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Y[m(this._r,this._g,this._b,!0)]||!1},toFilter:function(W){var Q="#"+x(this._r,this._g,this._b,this._a),j=Q,pe=this._gradientType?"GradientType = 1, ":"";if(W){var me=s(W);j="#"+x(me._r,me._g,me._b,me._a)}return"progid:DXImageTransform.Microsoft.gradient("+pe+"startColorstr="+Q+",endColorstr="+j+")"},toString:function(W){var Q=!!W;W=W||this._format;var j=!1,pe=this._a<1&&this._a>=0,me=!Q&&pe&&(W==="hex"||W==="hex6"||W==="hex3"||W==="hex4"||W==="hex8"||W==="name");return me?W==="name"&&this._a===0?this.toName():this.toRgbString():(W==="rgb"&&(j=this.toRgbString()),W==="prgb"&&(j=this.toPercentageRgbString()),(W==="hex"||W==="hex6")&&(j=this.toHexString()),W==="hex3"&&(j=this.toHexString(!0)),W==="hex4"&&(j=this.toHex8String(!0)),W==="hex8"&&(j=this.toHex8String()),W==="name"&&(j=this.toName()),W==="hsl"&&(j=this.toHslString()),W==="hsv"&&(j=this.toHsvString()),j||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(W,Q){var j=W.apply(null,[this].concat([].slice.call(Q)));return this._r=j._r,this._g=j._g,this._b=j._b,this.setAlpha(j._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(k,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(S,arguments)},_applyCombination:function(W,Q){return W.apply(null,[this].concat([].slice.call(Q)))},analogous:function(){return this._applyCombination(z,arguments)},complement:function(){return this._applyCombination(E,arguments)},monochromatic:function(){return this._applyCombination(O,arguments)},splitcomplement:function(){return this._applyCombination(D,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(R,arguments)}},s.fromRatio=function(W,Q){if(typeof W=="object"){var j={};for(var pe in W)W.hasOwnProperty(pe)&&(pe==="a"?j[pe]=W[pe]:j[pe]=ie(W[pe]));W=j}return s(W,Q)};function u(W){var Q={r:0,g:0,b:0},j=1,pe=null,me=null,we=null,Ne=!1,Fe=!1;return typeof W=="string"&&(W=ue(W)),typeof W=="object"&&(ye(W.r)&&ye(W.g)&&ye(W.b)?(Q=f(W.r,W.g,W.b),Ne=!0,Fe=String(W.r).substr(-1)==="%"?"prgb":"rgb"):ye(W.h)&&ye(W.s)&&ye(W.v)?(pe=ie(W.s),me=ie(W.v),Q=p(W.h,pe,me),Ne=!0,Fe="hsv"):ye(W.h)&&ye(W.s)&&ye(W.l)&&(pe=ie(W.s),we=ie(W.l),Q=v(W.h,pe,we),Ne=!0,Fe="hsl"),W.hasOwnProperty("a")&&(j=W.a)),j=B(j),{ok:Ne,format:W.format||Fe,r:i(255,o(Q.r,0)),g:i(255,o(Q.g,0)),b:i(255,o(Q.b,0)),a:j}}function f(W,Q,j){return{r:V(W,255)*255,g:V(Q,255)*255,b:V(j,255)*255}}function c(W,Q,j){W=V(W,255),Q=V(Q,255),j=V(j,255);var pe=o(W,Q,j),me=i(W,Q,j),we,Ne,Fe=(pe+me)/2;if(pe==me)we=Ne=0;else{var Re=pe-me;switch(Ne=Fe>.5?Re/(2-pe-me):Re/(pe+me),pe){case W:we=(Q-j)/Re+(Q1&&(ze-=1),ze<1/6?Ie+(Be-Ie)*6*ze:ze<1/2?Be:ze<2/3?Ie+(Be-Ie)*(2/3-ze)*6:Ie}if(Q===0)pe=me=we=j;else{var Fe=j<.5?j*(1+Q):j+Q-j*Q,Re=2*j-Fe;pe=Ne(Re,Fe,W+1/3),me=Ne(Re,Fe,W),we=Ne(Re,Fe,W-1/3)}return{r:pe*255,g:me*255,b:we*255}}function d(W,Q,j){W=V(W,255),Q=V(Q,255),j=V(j,255);var pe=o(W,Q,j),me=i(W,Q,j),we,Ne,Fe=pe,Re=pe-me;if(Ne=pe===0?0:Re/pe,pe==me)we=0;else{switch(pe){case W:we=(Q-j)/Re+(Q>1)+720)%360;--Q;)pe.h=(pe.h+me)%360,we.push(s(pe));return we}function O(W,Q){Q=Q||6;for(var j=s(W).toHsv(),pe=j.h,me=j.s,we=j.v,Ne=[],Fe=1/Q;Q--;)Ne.push(s({h:pe,s:me,v:we})),we=(we+Fe)%1;return Ne}s.mix=function(W,Q,j){j=j===0?0:j||50;var pe=s(W).toRgb(),me=s(Q).toRgb(),we=j/100,Ne={r:(me.r-pe.r)*we+pe.r,g:(me.g-pe.g)*we+pe.g,b:(me.b-pe.b)*we+pe.b,a:(me.a-pe.a)*we+pe.a};return s(Ne)},s.readability=function(W,Q){var j=s(W),pe=s(Q);return(e.max(j.getLuminance(),pe.getLuminance())+.05)/(e.min(j.getLuminance(),pe.getLuminance())+.05)},s.isReadable=function(W,Q,j){var pe=s.readability(W,Q),me,we;switch(we=!1,me=de(j),me.level+me.size){case"AAsmall":case"AAAlarge":we=pe>=4.5;break;case"AAlarge":we=pe>=3;break;case"AAAsmall":we=pe>=7;break}return we},s.mostReadable=function(W,Q,j){var pe=null,me=0,we,Ne,Fe,Re;j=j||{},Ne=j.includeFallbackColors,Fe=j.level,Re=j.size;for(var Ie=0;Ieme&&(me=we,pe=s(Q[Ie]));return s.isReadable(W,pe,{level:Fe,size:Re})||!Ne?pe:(j.includeFallbackColors=!1,s.mostReadable(W,["#fff","#000"],j))};var H=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Y=s.hexNames=G(H);function G(W){var Q={};for(var j in W)W.hasOwnProperty(j)&&(Q[W[j]]=j);return Q}function B(W){return W=parseFloat(W),(isNaN(W)||W<0||W>1)&&(W=1),W}function V(W,Q){te(W)&&(W="100%");var j=fe(W);return W=i(Q,o(0,parseFloat(W))),j&&(W=parseInt(W*Q,10)/100),e.abs(W-Q)<1e-6?1:W%Q/parseFloat(Q)}function X(W){return i(1,o(0,W))}function Z(W){return parseInt(W,16)}function te(W){return typeof W=="string"&&W.indexOf(".")!=-1&&parseFloat(W)===1}function fe(W){return typeof W=="string"&&W.indexOf("%")!=-1}function le(W){return W.length==1?"0"+W:""+W}function ie(W){return W<=1&&(W=W*100+"%"),W}function K(W){return e.round(parseFloat(W)*255).toString(16)}function he(W){return Z(W)/255}var oe=function(){var W="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",j="(?:"+Q+")|(?:"+W+")",pe="[\\s|\\(]+("+j+")[,|\\s]+("+j+")[,|\\s]+("+j+")\\s*\\)?",me="[\\s|\\(]+("+j+")[,|\\s]+("+j+")[,|\\s]+("+j+")[,|\\s]+("+j+")\\s*\\)?";return{CSS_UNIT:new RegExp(j),rgb:new RegExp("rgb"+pe),rgba:new RegExp("rgba"+me),hsl:new RegExp("hsl"+pe),hsla:new RegExp("hsla"+me),hsv:new RegExp("hsv"+pe),hsva:new RegExp("hsva"+me),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function ye(W){return!!oe.CSS_UNIT.exec(W)}function ue(W){W=W.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(H[W])W=H[W],Q=!0;else if(W=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var j;return(j=oe.rgb.exec(W))?{r:j[1],g:j[2],b:j[3]}:(j=oe.rgba.exec(W))?{r:j[1],g:j[2],b:j[3],a:j[4]}:(j=oe.hsl.exec(W))?{h:j[1],s:j[2],l:j[3]}:(j=oe.hsla.exec(W))?{h:j[1],s:j[2],l:j[3],a:j[4]}:(j=oe.hsv.exec(W))?{h:j[1],s:j[2],v:j[3]}:(j=oe.hsva.exec(W))?{h:j[1],s:j[2],v:j[3],a:j[4]}:(j=oe.hex8.exec(W))?{r:Z(j[1]),g:Z(j[2]),b:Z(j[3]),a:he(j[4]),format:Q?"name":"hex8"}:(j=oe.hex6.exec(W))?{r:Z(j[1]),g:Z(j[2]),b:Z(j[3]),format:Q?"name":"hex"}:(j=oe.hex4.exec(W))?{r:Z(j[1]+""+j[1]),g:Z(j[2]+""+j[2]),b:Z(j[3]+""+j[3]),a:he(j[4]+""+j[4]),format:Q?"name":"hex8"}:(j=oe.hex3.exec(W))?{r:Z(j[1]+""+j[1]),g:Z(j[2]+""+j[2]),b:Z(j[3]+""+j[3]),format:Q?"name":"hex"}:!1}function de(W){var Q,j;return W=W||{level:"AA",size:"small"},Q=(W.level||"AA").toUpperCase(),j=(W.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA"&&(Q="AA"),j!=="small"&&j!=="large"&&(j="small"),{level:Q,size:j}}typeof hp!="undefined"&&hp.exports?hp.exports=s:window.tinycolor=s})(Math)});var bt=N(Yv=>{"use strict";var mM=zl(),Uv=Array.isArray;function voe(e,r){var t,a;for(t=0;t{"use strict";gM.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var Vv=N((mCe,bM)=>{"use strict";bM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var Tf=N((gCe,wM)=>{"use strict";var xM=Vv(),_M=ca(),ib=_M({editType:"none"});ib.family.dflt=xM.HOVERFONT;ib.size.dflt=xM.HOVERFONTSIZE;wM.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:ib,grouptitlefont:_M({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var yp=N((bCe,TM)=>{"use strict";var hoe=ca(),dp=Tf().hoverlabel,pp=bt().extendFlat;TM.exports={hoverlabel:{bgcolor:pp({},dp.bgcolor,{arrayOk:!0}),bordercolor:pp({},dp.bordercolor,{arrayOk:!0}),font:hoe({arrayOk:!0,editType:"none"}),align:pp({},dp.align,{arrayOk:!0}),namelength:pp({},dp.namelength,{arrayOk:!0}),editType:"none"}}});var mn=N((xCe,AM)=>{"use strict";var doe=ca(),poe=yp();AM.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:doe({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:poe.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var Vs=N((_Ce,SM)=>{"use strict";var yoe=Sn(),mp={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},MM=mp.RdBu;function moe(e,r){if(r||(r=MM),!e)return r;function t(){try{e=mp[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),kM(e)?e:r}function kM(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";Ws.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Ws.defaultLine="#444";Ws.lightLine="#eee";Ws.background="#fff";Ws.borderLine="#BEC8D9";Ws.lightFraction=100*10/11});var Tr=N((TCe,qM)=>{"use strict";var qn=Sn(),boe=Pr(),xoe=Wn().isTypedArray,_a=qM.exports={},gp=li();_a.defaults=gp.defaults;var _oe=_a.defaultLine=gp.defaultLine;_a.lightLine=gp.lightLine;var lb=_a.background=gp.background;_a.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};_a.rgb=function(e){return _a.tinyRGB(qn(e))};_a.opacity=function(e){return e?qn(e).getAlpha():0};_a.addOpacity=function(e,r){var t=qn(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};_a.combine=function(e,r){var t=qn(e).toRgb();if(t.a===1)return qn(e).toRgbString();var a=qn(r||lb).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return qn(i).toRgbString()};_a.interpolate=function(e,r,t){var a=qn(e).toRgb(),n=qn(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return qn(i).toRgbString()};_a.contrast=function(e,r,t){var a=qn(e);a.getAlpha()!==1&&(a=qn(_a.combine(e,lb)));var n=a.isDark()?r?a.lighten(r):lb:t?a.darken(t):_oe;return n.toString()};_a.stroke=function(e,r){var t=qn(r);e.style({stroke:_a.tinyRGB(t),"stroke-opacity":t.getAlpha()})};_a.fill=function(e,r){var t=qn(r);e.style({fill:_a.tinyRGB(t),"fill-opacity":t.getAlpha()})};_a.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var o=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+o+", "+a[3]+")":"rgb("+o+")"}});var bp=N((ACe,LM)=>{"use strict";LM.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Af=N(CM=>{"use strict";CM.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var RM=N(Ln=>{"use strict";var sb=Pr(),EM=Sn(),DM=bt().extendFlat,woe=mn(),Toe=Vs(),Aoe=Tr(),Moe=bp().DESELECTDIM,Mf=fp(),PM=Af().counter,koe=wf().modHalf,To=Wn().isArrayOrTypedArray,Il=Wn().isTypedArraySpec,Ol=Wn().decodeTypedArraySpec;Ln.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(To(e)?e:Il(e)?Ol(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}Il(e)&&(e=Ol(e)),e%1||!sb(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Il(e)&&(e=Ol(e)),EM(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return EM(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(Toe.get(e,t))}},angle:{coerceFunction:function(e,r,t){Il(e)&&(e=Ol(e)),e==="auto"?r.set("auto"):sb(e)?r.set(koe(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||PM(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!PM(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var FM={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},NM={};function zM(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),zM(a,r[t]))}}zM(FM,NM);IM.exports={configAttributes:FM,dfltConfig:NM}});var fb=N((qCe,OM)=>{"use strict";var ub=Sr(),Soe=Pr(),Wv=[];OM.exports=function(e,r){if(Wv.indexOf(e)!==-1)return;Wv.push(e);var t=1e3;Soe(r)?t=r:r==="long"&&(t=3e3);var a=ub.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(Wv);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=Wv.indexOf(l);s!==-1&&Wv.splice(s,1),ub.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=ub.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),u=o.split(//g),f=0;f{"use strict";var kf=js().dfltConfig,cb=fb(),vb=BM.exports={};vb.log=function(){var e;if(kf.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};vb.warn=function(){var e;if(kf.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};vb.error=function(){var e;if(kf.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var _p=N((CCe,HM)=>{"use strict";HM.exports=function(){}});var hb=N((ECe,UM)=>{"use strict";UM.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{GM.exports=qoe;function qoe(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var WM=N((PCe,VM)=>{VM.exports=Loe;function Loe(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var ZM=N((RCe,jM)=>{jM.exports=Coe;function Coe(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var db=N((FCe,XM)=>{XM.exports=Eoe;function Eoe(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var $M=N((NCe,JM)=>{JM.exports=Doe;function Doe(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],o=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=o,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var QM=N((zCe,KM)=>{KM.exports=Poe;function Poe(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],m=r[13],y=r[14],x=r[15],_=t*l-a*o,w=t*s-n*o,b=t*u-i*o,T=a*s-n*l,k=a*u-i*l,M=n*u-i*s,S=f*m-c*p,E=f*y-v*p,P=f*x-d*p,R=c*y-v*m,D=c*x-d*m,z=v*x-d*y,O=_*z-w*D+b*R+T*P-k*E+M*S;return O?(O=1/O,e[0]=(l*z-s*D+u*R)*O,e[1]=(n*D-a*z-i*R)*O,e[2]=(m*M-y*k+x*T)*O,e[3]=(v*k-c*M-d*T)*O,e[4]=(s*P-o*z-u*E)*O,e[5]=(t*z-n*P+i*E)*O,e[6]=(y*b-p*M-x*w)*O,e[7]=(f*M-v*b+d*w)*O,e[8]=(o*D-l*P+u*S)*O,e[9]=(a*P-t*D-i*S)*O,e[10]=(p*k-m*b+x*_)*O,e[11]=(c*b-f*k-d*_)*O,e[12]=(l*E-o*R-s*S)*O,e[13]=(t*R-a*E+n*S)*O,e[14]=(m*w-p*T-y*_)*O,e[15]=(f*T-c*w+v*_)*O,e):null}});var r9=N((ICe,e9)=>{e9.exports=Roe;function Roe(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],m=r[13],y=r[14],x=r[15];return e[0]=l*(v*x-d*y)-c*(s*x-u*y)+m*(s*d-u*v),e[1]=-(a*(v*x-d*y)-c*(n*x-i*y)+m*(n*d-i*v)),e[2]=a*(s*x-u*y)-l*(n*x-i*y)+m*(n*u-i*s),e[3]=-(a*(s*d-u*v)-l*(n*d-i*v)+c*(n*u-i*s)),e[4]=-(o*(v*x-d*y)-f*(s*x-u*y)+p*(s*d-u*v)),e[5]=t*(v*x-d*y)-f*(n*x-i*y)+p*(n*d-i*v),e[6]=-(t*(s*x-u*y)-o*(n*x-i*y)+p*(n*u-i*s)),e[7]=t*(s*d-u*v)-o*(n*d-i*v)+f*(n*u-i*s),e[8]=o*(c*x-d*m)-f*(l*x-u*m)+p*(l*d-u*c),e[9]=-(t*(c*x-d*m)-f*(a*x-i*m)+p*(a*d-i*c)),e[10]=t*(l*x-u*m)-o*(a*x-i*m)+p*(a*u-i*l),e[11]=-(t*(l*d-u*c)-o*(a*d-i*c)+f*(a*u-i*l)),e[12]=-(o*(c*y-v*m)-f*(l*y-s*m)+p*(l*v-s*c)),e[13]=t*(c*y-v*m)-f*(a*y-n*m)+p*(a*v-n*c),e[14]=-(t*(l*y-s*m)-o*(a*y-n*m)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+f*(a*s-n*l),e}});var a9=N((OCe,t9)=>{t9.exports=Foe;function Foe(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],o=e[5],l=e[6],s=e[7],u=e[8],f=e[9],c=e[10],v=e[11],d=e[12],p=e[13],m=e[14],y=e[15],x=r*o-t*i,_=r*l-a*i,w=r*s-n*i,b=t*l-a*o,T=t*s-n*o,k=a*s-n*l,M=u*p-f*d,S=u*m-c*d,E=u*y-v*d,P=f*m-c*p,R=f*y-v*p,D=c*y-v*m;return x*D-_*R+w*P+b*E-T*S+k*M}});var i9=N((BCe,n9)=>{n9.exports=Noe;function Noe(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=r[4],s=r[5],u=r[6],f=r[7],c=r[8],v=r[9],d=r[10],p=r[11],m=r[12],y=r[13],x=r[14],_=r[15],w=t[0],b=t[1],T=t[2],k=t[3];return e[0]=w*a+b*l+T*c+k*m,e[1]=w*n+b*s+T*v+k*y,e[2]=w*i+b*u+T*d+k*x,e[3]=w*o+b*f+T*p+k*_,w=t[4],b=t[5],T=t[6],k=t[7],e[4]=w*a+b*l+T*c+k*m,e[5]=w*n+b*s+T*v+k*y,e[6]=w*i+b*u+T*d+k*x,e[7]=w*o+b*f+T*p+k*_,w=t[8],b=t[9],T=t[10],k=t[11],e[8]=w*a+b*l+T*c+k*m,e[9]=w*n+b*s+T*v+k*y,e[10]=w*i+b*u+T*d+k*x,e[11]=w*o+b*f+T*p+k*_,w=t[12],b=t[13],T=t[14],k=t[15],e[12]=w*a+b*l+T*c+k*m,e[13]=w*n+b*s+T*v+k*y,e[14]=w*i+b*u+T*d+k*x,e[15]=w*o+b*f+T*p+k*_,e}});var l9=N((HCe,o9)=>{o9.exports=zoe;function zoe(e,r,t){var a=t[0],n=t[1],i=t[2],o,l,s,u,f,c,v,d,p,m,y,x;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(o=r[0],l=r[1],s=r[2],u=r[3],f=r[4],c=r[5],v=r[6],d=r[7],p=r[8],m=r[9],y=r[10],x=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=u,e[4]=f,e[5]=c,e[6]=v,e[7]=d,e[8]=p,e[9]=m,e[10]=y,e[11]=x,e[12]=o*a+f*n+p*i+r[12],e[13]=l*a+c*n+m*i+r[13],e[14]=s*a+v*n+y*i+r[14],e[15]=u*a+d*n+x*i+r[15]),e}});var u9=N((UCe,s9)=>{s9.exports=Ioe;function Ioe(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var c9=N((GCe,f9)=>{f9.exports=Ooe;function Ooe(e,r,t,a){var n=a[0],i=a[1],o=a[2],l=Math.sqrt(n*n+i*i+o*o),s,u,f,c,v,d,p,m,y,x,_,w,b,T,k,M,S,E,P,R,D,z,O,H;return Math.abs(l)<1e-6?null:(l=1/l,n*=l,i*=l,o*=l,s=Math.sin(t),u=Math.cos(t),f=1-u,c=r[0],v=r[1],d=r[2],p=r[3],m=r[4],y=r[5],x=r[6],_=r[7],w=r[8],b=r[9],T=r[10],k=r[11],M=n*n*f+u,S=i*n*f+o*s,E=o*n*f-i*s,P=n*i*f-o*s,R=i*i*f+u,D=o*i*f+n*s,z=n*o*f+i*s,O=i*o*f-n*s,H=o*o*f+u,e[0]=c*M+m*S+w*E,e[1]=v*M+y*S+b*E,e[2]=d*M+x*S+T*E,e[3]=p*M+_*S+k*E,e[4]=c*P+m*R+w*D,e[5]=v*P+y*R+b*D,e[6]=d*P+x*R+T*D,e[7]=p*P+_*R+k*D,e[8]=c*z+m*O+w*H,e[9]=v*z+y*O+b*H,e[10]=d*z+x*O+T*H,e[11]=p*z+_*O+k*H,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var h9=N((YCe,v9)=>{v9.exports=Boe;function Boe(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=o*n+f*a,e[6]=l*n+c*a,e[7]=s*n+v*a,e[8]=u*n-i*a,e[9]=f*n-o*a,e[10]=c*n-l*a,e[11]=v*n-s*a,e}});var p9=N((VCe,d9)=>{d9.exports=Hoe;function Hoe(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=o*n-f*a,e[2]=l*n-c*a,e[3]=s*n-v*a,e[8]=i*a+u*n,e[9]=o*a+f*n,e[10]=l*a+c*n,e[11]=s*a+v*n,e}});var m9=N((WCe,y9)=>{y9.exports=Uoe;function Uoe(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[4],f=r[5],c=r[6],v=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=o*n+f*a,e[2]=l*n+c*a,e[3]=s*n+v*a,e[4]=u*n-i*a,e[5]=f*n-o*a,e[6]=c*n-l*a,e[7]=v*n-s*a,e}});var b9=N((jCe,g9)=>{g9.exports=Goe;function Goe(e,r,t){var a,n,i,o=t[0],l=t[1],s=t[2],u=Math.sqrt(o*o+l*l+s*s);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,l*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=o*o*i+n,e[1]=l*o*i+s*a,e[2]=s*o*i-l*a,e[3]=0,e[4]=o*l*i-s*a,e[5]=l*l*i+n,e[6]=s*l*i+o*a,e[7]=0,e[8]=o*s*i+l*a,e[9]=l*s*i-o*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var _9=N((ZCe,x9)=>{x9.exports=Yoe;function Yoe(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=a+a,s=n+n,u=i+i,f=a*l,c=a*s,v=a*u,d=n*s,p=n*u,m=i*u,y=o*l,x=o*s,_=o*u;return e[0]=1-(d+m),e[1]=c+_,e[2]=v-x,e[3]=0,e[4]=c-_,e[5]=1-(f+m),e[6]=p+y,e[7]=0,e[8]=v+x,e[9]=p-y,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var T9=N((XCe,w9)=>{w9.exports=Voe;function Voe(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var M9=N((JCe,A9)=>{A9.exports=Woe;function Woe(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var S9=N(($Ce,k9)=>{k9.exports=joe;function joe(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var L9=N((KCe,q9)=>{q9.exports=Zoe;function Zoe(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var E9=N((QCe,C9)=>{C9.exports=Xoe;function Xoe(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var pb=N((eEe,D9)=>{D9.exports=Joe;function Joe(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=t+t,l=a+a,s=n+n,u=t*o,f=a*o,c=a*l,v=n*o,d=n*l,p=n*s,m=i*o,y=i*l,x=i*s;return e[0]=1-c-p,e[1]=f+x,e[2]=v-y,e[3]=0,e[4]=f-x,e[5]=1-u-p,e[6]=d+m,e[7]=0,e[8]=v+y,e[9]=d-m,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var R9=N((rEe,P9)=>{P9.exports=$oe;function $oe(e,r,t,a,n,i,o){var l=1/(t-r),s=1/(n-a),u=1/(i-o);return e[0]=i*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(n+a)*s,e[10]=(o+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*u,e[15]=0,e}});var N9=N((tEe,F9)=>{F9.exports=Koe;function Koe(e,r,t,a,n){var i=1/Math.tan(r/2),o=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*o,e[15]=0,e}});var I9=N((aEe,z9)=>{z9.exports=Qoe;function Qoe(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),o=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),s=2/(o+l),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var B9=N((nEe,O9)=>{O9.exports=ele;function ele(e,r,t,a,n,i,o){var l=1/(r-t),s=1/(a-n),u=1/(i-o);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*l,e[13]=(n+a)*s,e[14]=(o+i)*u,e[15]=1,e}});var U9=N((iEe,H9)=>{var rle=db();H9.exports=tle;function tle(e,r,t,a){var n,i,o,l,s,u,f,c,v,d,p=r[0],m=r[1],y=r[2],x=a[0],_=a[1],w=a[2],b=t[0],T=t[1],k=t[2];return Math.abs(p-b)<1e-6&&Math.abs(m-T)<1e-6&&Math.abs(y-k)<1e-6?rle(e):(f=p-b,c=m-T,v=y-k,d=1/Math.sqrt(f*f+c*c+v*v),f*=d,c*=d,v*=d,n=_*v-w*c,i=w*f-x*v,o=x*c-_*f,d=Math.sqrt(n*n+i*i+o*o),d?(d=1/d,n*=d,i*=d,o*=d):(n=0,i=0,o=0),l=c*o-v*i,s=v*n-f*o,u=f*i-c*n,d=Math.sqrt(l*l+s*s+u*u),d?(d=1/d,l*=d,s*=d,u*=d):(l=0,s=0,u=0),e[0]=n,e[1]=l,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=o,e[9]=u,e[10]=v,e[11]=0,e[12]=-(n*p+i*m+o*y),e[13]=-(l*p+s*m+u*y),e[14]=-(f*p+c*m+v*y),e[15]=1,e)}});var Y9=N((oEe,G9)=>{G9.exports=ale;function ale(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var yb=N((lEe,V9)=>{V9.exports={create:YM(),clone:WM(),copy:ZM(),identity:db(),transpose:$M(),invert:QM(),adjoint:r9(),determinant:a9(),multiply:i9(),translate:l9(),scale:u9(),rotate:c9(),rotateX:h9(),rotateY:p9(),rotateZ:m9(),fromRotation:b9(),fromRotationTranslation:_9(),fromScaling:T9(),fromTranslation:M9(),fromXRotation:S9(),fromYRotation:L9(),fromZRotation:E9(),fromQuat:pb(),frustum:R9(),perspective:N9(),perspectiveFromFieldOfView:I9(),ortho:B9(),lookAt:U9(),str:Y9()}});var wp=N($t=>{"use strict";var nle=yb();$t.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var ile=Sr(),W9=Zs(),ole=wp(),lle=yb();function sle(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function ule(e){var r=ile.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function j9(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function fle(e,r){Z9("global",e,r)}function Z9(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):W9.warn("addStyleRule failed"):W9.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function cle(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&j9(t)}function vle(e,r,t,a,n,i){var o=a.split(":"),l=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[o[0]]=o[1]:f.style[l[0]]=l[1])}),u.setAttribute(s,!0))})}function hle(e){var r=J9(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=X9(a);if(n){var i=ole.convertCssMatrix(n);t=lle.multiply(t,t,i)}}),t}function X9(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function J9(e){for(var r=[];dle(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function dle(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function ple(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}$9.exports={getGraphDiv:sle,isPlotDiv:ule,removeElement:j9,addStyleRule:fle,addRelatedStyleRule:Z9,deleteRelatedStyleRule:cle,setStyleOnHover:vle,getFullTransformMatrix:hle,getElementTransformMatrix:X9,getElementAndAncestors:J9,equalDomRects:ple}});var Zv=N((fEe,K9)=>{"use strict";K9.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var Xi=N((cEe,ik)=>{"use strict";var ek=bt().extendFlat,yle=zl(),rk={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},tk={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},mle=rk.flags.slice().concat(["fullReplot"]),gle=tk.flags.slice().concat("layoutReplot");ik.exports={traces:rk,layout:tk,traceFlags:function(){return Q9(mle)},layoutFlags:function(){return Q9(gle)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";mb.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};mb.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var gb=N((hEe,ok)=>{"use strict";ok.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var La=N(Tp=>{"use strict";var lk=gb(),dEe=lk.FORMAT_LINK,pEe=lk.DATE_FORMAT_LINK;function bb(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function Bl(e,r){return r?r.d2l(e):e}function sk(e,r){return r?r.l2d(e):e}function ble(e){return e.x0}function xle(e){return e.x1}function _le(e){return e.y0}function wle(e){return e.y1}function uk(e){return e.x0shift||0}function fk(e){return e.x1shift||0}function ck(e){return e.y0shift||0}function vk(e){return e.y1shift||0}function Ap(e,r){return Bl(e.x1,r)+fk(e)-Bl(e.x0,r)-uk(e)}function Mp(e,r,t){return Bl(e.y1,t)+vk(e)-Bl(e.y0,t)-ck(e)}function Tle(e,r){return Math.abs(Ap(e,r))}function Ale(e,r,t){return Math.abs(Mp(e,r,t))}function Mle(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(Ap(e,r),2)+Math.pow(Mp(e,r,t),2))}function kle(e,r){return sk((Bl(e.x1,r)+fk(e)+Bl(e.x0,r)+uk(e))/2,r)}function Sle(e,r,t){return sk((Bl(e.y1,t)+vk(e)+Bl(e.y0,t)+ck(e))/2,t)}function qle(e,r,t){return e.type!=="line"?void 0:Mp(e,r,t)/Ap(e,r)}hk.exports={x0:ble,x1:xle,y0:_le,y1:wle,slope:qle,dx:Ap,dy:Mp,width:Tle,height:Ale,length:Mle,xcenter:kle,ycenter:Sle}});var yk=N((gEe,pk)=>{"use strict";var Lle=Xi().overrideAll,Xs=mn(),dk=ca(),Cle=si().dash,Hl=bt().extendFlat,Ele=La().shapeTexttemplateAttrs,Dle=kp();pk.exports=Lle({newshape:{visible:Hl({},Xs.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Hl({},Xs.legend,{}),legendgroup:Hl({},Xs.legendgroup,{}),legendgrouptitle:{text:Hl({},Xs.legendgrouptitle.text,{}),font:dk({})},legendrank:Hl({},Xs.legendrank,{}),legendwidth:Hl({},Xs.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Hl({},Cle,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Hl({},Xs.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Ele({newshape:!0},{keys:Object.keys(Dle)}),font:dk({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var gk=N((bEe,mk)=>{"use strict";var Ple=si().dash,Rle=bt().extendFlat;mk.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:Rle({},Ple,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var Sp=N((xEe,bk)=>{"use strict";bk.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var Sf=N((_Ee,Tk)=>{"use strict";var xb=ca(),Fle=Zv(),qp=li(),xk=yk(),_k=gk(),Nle=Sp(),wk=bt().extendFlat,Lp=xb({editType:"calc"});Lp.family.dflt='"Open Sans", verdana, arial, sans-serif';Lp.size.dflt=12;Lp.color.dflt=qp.defaultLine;Tk.exports={font:Lp,title:{text:{valType:"string",editType:"layoutstyle"},font:xb({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:xb({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:wk(Nle({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:qp.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:qp.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:qp.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:xk.newshape,activeshape:xk.activeshape,newselection:_k.newselection,activeselection:_k.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:wk({},Fle.transition,{editType:"none"})}});var Ak=BA(()=>{});var zle={};var Mk=BA(()=>{Ak()});var gr=N(Hr=>{"use strict";var qf=Zs(),kk=_p(),Sk=hb(),Ile=zl(),Ole=jv().addStyleRule,qk=bt(),Ble=mn(),Hle=Sf(),Ule=qk.extendFlat,_b=qk.extendDeepAll;Hr.modules={};Hr.allCategories={};Hr.allTypes=[];Hr.subplotsRegistry={};Hr.componentsRegistry={};Hr.layoutArrayContainers=[];Hr.layoutArrayRegexes=[];Hr.traceLayoutAttributes={};Hr.localeRegistry={};Hr.apiMethodRegistry={};Hr.collectableSubplotTypes=null;Hr.register=function(r){if(Hr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var Zle=xf().timeFormat,Ok=Pr(),wb=Zs(),Gl=wf().mod,Ef=Ft(),ui=Ef.BADNUM,Cn=Ef.ONEDAY,Xv=Ef.ONEHOUR,Ul=Ef.ONEMIN,Cf=Ef.ONESEC,Jv=Ef.EPOCHJD,rl=gr(),Pk=xf().utcFormat,Xle=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Jle=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Rk=new Date().getFullYear()-70;function tl(e){return e&&rl.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Kt.dateTick0=function(e,r){var t=$le(e,!!r);if(r<2)return t;var a=Kt.dateTime2ms(t,e);return a+=Cn*(r-1),Kt.ms2DateTime(a,0,e)};function $le(e,r){return tl(e)?r?rl.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:rl.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Kt.dfltRange=function(e){return tl(e)?rl.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Kt.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Ep,Dp;Kt.dateTime2ms=function(e,r){if(Kt.isJSDate(e)){var t=e.getTimezoneOffset()*Ul,a=(e.getUTCMinutes()-e.getMinutes())*Ul+(e.getUTCSeconds()-e.getSeconds())*Cf+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Ul;t=t-n/2+Gl(a-t+n/2,n)}return e=Number(e)-t,e>=Ep&&e<=Dp?e:ui}if(typeof e!="string"&&typeof e!="number")return ui;e=String(e);var i=tl(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.substr(1),r="");var l=i&&r.substr(0,7)==="chinese",s=e.match(l?Jle:Xle);if(!s)return ui;var u=s[1],f=s[3]||"1",c=Number(s[5]||1),v=Number(s[7]||0),d=Number(s[9]||0),p=Number(s[11]||0);if(i){if(u.length===2)return ui;u=Number(u);var m;try{var y=rl.getComponentMethod("calendars","getCal")(r);if(l){var x=f.charAt(f.length-1)==="i";f=parseInt(f,10),m=y.newDate(u,y.toMonthIndex(u,f,x),c)}else m=y.newDate(u,Number(f),c)}catch(w){return ui}return m?(m.toJD()-Jv)*Cn+v*Xv+d*Ul+p*Cf:ui}u.length===2?u=(Number(u)+2e3-Rk)%100+Rk:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,v,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?ui:_.getTime()+p*Cf};Ep=Kt.MIN_MS=Kt.dateTime2ms("-9999");Dp=Kt.MAX_MS=Kt.dateTime2ms("9999-12-31 23:59:59.9999");Kt.isDateTime=function(e,r){return Kt.dateTime2ms(e,r)!==ui};function Lf(e,r){return String(e+Math.pow(10,r)).substr(1)}var Cp=90*Cn,Fk=3*Xv,Nk=5*Ul;Kt.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Ep&&e<=Dp))return ui;r||(r=0);var a=Math.floor(Gl(e+.05,1)*10),n=Math.round(e-a/10),i,o,l,s,u,f;if(tl(t)){var c=Math.floor(n/Cn)+Jv,v=Math.floor(Gl(e,Cn));try{i=rl.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=Pk("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;o=r=Ep+Cn&&e<=Dp-Cn))return ui;var r=Math.floor(Gl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=Zle("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return Bk(a,n,i,o,l)};function Bk(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+Lf(r,2)+":"+Lf(t,2),(a||n)&&(e+=":"+Lf(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+Lf(n,i)}return e}Kt.cleanDate=function(e,r,t){if(e===ui)return r;if(Kt.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(tl(t))return wb.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Kt.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Kt.isDateTime(e,t))return wb.error("unrecognized date",e),r;return e};var Kle=/%\d?f/g,Qle=/%h/g,ese={1:"1",2:"1",3:"2",4:"2"};function zk(e,r,t,a){e=e.replace(Kle,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return l});var n=new Date(Math.floor(r+.05));if(e=e.replace(Qle,function(){return ese[t("%q")(n)]}),tl(a))try{e=rl.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var rse=[59,59.9,59.99,59.999,59.9999];function tse(e,r){var t=Gl(e+.05,Cn),a=Lf(Math.floor(t/Xv),2)+":"+Lf(Gl(Math.floor(t/Ul),60),2);if(r!=="M"){Ok(r)||(r=0);var n=Math.min(Gl(e/Cf,60),rse[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Kt.formatDate=function(e,r,t,a,n,i){if(n=tl(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-finance.js b/dist/plotly-finance.js index 7717b7f5fc8..51f7978839c 100644 --- a/dist/plotly-finance.js +++ b/dist/plotly-finance.js @@ -1,5 +1,5 @@ /** -* plotly.js (finance) v3.0.3 +* plotly.js (finance) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -42,7 +42,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-finance.min.js b/dist/plotly-finance.min.js index 4e9929f6c58..2da57a9af0d 100644 --- a/dist/plotly-finance.min.js +++ b/dist/plotly-finance.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (finance - minified) v3.0.3 +* plotly.js (finance - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Ty=Object.defineProperty;var XW=Object.getOwnPropertyDescriptor;var ZW=Object.getOwnPropertyNames;var JW=Object.prototype.hasOwnProperty;var nt=(e,r)=>()=>(e&&(r=e(e=0)),r);var B=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),$W=(e,r)=>{for(var t in r)Ty(e,t,{get:r[t],enumerable:!0})},KW=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ZW(r))!JW.call(e,n)&&n!==t&&Ty(e,n,{get:()=>r[n],enumerable:!(a=XW(r,n))||a.enumerable});return e};var My=e=>KW(Ty({},"__esModule",{value:!0}),e);var Q0=B(G4=>{"use strict";G4.version="3.0.3"});var V4=B((U4,j0)=>{(function(r,t,a){t[r]=t[r]||a(),typeof j0!="undefined"&&j0.exports&&(j0.exports=t[r])})("Promise",typeof window!="undefined"?window:U4,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,T,x,M){return Object.defineProperty(_,T,{value:x,writable:!0,configurable:M!==!1})}}catch(b){r=function(T,x,M){return T[x]=M,T}}a=function(){var _,T,x;function M(A,k){this.fn=A,this.self=k,this.next=void 0}return{add:function(k,L){x=new M(k,L),T?T.next=x:_=x,T=x,x=void 0},drain:function(){var k=_;for(_=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(b,_){a.add(b,_),t||(t=i(a.drain))}function o(b){var _,T=typeof b;return b!=null&&(T=="object"||T=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&l(s,T))}catch(x){c.call(new d(T),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&l(s,_))}function h(b,_,T,x){for(var M=0;M<_.length;M++)(function(k){b.resolve(_[k]).then(function(D){T(k,D)},x)})(M)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function y(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,M){var A={success:typeof x=="function"?x:!0,failure:typeof M=="function"?M:!1};return A.promise=new this.constructor(function(L,D){if(typeof L!="function"||typeof D!="function")throw TypeError("Not a function");A.resolve=L,A.reject=D}),_.chain.push(A),_.state!==0&&l(s,_),A.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(T){c.call(_,T)}}var m=r({},"constructor",y,!1);return y.prototype=m,r(m,"__NPO__",0,!1),r(y,"resolve",function(_){var T=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");M(_)})}),r(y,"reject",function(_){return new this(function(x,M){if(typeof x!="function"||typeof M!="function")throw TypeError("Not a function");M(_)})}),r(y,"all",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):_.length===0?T.resolve([]):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");var k=_.length,L=Array(k),D=0;h(T,_,function(R,z){L[R]=z,++D===k&&M(L)},A)})}),r(y,"race",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");h(T,_,function(L,D){M(D)},A)})}),y})});var kr=B((Npe,eh)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(v){return r.call(v)},a=self.document;function n(v){return v&&(v.ownerDocument||v.document||v).documentElement}function i(v){return v&&(v.ownerDocument&&v.ownerDocument.defaultView||v.document&&v||v.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(v){t=function(g){for(var w=g.length,q=new Array(w);w--;)q[w]=g[w];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(v){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(g,w){o.call(this,g,w+"")},l.setAttributeNS=function(g,w,q){s.call(this,g,w,q+"")},u.setProperty=function(g,w,q){f.call(this,g,w+"",q)}}e.ascending=c;function c(v,g){return vg?1:v>=g?0:NaN}e.descending=function(v,g){return gv?1:g>=v?0:NaN},e.min=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wS&&(C=S)}else{for(;++w=S){C=S;break}for(;++wS&&(C=S)}return C},e.max=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wC&&(C=S)}else{for(;++w=S){C=S;break}for(;++wC&&(C=S)}return C},e.extent=function(v,g){var w=-1,q=v.length,C,S,N;if(arguments.length===1){for(;++w=S){C=N=S;break}for(;++wS&&(C=S),N=S){C=N=S;break}for(;++wS&&(C=S),N1)return N/(F-1)},e.deviation=function(){var v=e.variance.apply(this,arguments);return v&&Math.sqrt(v)};function p(v){return{left:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)<0?q=S+1:C=S}return q},right:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)>0?C=S:q=S+1}return q}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.right,e.bisector=function(v){return p(v.length===1?function(g,w){return c(v(g),w)}:v)},e.shuffle=function(v,g,w){(q=arguments.length)<3&&(w=v.length,q<2&&(g=0));for(var q=w-g,C,S;q;)S=Math.random()*q--|0,C=v[q+g],v[q+g]=v[S+g],v[S+g]=C;return v},e.permute=function(v,g){for(var w=g.length,q=new Array(w);w--;)q[w]=v[g[w]];return q},e.pairs=function(v){for(var g=0,w=v.length-1,q,C=v[0],S=new Array(w<0?0:w);g=0;)for(N=v[g],w=N.length;--w>=0;)S[--C]=N[w];return S};var b=Math.abs;e.range=function(v,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=v,v=0)),(g-v)/w===1/0)throw new Error("infinite range");var q=[],C=_(b(w)),S=-1,N;if(v*=C,g*=C,w*=C,w<0)for(;(N=v+w*++S)>g;)q.push(N/C);else for(;(N=v+w*++S)=g.length)return C?C.call(v,F):q?F.sort(q):F;for(var $=-1,j=F.length,ee=g[J++],me,Te,ae,oe=new x,he;++$=g.length)return E;var J=[],$=w[F++];return E.forEach(function(j,ee){J.push({key:j,values:N(ee,F)})}),$?J.sort(function(j,ee){return $(j.key,ee.key)}):J}return v.map=function(E,F){return S(F,E,0)},v.entries=function(E){return N(S(e.map,E,0),0)},v.key=function(E){return g.push(E),v},v.sortKeys=function(E){return w[g.length-1]=E,v},v.sortValues=function(E){return q=E,v},v.rollup=function(E){return C=E,v},v},e.set=function(v){var g=new O;if(v)for(var w=0,q=v.length;w=0&&(q=v.slice(w+1),v=v.slice(0,w)),v)return arguments.length<2?this[v].on(q):this[v].on(q,g);if(arguments.length===2){if(g==null)for(v in this)this.hasOwnProperty(v)&&this[v].on(q,null);return this}};function K(v){var g=[],w=new x;function q(){for(var C=g,S=-1,N=C.length,E;++S=0&&(w=v.slice(0,g))!=="xmlns"&&(v=v.slice(g+1)),ye.hasOwnProperty(w)?{space:ye[w],local:v}:v}},be.attr=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node();return v=e.ns.qualify(v),v.local?w.getAttributeNS(v.space,v.local):w.getAttribute(v)}for(g in v)this.each(_e(g,v[g]));return this}return this.each(_e(v,g))};function _e(v,g){v=e.ns.qualify(v);function w(){this.removeAttribute(v)}function q(){this.removeAttributeNS(v.space,v.local)}function C(){this.setAttribute(v,g)}function S(){this.setAttributeNS(v.space,v.local,g)}function N(){var F=g.apply(this,arguments);F==null?this.removeAttribute(v):this.setAttribute(v,F)}function E(){var F=g.apply(this,arguments);F==null?this.removeAttributeNS(v.space,v.local):this.setAttributeNS(v.space,v.local,F)}return g==null?v.local?q:w:typeof g=="function"?v.local?E:N:v.local?S:C}function xe(v){return v.trim().replace(/\s+/g," ")}be.classed=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node(),q=(v=ze(v)).length,C=-1;if(g=w.classList){for(;++C=0;)(S=w[q])&&(C&&C!==S.nextSibling&&C.parentNode.insertBefore(S,C),C=S);return this},be.sort=function(v){v=Ae.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=C+1);!(F=N[g])&&++g0&&(v=v.slice(0,C));var N=Ye.get(v);N&&(v=N,S=Ge);function E(){var $=this[q];$&&(this.removeEventListener(v,$,$.$),delete this[q])}function F(){var $=S(g,t(arguments));E.call(this),this.addEventListener(v,this[q]=$,$.$=w),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(v)+"$"),j;for(var ee in this)if(j=ee.match($)){var me=this[ee];this.removeEventListener(j[1],me,me.$),delete this[ee]}}return C?g?F:E:g?G:J}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(v){"on"+v in a&&Ye.remove(v)});function Xe(v,g){return function(w){var q=e.event;e.event=w,g[0]=this.__data__;try{v.apply(this,g)}finally{e.event=q}}}function Ge(v,g){var w=Xe(v,g);return function(q){var C=this,S=q.relatedTarget;(!S||S!==C&&!(S.compareDocumentPosition(C)&8))&&w.call(C,q)}}var Oe,$e=0;function fr(v){var g=".dragsuppress-"+ ++$e,w="click"+g,q=e.select(i(v)).on("touchmove"+g,re).on("dragstart"+g,re).on("selectstart"+g,re);if(Oe==null&&(Oe="onselectstart"in v?!1:Y(v.style,"userSelect")),Oe){var C=n(v).style,S=C[Oe];C[Oe]="none"}return function(N){if(q.on(g,null),Oe&&(C[Oe]=S),N){var E=function(){q.on(w,null)};q.on(w,function(){re(),E()},!0),setTimeout(E,0)}}}e.mouse=function(v){return Ne(v,se())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ne(v,g){g.changedTouches&&(g=g.changedTouches[0]);var w=v.ownerSVGElement||v;if(w.createSVGPoint){var q=w.createSVGPoint();if(lr<0){var C=i(v);if(C.scrollX||C.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var S=w[0][0].getScreenCTM();lr=!(S.f||S.e),w.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(v.getScreenCTM().inverse()),[q.x,q.y]}var N=v.getBoundingClientRect();return[g.clientX-N.left-v.clientLeft,g.clientY-N.top-v.clientTop]}e.touch=function(v,g,w){if(arguments.length<3&&(w=g,g=se().changedTouches),g){for(var q=0,C=g.length,S;q0?1:v<0?-1:0}function Wr(v,g,w){return(g[0]-v[0])*(w[1]-v[1])-(g[1]-v[1])*(w[0]-v[0])}function Nt(v){return v>1?0:v<-1?qe:Math.acos(v)}function oa(v){return v>1?sr:v<-1?-sr:Math.asin(v)}function Na(v){return((v=Math.exp(v))-1/v)/2}function sa(v){return((v=Math.exp(v))+1/v)/2}function Sn(v){return((v=Math.exp(2*v))-1)/(v+1)}function Za(v){return(v=Math.sin(v/2))*v}var ua=Math.SQRT2,Ja=2,gr=4;e.interpolateZoom=function(v,g){var w=v[0],q=v[1],C=v[2],S=g[0],N=g[1],E=g[2],F=S-w,J=N-q,$=F*F+J*J,j,ee;if($0&&(er=er.transition().duration(N)),er.call(Me.event)}function hr(){oe&&oe.domain(ae.range().map(function(er){return(er-v.x)/v.k}).map(ae.invert)),we&&we.domain(he.range().map(function(er){return(er-v.y)/v.k}).map(he.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:v.k,translate:[v.x,v.y]})}function pr(er){--E||(er({type:"zoomend"}),w=null)}function Mr(){var er=this,Dr=Te.of(er,arguments),Pr=0,Qr=e.select(i(er)).on(J,xa).on($,Ha),kt=pe(e.mouse(er)),Zt=fr(er);Z0.call(er),dr(Dr);function xa(){Pr=1,or(e.mouse(er),kt),Sr(Dr)}function Ha(){Qr.on(J,null).on($,null),Zt(Pr),pr(Dr)}}function Kr(){var er=this,Dr=Te.of(er,arguments),Pr={},Qr=0,kt,Zt=".zoom-"+e.event.changedTouches[0].identifier,xa="touchmove"+Zt,Ha="touchend"+Zt,$a=[],Oa=e.select(er),en=fr(er);rn(),dr(Dr),Oa.on(F,null).on(ee,rn);function La(){var oi=e.touches(er);return kt=v.k,oi.forEach(function(ba){ba.identifier in Pr&&(Pr[ba.identifier]=pe(ba))}),oi}function rn(){var oi=e.event.target;e.select(oi).on(xa,Fo).on(Ha,WW),$a.push(oi);for(var ba=e.event.changedTouches,Pn=0,zi=ba.length;Pn1){var Io=En[0],Pl=En[1],K0=Io[0]-Pl[0],Y4=Io[1]-Pl[1];Qr=K0*K0+Y4*Y4}}function Fo(){var oi=e.touches(er),ba,Pn,zi,En;Z0.call(er);for(var fu=0,Io=oi.length;fu1?1:g,w=w<0?0:w>1?1:w,C=w<=.5?w*(1+g):w+g-w*g,q=2*w-C;function S(E){return E>360?E-=360:E<0&&(E+=360),E<60?q+(C-q)*E/60:E<180?C:E<240?q+(C-q)*(240-E)/60:q}function N(E){return Math.round(S(E)*255)}return new Ia(N(v+120),N(v),N(v-120))}e.hcl=fa;function fa(v,g,w){return this instanceof fa?(this.h=+v,this.c=+g,void(this.l=+w)):arguments.length<2?v instanceof fa?new fa(v.h,v.c,v.l):v instanceof Qt?q0(v.l,v.a,v.b):q0((v=nr((v=e.rgb(v)).r,v.g,v.b)).l,v.a,v.b):new fa(v,g,w)}var ai=fa.prototype=new Lt;ai.brighter=function(v){return new fa(this.h,this.c,Math.min(100,this.l+it*(arguments.length?v:1)))},ai.darker=function(v){return new fa(this.h,this.c,Math.max(0,this.l-it*(arguments.length?v:1)))},ai.rgb=function(){return ni(this.h,this.c,this.l).rgb()};function ni(v,g,w){return isNaN(v)&&(v=0),isNaN(g)&&(g=0),new Qt(w,Math.cos(v*=Ar)*g,Math.sin(v)*g)}e.lab=Qt;function Qt(v,g,w){return this instanceof Qt?(this.l=+v,this.a=+g,void(this.b=+w)):arguments.length<2?v instanceof Qt?new Qt(v.l,v.a,v.b):v instanceof fa?ni(v.h,v.c,v.l):nr((v=Ia(v)).r,v.g,v.b):new Qt(v,g,w)}var it=18,ma=.95047,Do=1,Po=1.08883,Sl=Qt.prototype=new Lt;Sl.brighter=function(v){return new Qt(Math.min(100,this.l+it*(arguments.length?v:1)),this.a,this.b)},Sl.darker=function(v){return new Qt(Math.max(0,this.l-it*(arguments.length?v:1)),this.a,this.b)},Sl.rgb=function(){return k0(this.l,this.a,this.b)};function k0(v,g,w){var q=(v+16)/116,C=q+g/500,S=q-w/200;return C=ac(C)*ma,q=ac(q)*Do,S=ac(S)*Po,new Ia(ic(3.2404542*C-1.5371385*q-.4985314*S),ic(-.969266*C+1.8760108*q+.041556*S),ic(.0556434*C-.2040259*q+1.0572252*S))}function q0(v,g,w){return v>0?new fa(Math.atan2(w,g)*Ur,Math.sqrt(g*g+w*w),v):new fa(NaN,NaN,v)}function ac(v){return v>.206893034?v*v*v:(v-4/29)/7.787037}function nc(v){return v>.008856?Math.pow(v,1/3):7.787037*v+4/29}function ic(v){return Math.round(255*(v<=.00304?12.92*v:1.055*Math.pow(v,1/2.4)-.055))}e.rgb=Ia;function Ia(v,g,w){return this instanceof Ia?(this.r=~~v,this.g=~~g,void(this.b=~~w)):arguments.length<2?v instanceof Ia?new Ia(v.r,v.g,v.b):Zr(""+v,Ia,Fa):new Ia(v,g,w)}function C0(v){return new Ia(v>>16,v>>8&255,v&255)}function tu(v){return C0(v)+""}var au=Ia.prototype=new Lt;au.brighter=function(v){v=Math.pow(.7,arguments.length?v:1);var g=this.r,w=this.g,q=this.b,C=30;return!g&&!w&&!q?new Ia(C,C,C):(g&&g>4,q=q>>4|q,C=F&240,C=C>>4|C,S=F&15,S=S<<4|S):v.length===7&&(q=(F&16711680)>>16,C=(F&65280)>>8,S=F&255)),g(q,C,S))}function rt(v,g,w){var q=Math.min(v/=255,g/=255,w/=255),C=Math.max(v,g,w),S=C-q,N,E,F=(C+q)/2;return S?(E=F<.5?S/(C+q):S/(2-C-q),v==C?N=(g-w)/S+(g0&&F<1?0:N),new ct(N,E,F)}function nr(v,g,w){v=ya(v),g=ya(g),w=ya(w);var q=nc((.4124564*v+.3575761*g+.1804375*w)/ma),C=nc((.2126729*v+.7151522*g+.072175*w)/Do),S=nc((.0193339*v+.119192*g+.9503041*w)/Po);return Qt(116*C-16,500*(q-C),200*(C-S))}function ya(v){return(v/=255)<=.04045?v/12.92:Math.pow((v+.055)/1.055,2.4)}function vt(v){var g=parseFloat(v);return v.charAt(v.length-1)==="%"?Math.round(g*2.55):g}var ga=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});ga.forEach(function(v,g){ga.set(v,C0(g))});function Nr(v){return typeof v=="function"?v:function(){return v}}e.functor=Nr,e.xhr=ii(U);function ii(v){return function(g,w,q){return arguments.length===2&&typeof w=="function"&&(q=w,w=null),Eo(g,w,v,q)}}function Eo(v,g,w,q){var C={},S=e.dispatch("beforesend","progress","load","error"),N={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(v)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=J:E.onreadystatechange=function(){E.readyState>3&&J()};function J(){var $=E.status,j;if(!$&&ZU(E)||$>=200&&$<300||$===304){try{j=w.call(C,E)}catch(ee){S.error.call(C,ee);return}S.load.call(C,j)}else S.error.call(C,E)}return E.onprogress=function($){var j=e.event;e.event=$;try{S.progress.call(C,E)}finally{e.event=j}},C.header=function($,j){return $=($+"").toLowerCase(),arguments.length<2?N[$]:(j==null?delete N[$]:N[$]=j+"",C)},C.mimeType=function($){return arguments.length?(g=$==null?null:$+"",C):g},C.responseType=function($){return arguments.length?(F=$,C):F},C.response=function($){return w=$,C},["get","post"].forEach(function($){C[$]=function(){return C.send.apply(C,[$].concat(t(arguments)))}}),C.send=function($,j,ee){if(arguments.length===2&&typeof j=="function"&&(ee=j,j=null),E.open($,v,!0),g!=null&&!("accept"in N)&&(N.accept=g+",*/*"),E.setRequestHeader)for(var me in N)E.setRequestHeader(me,N[me]);return g!=null&&E.overrideMimeType&&E.overrideMimeType(g),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(Te){ee(null,Te)}),S.beforesend.call(C,E),E.send(j==null?null:j),C},C.abort=function(){return E.abort(),C},e.rebind(C,S,"on"),q==null?C:C.get(XU(q))}function XU(v){return v.length===1?function(g,w){v(g==null?w:null)}:v}function ZU(v){var g=v.responseType;return g&&g!=="text"?v.response:v.responseText}e.dsv=function(v,g){var w=new RegExp('["'+v+` +"use strict";var Plotly=(()=>{var Ty=Object.defineProperty;var XW=Object.getOwnPropertyDescriptor;var ZW=Object.getOwnPropertyNames;var JW=Object.prototype.hasOwnProperty;var nt=(e,r)=>()=>(e&&(r=e(e=0)),r);var B=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),$W=(e,r)=>{for(var t in r)Ty(e,t,{get:r[t],enumerable:!0})},KW=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ZW(r))!JW.call(e,n)&&n!==t&&Ty(e,n,{get:()=>r[n],enumerable:!(a=XW(r,n))||a.enumerable});return e};var My=e=>KW(Ty({},"__esModule",{value:!0}),e);var Q0=B(G4=>{"use strict";G4.version="3.0.2"});var V4=B((U4,j0)=>{(function(r,t,a){t[r]=t[r]||a(),typeof j0!="undefined"&&j0.exports&&(j0.exports=t[r])})("Promise",typeof window!="undefined"?window:U4,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,T,x,M){return Object.defineProperty(_,T,{value:x,writable:!0,configurable:M!==!1})}}catch(b){r=function(T,x,M){return T[x]=M,T}}a=function(){var _,T,x;function M(A,k){this.fn=A,this.self=k,this.next=void 0}return{add:function(k,L){x=new M(k,L),T?T.next=x:_=x,T=x,x=void 0},drain:function(){var k=_;for(_=T=t=void 0;k;)k.fn.call(k.self),k=k.next}}}();function l(b,_){a.add(b,_),t||(t=i(a.drain))}function o(b){var _,T=typeof b;return b!=null&&(T=="object"||T=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&l(s,T))}catch(x){c.call(new d(T),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&l(s,_))}function h(b,_,T,x){for(var M=0;M<_.length;M++)(function(k){b.resolve(_[k]).then(function(D){T(k,D)},x)})(M)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function y(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,M){var A={success:typeof x=="function"?x:!0,failure:typeof M=="function"?M:!1};return A.promise=new this.constructor(function(L,D){if(typeof L!="function"||typeof D!="function")throw TypeError("Not a function");A.resolve=L,A.reject=D}),_.chain.push(A),_.state!==0&&l(s,_),A.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(T){c.call(_,T)}}var m=r({},"constructor",y,!1);return y.prototype=m,r(m,"__NPO__",0,!1),r(y,"resolve",function(_){var T=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");M(_)})}),r(y,"reject",function(_){return new this(function(x,M){if(typeof x!="function"||typeof M!="function")throw TypeError("Not a function");M(_)})}),r(y,"all",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):_.length===0?T.resolve([]):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");var k=_.length,L=Array(k),D=0;h(T,_,function(R,z){L[R]=z,++D===k&&M(L)},A)})}),r(y,"race",function(_){var T=this;return n.call(_)!="[object Array]"?T.reject(TypeError("Not an array")):new T(function(M,A){if(typeof M!="function"||typeof A!="function")throw TypeError("Not a function");h(T,_,function(L,D){M(D)},A)})}),y})});var kr=B((Npe,eh)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(v){return r.call(v)},a=self.document;function n(v){return v&&(v.ownerDocument||v.document||v).documentElement}function i(v){return v&&(v.ownerDocument&&v.ownerDocument.defaultView||v.document&&v||v.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(v){t=function(g){for(var w=g.length,q=new Array(w);w--;)q[w]=g[w];return q}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(v){var l=this.Element.prototype,o=l.setAttribute,s=l.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;l.setAttribute=function(g,w){o.call(this,g,w+"")},l.setAttributeNS=function(g,w,q){s.call(this,g,w,q+"")},u.setProperty=function(g,w,q){f.call(this,g,w+"",q)}}e.ascending=c;function c(v,g){return vg?1:v>=g?0:NaN}e.descending=function(v,g){return gv?1:g>=v?0:NaN},e.min=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wS&&(C=S)}else{for(;++w=S){C=S;break}for(;++wS&&(C=S)}return C},e.max=function(v,g){var w=-1,q=v.length,C,S;if(arguments.length===1){for(;++w=S){C=S;break}for(;++wC&&(C=S)}else{for(;++w=S){C=S;break}for(;++wC&&(C=S)}return C},e.extent=function(v,g){var w=-1,q=v.length,C,S,N;if(arguments.length===1){for(;++w=S){C=N=S;break}for(;++wS&&(C=S),N=S){C=N=S;break}for(;++wS&&(C=S),N1)return N/(F-1)},e.deviation=function(){var v=e.variance.apply(this,arguments);return v&&Math.sqrt(v)};function p(v){return{left:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)<0?q=S+1:C=S}return q},right:function(g,w,q,C){for(arguments.length<3&&(q=0),arguments.length<4&&(C=g.length);q>>1;v(g[S],w)>0?C=S:q=S+1}return q}}}var y=p(c);e.bisectLeft=y.left,e.bisect=e.bisectRight=y.right,e.bisector=function(v){return p(v.length===1?function(g,w){return c(v(g),w)}:v)},e.shuffle=function(v,g,w){(q=arguments.length)<3&&(w=v.length,q<2&&(g=0));for(var q=w-g,C,S;q;)S=Math.random()*q--|0,C=v[q+g],v[q+g]=v[S+g],v[S+g]=C;return v},e.permute=function(v,g){for(var w=g.length,q=new Array(w);w--;)q[w]=v[g[w]];return q},e.pairs=function(v){for(var g=0,w=v.length-1,q,C=v[0],S=new Array(w<0?0:w);g=0;)for(N=v[g],w=N.length;--w>=0;)S[--C]=N[w];return S};var b=Math.abs;e.range=function(v,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=v,v=0)),(g-v)/w===1/0)throw new Error("infinite range");var q=[],C=_(b(w)),S=-1,N;if(v*=C,g*=C,w*=C,w<0)for(;(N=v+w*++S)>g;)q.push(N/C);else for(;(N=v+w*++S)=g.length)return C?C.call(v,F):q?F.sort(q):F;for(var $=-1,j=F.length,ee=g[J++],me,Te,ae,oe=new x,he;++$=g.length)return E;var J=[],$=w[F++];return E.forEach(function(j,ee){J.push({key:j,values:N(ee,F)})}),$?J.sort(function(j,ee){return $(j.key,ee.key)}):J}return v.map=function(E,F){return S(F,E,0)},v.entries=function(E){return N(S(e.map,E,0),0)},v.key=function(E){return g.push(E),v},v.sortKeys=function(E){return w[g.length-1]=E,v},v.sortValues=function(E){return q=E,v},v.rollup=function(E){return C=E,v},v},e.set=function(v){var g=new O;if(v)for(var w=0,q=v.length;w=0&&(q=v.slice(w+1),v=v.slice(0,w)),v)return arguments.length<2?this[v].on(q):this[v].on(q,g);if(arguments.length===2){if(g==null)for(v in this)this.hasOwnProperty(v)&&this[v].on(q,null);return this}};function K(v){var g=[],w=new x;function q(){for(var C=g,S=-1,N=C.length,E;++S=0&&(w=v.slice(0,g))!=="xmlns"&&(v=v.slice(g+1)),ye.hasOwnProperty(w)?{space:ye[w],local:v}:v}},be.attr=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node();return v=e.ns.qualify(v),v.local?w.getAttributeNS(v.space,v.local):w.getAttribute(v)}for(g in v)this.each(_e(g,v[g]));return this}return this.each(_e(v,g))};function _e(v,g){v=e.ns.qualify(v);function w(){this.removeAttribute(v)}function q(){this.removeAttributeNS(v.space,v.local)}function C(){this.setAttribute(v,g)}function S(){this.setAttributeNS(v.space,v.local,g)}function N(){var F=g.apply(this,arguments);F==null?this.removeAttribute(v):this.setAttribute(v,F)}function E(){var F=g.apply(this,arguments);F==null?this.removeAttributeNS(v.space,v.local):this.setAttributeNS(v.space,v.local,F)}return g==null?v.local?q:w:typeof g=="function"?v.local?E:N:v.local?S:C}function xe(v){return v.trim().replace(/\s+/g," ")}be.classed=function(v,g){if(arguments.length<2){if(typeof v=="string"){var w=this.node(),q=(v=ze(v)).length,C=-1;if(g=w.classList){for(;++C=0;)(S=w[q])&&(C&&C!==S.nextSibling&&C.parentNode.insertBefore(S,C),C=S);return this},be.sort=function(v){v=Ae.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=C+1);!(F=N[g])&&++g0&&(v=v.slice(0,C));var N=Ye.get(v);N&&(v=N,S=Ge);function E(){var $=this[q];$&&(this.removeEventListener(v,$,$.$),delete this[q])}function F(){var $=S(g,t(arguments));E.call(this),this.addEventListener(v,this[q]=$,$.$=w),$._=g}function J(){var $=new RegExp("^__on([^.]+)"+e.requote(v)+"$"),j;for(var ee in this)if(j=ee.match($)){var me=this[ee];this.removeEventListener(j[1],me,me.$),delete this[ee]}}return C?g?F:E:g?G:J}var Ye=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&Ye.forEach(function(v){"on"+v in a&&Ye.remove(v)});function Xe(v,g){return function(w){var q=e.event;e.event=w,g[0]=this.__data__;try{v.apply(this,g)}finally{e.event=q}}}function Ge(v,g){var w=Xe(v,g);return function(q){var C=this,S=q.relatedTarget;(!S||S!==C&&!(S.compareDocumentPosition(C)&8))&&w.call(C,q)}}var Oe,$e=0;function fr(v){var g=".dragsuppress-"+ ++$e,w="click"+g,q=e.select(i(v)).on("touchmove"+g,re).on("dragstart"+g,re).on("selectstart"+g,re);if(Oe==null&&(Oe="onselectstart"in v?!1:Y(v.style,"userSelect")),Oe){var C=n(v).style,S=C[Oe];C[Oe]="none"}return function(N){if(q.on(g,null),Oe&&(C[Oe]=S),N){var E=function(){q.on(w,null)};q.on(w,function(){re(),E()},!0),setTimeout(E,0)}}}e.mouse=function(v){return Ne(v,se())};var lr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ne(v,g){g.changedTouches&&(g=g.changedTouches[0]);var w=v.ownerSVGElement||v;if(w.createSVGPoint){var q=w.createSVGPoint();if(lr<0){var C=i(v);if(C.scrollX||C.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var S=w[0][0].getScreenCTM();lr=!(S.f||S.e),w.remove()}}return lr?(q.x=g.pageX,q.y=g.pageY):(q.x=g.clientX,q.y=g.clientY),q=q.matrixTransform(v.getScreenCTM().inverse()),[q.x,q.y]}var N=v.getBoundingClientRect();return[g.clientX-N.left-v.clientLeft,g.clientY-N.top-v.clientTop]}e.touch=function(v,g,w){if(arguments.length<3&&(w=g,g=se().changedTouches),g){for(var q=0,C=g.length,S;q0?1:v<0?-1:0}function Wr(v,g,w){return(g[0]-v[0])*(w[1]-v[1])-(g[1]-v[1])*(w[0]-v[0])}function Nt(v){return v>1?0:v<-1?qe:Math.acos(v)}function oa(v){return v>1?sr:v<-1?-sr:Math.asin(v)}function Na(v){return((v=Math.exp(v))-1/v)/2}function sa(v){return((v=Math.exp(v))+1/v)/2}function Sn(v){return((v=Math.exp(2*v))-1)/(v+1)}function Za(v){return(v=Math.sin(v/2))*v}var ua=Math.SQRT2,Ja=2,gr=4;e.interpolateZoom=function(v,g){var w=v[0],q=v[1],C=v[2],S=g[0],N=g[1],E=g[2],F=S-w,J=N-q,$=F*F+J*J,j,ee;if($0&&(er=er.transition().duration(N)),er.call(Me.event)}function hr(){oe&&oe.domain(ae.range().map(function(er){return(er-v.x)/v.k}).map(ae.invert)),we&&we.domain(he.range().map(function(er){return(er-v.y)/v.k}).map(he.invert))}function dr(er){E++||er({type:"zoomstart"})}function Sr(er){hr(),er({type:"zoom",scale:v.k,translate:[v.x,v.y]})}function pr(er){--E||(er({type:"zoomend"}),w=null)}function Mr(){var er=this,Dr=Te.of(er,arguments),Pr=0,Qr=e.select(i(er)).on(J,xa).on($,Ha),kt=pe(e.mouse(er)),Zt=fr(er);Z0.call(er),dr(Dr);function xa(){Pr=1,or(e.mouse(er),kt),Sr(Dr)}function Ha(){Qr.on(J,null).on($,null),Zt(Pr),pr(Dr)}}function Kr(){var er=this,Dr=Te.of(er,arguments),Pr={},Qr=0,kt,Zt=".zoom-"+e.event.changedTouches[0].identifier,xa="touchmove"+Zt,Ha="touchend"+Zt,$a=[],Oa=e.select(er),en=fr(er);rn(),dr(Dr),Oa.on(F,null).on(ee,rn);function La(){var oi=e.touches(er);return kt=v.k,oi.forEach(function(ba){ba.identifier in Pr&&(Pr[ba.identifier]=pe(ba))}),oi}function rn(){var oi=e.event.target;e.select(oi).on(xa,Fo).on(Ha,WW),$a.push(oi);for(var ba=e.event.changedTouches,Pn=0,zi=ba.length;Pn1){var Io=En[0],Pl=En[1],K0=Io[0]-Pl[0],Y4=Io[1]-Pl[1];Qr=K0*K0+Y4*Y4}}function Fo(){var oi=e.touches(er),ba,Pn,zi,En;Z0.call(er);for(var fu=0,Io=oi.length;fu1?1:g,w=w<0?0:w>1?1:w,C=w<=.5?w*(1+g):w+g-w*g,q=2*w-C;function S(E){return E>360?E-=360:E<0&&(E+=360),E<60?q+(C-q)*E/60:E<180?C:E<240?q+(C-q)*(240-E)/60:q}function N(E){return Math.round(S(E)*255)}return new Ia(N(v+120),N(v),N(v-120))}e.hcl=fa;function fa(v,g,w){return this instanceof fa?(this.h=+v,this.c=+g,void(this.l=+w)):arguments.length<2?v instanceof fa?new fa(v.h,v.c,v.l):v instanceof Qt?q0(v.l,v.a,v.b):q0((v=nr((v=e.rgb(v)).r,v.g,v.b)).l,v.a,v.b):new fa(v,g,w)}var ai=fa.prototype=new Lt;ai.brighter=function(v){return new fa(this.h,this.c,Math.min(100,this.l+it*(arguments.length?v:1)))},ai.darker=function(v){return new fa(this.h,this.c,Math.max(0,this.l-it*(arguments.length?v:1)))},ai.rgb=function(){return ni(this.h,this.c,this.l).rgb()};function ni(v,g,w){return isNaN(v)&&(v=0),isNaN(g)&&(g=0),new Qt(w,Math.cos(v*=Ar)*g,Math.sin(v)*g)}e.lab=Qt;function Qt(v,g,w){return this instanceof Qt?(this.l=+v,this.a=+g,void(this.b=+w)):arguments.length<2?v instanceof Qt?new Qt(v.l,v.a,v.b):v instanceof fa?ni(v.h,v.c,v.l):nr((v=Ia(v)).r,v.g,v.b):new Qt(v,g,w)}var it=18,ma=.95047,Do=1,Po=1.08883,Sl=Qt.prototype=new Lt;Sl.brighter=function(v){return new Qt(Math.min(100,this.l+it*(arguments.length?v:1)),this.a,this.b)},Sl.darker=function(v){return new Qt(Math.max(0,this.l-it*(arguments.length?v:1)),this.a,this.b)},Sl.rgb=function(){return k0(this.l,this.a,this.b)};function k0(v,g,w){var q=(v+16)/116,C=q+g/500,S=q-w/200;return C=ac(C)*ma,q=ac(q)*Do,S=ac(S)*Po,new Ia(ic(3.2404542*C-1.5371385*q-.4985314*S),ic(-.969266*C+1.8760108*q+.041556*S),ic(.0556434*C-.2040259*q+1.0572252*S))}function q0(v,g,w){return v>0?new fa(Math.atan2(w,g)*Ur,Math.sqrt(g*g+w*w),v):new fa(NaN,NaN,v)}function ac(v){return v>.206893034?v*v*v:(v-4/29)/7.787037}function nc(v){return v>.008856?Math.pow(v,1/3):7.787037*v+4/29}function ic(v){return Math.round(255*(v<=.00304?12.92*v:1.055*Math.pow(v,1/2.4)-.055))}e.rgb=Ia;function Ia(v,g,w){return this instanceof Ia?(this.r=~~v,this.g=~~g,void(this.b=~~w)):arguments.length<2?v instanceof Ia?new Ia(v.r,v.g,v.b):Zr(""+v,Ia,Fa):new Ia(v,g,w)}function C0(v){return new Ia(v>>16,v>>8&255,v&255)}function tu(v){return C0(v)+""}var au=Ia.prototype=new Lt;au.brighter=function(v){v=Math.pow(.7,arguments.length?v:1);var g=this.r,w=this.g,q=this.b,C=30;return!g&&!w&&!q?new Ia(C,C,C):(g&&g>4,q=q>>4|q,C=F&240,C=C>>4|C,S=F&15,S=S<<4|S):v.length===7&&(q=(F&16711680)>>16,C=(F&65280)>>8,S=F&255)),g(q,C,S))}function rt(v,g,w){var q=Math.min(v/=255,g/=255,w/=255),C=Math.max(v,g,w),S=C-q,N,E,F=(C+q)/2;return S?(E=F<.5?S/(C+q):S/(2-C-q),v==C?N=(g-w)/S+(g0&&F<1?0:N),new ct(N,E,F)}function nr(v,g,w){v=ya(v),g=ya(g),w=ya(w);var q=nc((.4124564*v+.3575761*g+.1804375*w)/ma),C=nc((.2126729*v+.7151522*g+.072175*w)/Do),S=nc((.0193339*v+.119192*g+.9503041*w)/Po);return Qt(116*C-16,500*(q-C),200*(C-S))}function ya(v){return(v/=255)<=.04045?v/12.92:Math.pow((v+.055)/1.055,2.4)}function vt(v){var g=parseFloat(v);return v.charAt(v.length-1)==="%"?Math.round(g*2.55):g}var ga=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});ga.forEach(function(v,g){ga.set(v,C0(g))});function Nr(v){return typeof v=="function"?v:function(){return v}}e.functor=Nr,e.xhr=ii(U);function ii(v){return function(g,w,q){return arguments.length===2&&typeof w=="function"&&(q=w,w=null),Eo(g,w,v,q)}}function Eo(v,g,w,q){var C={},S=e.dispatch("beforesend","progress","load","error"),N={},E=new XMLHttpRequest,F=null;self.XDomainRequest&&!("withCredentials"in E)&&/^(http(s)?:)?\/\//.test(v)&&(E=new XDomainRequest),"onload"in E?E.onload=E.onerror=J:E.onreadystatechange=function(){E.readyState>3&&J()};function J(){var $=E.status,j;if(!$&&ZU(E)||$>=200&&$<300||$===304){try{j=w.call(C,E)}catch(ee){S.error.call(C,ee);return}S.load.call(C,j)}else S.error.call(C,E)}return E.onprogress=function($){var j=e.event;e.event=$;try{S.progress.call(C,E)}finally{e.event=j}},C.header=function($,j){return $=($+"").toLowerCase(),arguments.length<2?N[$]:(j==null?delete N[$]:N[$]=j+"",C)},C.mimeType=function($){return arguments.length?(g=$==null?null:$+"",C):g},C.responseType=function($){return arguments.length?(F=$,C):F},C.response=function($){return w=$,C},["get","post"].forEach(function($){C[$]=function(){return C.send.apply(C,[$].concat(t(arguments)))}}),C.send=function($,j,ee){if(arguments.length===2&&typeof j=="function"&&(ee=j,j=null),E.open($,v,!0),g!=null&&!("accept"in N)&&(N.accept=g+",*/*"),E.setRequestHeader)for(var me in N)E.setRequestHeader(me,N[me]);return g!=null&&E.overrideMimeType&&E.overrideMimeType(g),F!=null&&(E.responseType=F),ee!=null&&C.on("error",ee).on("load",function(Te){ee(null,Te)}),S.beforesend.call(C,E),E.send(j==null?null:j),C},C.abort=function(){return E.abort(),C},e.rebind(C,S,"on"),q==null?C:C.get(XU(q))}function XU(v){return v.length===1?function(g,w){v(g==null?w:null)}:v}function ZU(v){var g=v.responseType;return g&&g!=="text"?v.response:v.responseText}e.dsv=function(v,g){var w=new RegExp('["'+v+` ]`),q=v.charCodeAt(0);function C(J,$,j){arguments.length<3&&(j=$,$=null);var ee=Eo(J,g,$==null?S:N($),j);return ee.row=function(me){return arguments.length?ee.response(($=me)==null?S:N(me)):$},ee}function S(J){return C.parse(J.responseText)}function N(J){return function($){return C.parse($.responseText,J)}}C.parse=function(J,$){var j;return C.parseRows(J,function(ee,me){if(j)return j(ee,me-1);var Te=function(ae){for(var oe={},he=ee.length,we=0;we=Te)return ee;if(we)return we=!1,j;var Ue=ae;if(J.charCodeAt(Ue)===34){for(var rr=Ue;rr++24?(isFinite(g)&&(clearTimeout(P0),P0=setTimeout(Jm,g)),D0=0):(D0=1,C_(Jm))}e.timer.flush=function(){L_(),S_()};function L_(){for(var v=Date.now(),g=L0;g;)v>=g.t&&g.c(v-g.t)&&(g.c=null),g=g.n;return v}function S_(){for(var v,g=L0,w=1/0;g;)g.c?(g.t=0;--E)ae.push(C[J[j[E]][2]]);for(E=+me;E1&&Wr(v[w[q-2]],v[w[q-1]],v[C])<=0;)--q;w[q++]=C}return w.slice(0,q)}function JU(v,g){return v[0]-g[0]||v[1]-g[1]}e.geom.polygon=function(v){return Q(v,R0),v};var R0=e.geom.polygon.prototype=[];R0.area=function(){for(var v=-1,g=this.length,w,q=this[g-1],C=0;++vfe)E=E.L;else if(N=g-jU(E,w),N>fe){if(!E.R){q=E;break}E=E.R}else{S>-fe?(q=E.P,C=E):N>-fe?(q=E,C=E.N):q=C=E;break}var F=z_(v);if(lu.insert(q,F),!(!q&&!C)){if(q===C){su(q),C=z_(q.site),lu.insert(F,C),F.edge=C.edge=sc(q.site,F.site),ou(q),ou(C);return}if(!C){F.edge=sc(q.site,F.site);return}su(q),su(C);var J=q.site,$=J.x,j=J.y,ee=v.x-$,me=v.y-j,Te=C.site,ae=Te.x-$,oe=Te.y-j,he=2*(ee*oe-me*ae),we=ee*ee+me*me,Me=ae*ae+oe*oe,pe={x:(oe*we-me*Me)/he+$,y:(ee*Me-ae*we)/he+j};z0(C.edge,J,Te,pe),F.edge=sc(J,v,null,pe),C.edge=sc(v,Te,null,pe),ou(q),ou(C)}}function N_(v,g){var w=v.site,q=w.x,C=w.y,S=C-g;if(!S)return q;var N=v.P;if(!N)return-1/0;w=N.site;var E=w.x,F=w.y,J=F-g;if(!J)return E;var $=E-q,j=1/S-1/J,ee=$/J;return j?(-ee+Math.sqrt(ee*ee-2*j*($*$/(-2*J)-F+J/2+C-S/2)))/j+q:(q+E)/2}function jU(v,g){var w=v.N;if(w)return N_(w,g);var q=v.site;return q.y===g?q.x:1/0}function F_(v){this.site=v,this.edges=[]}F_.prototype.prepare=function(){for(var v=this.edges,g=v.length,w;g--;)w=v[g].edge,(!w.b||!w.a)&&v.splice(g,1);return v.sort(I_),v.length};function eV(v){for(var g=v[0][0],w=v[1][0],q=v[0][1],C=v[1][1],S,N,E,F,J=Ro,$=J.length,j,ee,me,Te,ae,oe;$--;)if(j=J[$],!(!j||!j.prepare()))for(me=j.edges,Te=me.length,ee=0;eefe||b(F-N)>fe)&&(me.splice(ee,0,new N0(iV(j.site,oe,b(E-g)fe?{x:g,y:b(S-g)fe?{x:b(N-C)fe?{x:w,y:b(S-w)fe?{x:b(N-q)=-Se)){var ee=F*F+J*J,me=$*$+oe*oe,Te=(oe*ee-J*me)/j,ae=(F*me-$*ee)/j,oe=ae+E,he=R_.pop()||new rV;he.arc=v,he.site=C,he.x=Te+N,he.y=oe+Math.sqrt(Te*Te+ae*ae),he.cy=oe,v.circle=he;for(var we=null,Me=oc._;Me;)if(he.y0)){if(ae/=me,me<0){if(ae0){if(ae>ee)return;ae>j&&(j=ae)}if(ae=w-E,!(!me&&ae<0)){if(ae/=me,me<0){if(ae>ee)return;ae>j&&(j=ae)}else if(me>0){if(ae0)){if(ae/=Te,Te<0){if(ae0){if(ae>ee)return;ae>j&&(j=ae)}if(ae=q-F,!(!Te&&ae<0)){if(ae/=Te,Te<0){if(ae>ee)return;ae>j&&(j=ae)}else if(Te>0){if(ae0&&(C.a={x:E+j*me,y:F+j*Te}),ee<1&&(C.b={x:E+ee*me,y:F+ee*Te}),C}}}}}}function aV(v){for(var g=iu,w=tV(v[0][0],v[0][1],v[1][0],v[1][1]),q=g.length,C;q--;)C=g[q],(!nV(C,v)||!w(C)||b(C.a.x-C.b.x)=S)return;if($>ee){if(!q)q={x:Te,y:N};else if(q.y>=E)return;w={x:Te,y:E}}else{if(!q)q={x:Te,y:E};else if(q.y1)if($>ee){if(!q)q={x:(N-he)/oe,y:N};else if(q.y>=E)return;w={x:(E-he)/oe,y:E}}else{if(!q)q={x:(E-he)/oe,y:E};else if(q.y=S)return;w={x:S,y:oe*S+he}}else{if(!q)q={x:S,y:oe*S+he};else if(q.x=$&&he.x<=ee&&he.y>=j&&he.y<=me?[[$,me],[ee,me],[ee,j],[$,j]]:[];we.point=F[ae]}),J}function E(F){return F.map(function(J,$){return{x:Math.round(q(J,$)/fe)*fe,y:Math.round(C(J,$)/fe)*fe,i:$}})}return N.links=function(F){return ry(E(F)).edges.filter(function(J){return J.l&&J.r}).map(function(J){return{source:F[J.l.i],target:F[J.r.i]}})},N.triangles=function(F){var J=[];return ry(E(F)).cells.forEach(function($,j){for(var ee=$.site,me=$.edges.sort(I_),Te=-1,ae=me.length,oe,he,we=me[ae-1].edge,Me=we.l===ee?we.r:we.l;++TeMe&&(Me=$.x),$.y>pe&&(pe=$.y),me.push($.x),Te.push($.y);else for(ae=0;aeMe&&(Me=Ue),rr>pe&&(pe=rr),me.push(Ue),Te.push(rr)}var or=Me-he,ar=pe-we;or>ar?pe=we+or:Me=he+ar;function hr(pr,Mr,Kr,Ft,at,er,Dr,Pr){if(!(isNaN(Kr)||isNaN(Ft)))if(pr.leaf){var Qr=pr.x,kt=pr.y;if(Qr!=null)if(b(Qr-Kr)+b(kt-Ft)<.01)dr(pr,Mr,Kr,Ft,at,er,Dr,Pr);else{var Zt=pr.point;pr.x=pr.y=pr.point=null,dr(pr,Zt,Qr,kt,at,er,Dr,Pr),dr(pr,Mr,Kr,Ft,at,er,Dr,Pr)}else pr.x=Kr,pr.y=Ft,pr.point=Mr}else dr(pr,Mr,Kr,Ft,at,er,Dr,Pr)}function dr(pr,Mr,Kr,Ft,at,er,Dr,Pr){var Qr=(at+Dr)*.5,kt=(er+Pr)*.5,Zt=Kr>=Qr,xa=Ft>=kt,Ha=xa<<1|Zt;pr.leaf=!1,pr=pr.nodes[Ha]||(pr.nodes[Ha]=B_()),Zt?at=Qr:Dr=Qr,xa?er=kt:Pr=kt,hr(pr,Mr,Kr,Ft,at,er,Dr,Pr)}var Sr=B_();if(Sr.add=function(pr){hr(Sr,pr,+j(pr,++ae),+ee(pr,ae),he,we,Me,pe)},Sr.visit=function(pr){cc(pr,Sr,he,we,Me,pe)},Sr.find=function(pr){return fV(Sr,pr[0],pr[1],he,we,Me,pe)},ae=-1,g==null){for(;++aeS||ee>N||me=Ue,ar=w>=rr,hr=ar<<1|or,dr=hr+4;hrw&&(S=g.slice(w,S),E[N]?E[N]+=S:E[++N]=S),(q=q[0])===(C=C[0])?E[N]?E[N]+=C:E[++N]=C:(E[++N]=null,F.push({i:N,x:nl(q,C)})),w=ny.lastIndex;return w=0&&!(q=e.interpolators[w](v,g)););return q}e.interpolators=[function(v,g){var w=typeof g;return(w==="string"?ga.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?ty:G_:g instanceof Lt?ty:Array.isArray(g)?H0:w==="object"&&isNaN(g)?Y_:nl)(v,g)}],e.interpolateArray=H0;function H0(v,g){var w=[],q=[],C=v.length,S=g.length,N=Math.min(v.length,g.length),E;for(E=0;E=0?v.slice(0,g):v,q=g>=0?v.slice(g+1):"in";return w=cV.get(w)||U_,q=vV.get(q)||U,hV(q(w.apply(null,r.call(arguments,1))))};function hV(v){return function(g){return g<=0?0:g>=1?1:v(g)}}function V_(v){return function(g){return 1-v(1-g)}}function W_(v){return function(g){return .5*(g<.5?v(2*g):2-v(2-2*g))}}function dV(v){return v*v}function pV(v){return v*v*v}function mV(v){if(v<=0)return 0;if(v>=1)return 1;var g=v*v,w=g*v;return 4*(v<.5?w:3*(v-g)+w-.75)}function yV(v){return function(g){return Math.pow(g,v)}}function gV(v){return 1-Math.cos(v*sr)}function xV(v){return Math.pow(2,10*(v-1))}function bV(v){return 1-Math.sqrt(1-v*v)}function _V(v,g){var w;return arguments.length<2&&(g=.45),arguments.length?w=g/ir*Math.asin(1/v):(v=1,w=g/4),function(q){return 1+v*Math.pow(2,-10*q)*Math.sin((q-w)*ir/g)}}function wV(v){return v||(v=1.70158),function(g){return g*g*((v+1)*g-v)}}function TV(v){return v<1/2.75?7.5625*v*v:v<2/2.75?7.5625*(v-=1.5/2.75)*v+.75:v<2.5/2.75?7.5625*(v-=2.25/2.75)*v+.9375:7.5625*(v-=2.625/2.75)*v+.984375}e.interpolateHcl=MV;function MV(v,g){v=e.hcl(v),g=e.hcl(g);var w=v.h,q=v.c,C=v.l,S=g.h-w,N=g.c-q,E=g.l-C;return isNaN(N)&&(N=0,q=isNaN(q)?g.c:q),isNaN(S)?(S=0,w=isNaN(w)?g.h:w):S>180?S-=360:S<-180&&(S+=360),function(F){return ni(w+S*F,q+N*F,C+E*F)+""}}e.interpolateHsl=AV;function AV(v,g){v=e.hsl(v),g=e.hsl(g);var w=v.h,q=v.s,C=v.l,S=g.h-w,N=g.s-q,E=g.l-C;return isNaN(N)&&(N=0,q=isNaN(q)?g.s:q),isNaN(S)?(S=0,w=isNaN(w)?g.h:w):S>180?S-=360:S<-180&&(S+=360),function(F){return Fa(w+S*F,q+N*F,C+E*F)+""}}e.interpolateLab=kV;function kV(v,g){v=e.lab(v),g=e.lab(g);var w=v.l,q=v.a,C=v.b,S=g.l-w,N=g.a-q,E=g.b-C;return function(F){return k0(w+S*F,q+N*F,C+E*F)+""}}e.interpolateRound=X_;function X_(v,g){return g-=v,function(w){return Math.round(v+g*w)}}e.transform=function(v){var g=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(w){if(w!=null){g.setAttribute("transform",w);var q=g.transform.baseVal.consolidate()}return new Z_(q?q.matrix:CV)})(v)};function Z_(v){var g=[v.a,v.b],w=[v.c,v.d],q=$_(g),C=J_(g,w),S=$_(qV(w,g,-C))||0;g[0]*w[1]180?g+=360:g-v>180&&(v+=360),q.push({i:w.push(uu(w)+"rotate(",null,")")-2,x:nl(v,g)})):g&&w.push(uu(w)+"rotate("+g+")")}function DV(v,g,w,q){v!==g?q.push({i:w.push(uu(w)+"skewX(",null,")")-2,x:nl(v,g)}):g&&w.push(uu(w)+"skewX("+g+")")}function PV(v,g,w,q){if(v[0]!==g[0]||v[1]!==g[1]){var C=w.push(uu(w)+"scale(",null,",",null,")");q.push({i:C-4,x:nl(v[0],g[0])},{i:C-2,x:nl(v[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(uu(w)+"scale("+g+")")}function K_(v,g){var w=[],q=[];return v=e.transform(v),g=e.transform(g),LV(v.translate,g.translate,w,q),SV(v.rotate,g.rotate,w,q),DV(v.skew,g.skew,w,q),PV(v.scale,g.scale,w,q),v=g=null,function(C){for(var S=-1,N=q.length,E;++S0?S=pe:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:S=0})):pe>0&&(g.start({type:"start",alpha:S=pe}),w=E0(v.tick)),v):S},v.start=function(){var pe,Ue=me.length,rr=Te.length,or=q[0],ar=q[1],hr,dr;for(pe=0;pe=0;)S.push($=J[F]),$.parent=E,$.depth=E.depth+1;w&&(E.value=0),E.children=J}else w&&(E.value=+w.call(q,E,E.depth)||0),delete E.children;return Ri(C,function(j){var ee,me;v&&(ee=j.children)&&ee.sort(v),w&&(me=j.parent)&&(me.value+=j.value)}),N}return q.sort=function(C){return arguments.length?(v=C,q):v},q.children=function(C){return arguments.length?(g=C,q):g},q.value=function(C){return arguments.length?(w=C,q):w},q.revalue=function(C){return w&&(hc(C,function(S){S.children&&(S.value=0)}),Ri(C,function(S){var N;S.children||(S.value=+w.call(q,S,S.depth)||0),(N=S.parent)&&(N.value+=S.value)})),C},q};function vc(v,g){return e.rebind(v,g,"sort","children","value"),v.nodes=v,v.links=XV,v}function hc(v,g){for(var w=[v];(v=w.pop())!=null;)if(g(v),(C=v.children)&&(q=C.length))for(var q,C;--q>=0;)w.push(C[q])}function Ri(v,g){for(var w=[v],q=[];(v=w.pop())!=null;)if(q.push(v),(N=v.children)&&(S=N.length))for(var C=-1,S,N;++CC&&(C=E),q.push(E)}for(N=0;Nq&&(w=g,q=C);return w}function eW(v){return v.reduce(rW,0)}function rW(v,g){return v+g[1]}e.layout.histogram=function(){var v=!0,g=Number,w=aW,q=tW;function C(S,ee){for(var E=[],F=S.map(g,this),J=w.call(this,F,ee),$=q.call(this,J,F,ee),j,ee=-1,me=F.length,Te=$.length-1,ae=v?1:1/me,oe;++ee0)for(ee=-1;++ee=J[0]&&oe<=J[1]&&(j=E[e.bisect($,oe,1,Te)-1],j.y+=ae,j.push(S[ee]));return E}return C.value=function(S){return arguments.length?(g=S,C):g},C.range=function(S){return arguments.length?(w=Nr(S),C):w},C.bins=function(S){return arguments.length?(q=typeof S=="number"?function(N){return r4(N,S)}:Nr(S),C):q},C.frequency=function(S){return arguments.length?(v=!!S,C):v},C};function tW(v,g){return r4(v,Math.ceil(Math.log(g.length)/Math.LN2+1))}function r4(v,g){for(var w=-1,q=+v[0],C=(v[1]-q)/g,S=[];++w<=g;)S[w]=C*w+q;return S}function aW(v){return[e.min(v),e.max(v)]}e.layout.pack=function(){var v=e.layout.hierarchy().sort(nW),g=0,w=[1,1],q;function C(S,N){var E=v.call(this,S,N),F=E[0],J=w[0],$=w[1],j=q==null?Math.sqrt:typeof q=="function"?q:function(){return q};if(F.x=F.y=0,Ri(F,function(me){me.r=+j(me.value)}),Ri(F,n4),g){var ee=g*(q?1:Math.max(2*F.r/J,2*F.r/$))/2;Ri(F,function(me){me.r+=ee}),Ri(F,n4),Ri(F,function(me){me.r-=ee})}return i4(F,J/2,$/2,q?1:1/Math.max(2*F.r/J,2*F.r/$)),E}return C.size=function(S){return arguments.length?(w=S,C):w},C.radius=function(S){return arguments.length?(q=S==null||typeof S=="function"?S:+S,C):q},C.padding=function(S){return arguments.length?(g=+S,C):g},vc(C,v)};function nW(v,g){return v.value-g.value}function oy(v,g){var w=v._pack_next;v._pack_next=g,g._pack_prev=v,g._pack_next=w,w._pack_prev=g}function t4(v,g){v._pack_next=g,g._pack_prev=v}function a4(v,g){var w=g.x-v.x,q=g.y-v.y,C=v.r+g.r;return .999*C*C>w*w+q*q}function n4(v){if(!(g=v.children)||!(ee=g.length))return;var g,w=1/0,q=-1/0,C=1/0,S=-1/0,N,E,F,J,$,j,ee;function me(pe){w=Math.min(pe.x-pe.r,w),q=Math.max(pe.x+pe.r,q),C=Math.min(pe.y-pe.r,C),S=Math.max(pe.y+pe.r,S)}if(g.forEach(iW),N=g[0],N.x=-N.r,N.y=0,me(N),ee>1&&(E=g[1],E.x=E.r,E.y=0,me(E),ee>2))for(F=g[2],l4(N,E,F),me(F),oy(N,F),N._pack_prev=F,oy(F,E),E=N._pack_next,J=3;Joe.x&&(oe=Ue),Ue.depth>he.depth&&(he=Ue)});var we=g(ae,oe)/2-ae.x,Me=w[0]/(oe.x+g(oe,ae)/2+we),pe=w[1]/(he.depth||1);hc(me,function(Ue){Ue.x=(Ue.x+we)*Me,Ue.y=Ue.depth*pe})}return ee}function S($){for(var j={A:null,children:[$]},ee=[j],me;(me=ee.pop())!=null;)for(var Te=me.children,ae,oe=0,he=Te.length;oe0&&(oW(uW(ae,$,ee),$,Ue),he+=Ue,we+=Ue),Me+=ae.m,he+=me.m,pe+=oe.m,we+=Te.m;ae&&!uy(Te)&&(Te.t=ae,Te.m+=Me-we),me&&!sy(oe)&&(oe.t=me,oe.m+=he-pe,ee=$)}return ee}function J($){$.x*=w[0],$.y=$.depth*w[1]}return C.separation=function($){return arguments.length?(g=$,C):g},C.size=function($){return arguments.length?(q=(w=$)==null?J:null,C):q?null:w},C.nodeSize=function($){return arguments.length?(q=(w=$)==null?null:J,C):q?w:null},vc(C,v)};function o4(v,g){return v.parent==g.parent?1:2}function sy(v){var g=v.children;return g.length?g[0]:v.t}function uy(v){var g=v.children,w;return(w=g.length)?g[w-1]:v.t}function oW(v,g,w){var q=w/(g.i-v.i);g.c-=q,g.s+=w,v.c+=q,g.z+=w,g.m+=w}function sW(v){for(var g=0,w=0,q=v.children,C=q.length,S;--C>=0;)S=q[C],S.z+=g,S.m+=g,g+=S.s+(w+=S.c)}function uW(v,g,w){return v.a.parent===g.parent?v.a:w}e.layout.cluster=function(){var v=e.layout.hierarchy().sort(null).value(null),g=o4,w=[1,1],q=!1;function C(S,N){var E=v.call(this,S,N),F=E[0],J,$=0;Ri(F,function(ae){var oe=ae.children;oe&&oe.length?(ae.x=cW(oe),ae.y=fW(oe)):(ae.x=J?$+=g(ae,J):0,ae.y=0,J=ae)});var j=s4(F),ee=u4(F),me=j.x-g(j,ee)/2,Te=ee.x+g(ee,j)/2;return Ri(F,q?function(ae){ae.x=(ae.x-F.x)*w[0],ae.y=(F.y-ae.y)*w[1]}:function(ae){ae.x=(ae.x-me)/(Te-me)*w[0],ae.y=(1-(F.y?ae.y/F.y:1))*w[1]}),E}return C.separation=function(S){return arguments.length?(g=S,C):g},C.size=function(S){return arguments.length?(q=(w=S)==null,C):q?null:w},C.nodeSize=function(S){return arguments.length?(q=(w=S)!=null,C):q?w:null},vc(C,v)};function fW(v){return 1+e.max(v,function(g){return g.y})}function cW(v){return v.reduce(function(g,w){return g+w.x},0)/v.length}function s4(v){var g=v.children;return g&&g.length?s4(g[0]):v}function u4(v){var g=v.children,w;return g&&(w=g.length)?u4(g[w-1]):v}e.layout.treemap=function(){var v=e.layout.hierarchy(),g=Math.round,w=[1,1],q=null,C=fy,S=!1,N,E="squarify",F=.5*(1+Math.sqrt(5));function J(ae,oe){for(var he=-1,we=ae.length,Me,pe;++he0;)we.push(pe=Me[ar-1]),we.area+=pe.area,E!=="squarify"||(rr=ee(we,or))<=Ue?(Me.pop(),Ue=rr):(we.area-=we.pop().area,me(we,or,he,!1),or=Math.min(he.dx,he.dy),we.length=we.area=0,Ue=1/0);we.length&&(me(we,or,he,!0),we.length=we.area=0),oe.forEach($)}}function j(ae){var oe=ae.children;if(oe&&oe.length){var he=C(ae),we=oe.slice(),Me,pe=[];for(J(we,he.dx*he.dy/ae.value),pe.area=0;Me=we.pop();)pe.push(Me),pe.area+=Me.area,Me.z!=null&&(me(pe,Me.z?he.dx:he.dy,he,!we.length),pe.length=pe.area=0);oe.forEach(j)}}function ee(ae,oe){for(var he=ae.area,we,Me=0,pe=1/0,Ue=-1,rr=ae.length;++UeMe&&(Me=we));return he*=he,oe*=oe,he?Math.max(oe*Me*F/he,he/(oe*pe*F)):1/0}function me(ae,oe,he,we){var Me=-1,pe=ae.length,Ue=he.x,rr=he.y,or=oe?g(ae.area/oe):0,ar;if(oe==he.dx){for((we||or>he.dy)&&(or=he.dy);++Mehe.dx)&&(or=he.dx);++Me1);return v+g*q*Math.sqrt(-2*Math.log(S)/S)}},logNormal:function(){var v=e.random.normal.apply(e,arguments);return function(){return Math.exp(v())}},bates:function(v){var g=e.random.irwinHall(v);return function(){return g()/v}},irwinHall:function(v){return function(){for(var g=0,w=0;w2?dW:vW,J=q?RV:EV;return C=F(v,g,J,w),S=F(g,v,J,zo),E}function E(F){return C(F)}return E.invert=function(F){return S(F)},E.domain=function(F){return arguments.length?(v=F.map(Number),N()):v},E.range=function(F){return arguments.length?(g=F,N()):g},E.rangeRound=function(F){return E.range(F).interpolate(X_)},E.clamp=function(F){return arguments.length?(q=F,N()):q},E.interpolate=function(F){return arguments.length?(w=F,N()):w},E.ticks=function(F){return hy(v,F)},E.tickFormat=function(F,J){return d3_scale_linearTickFormat(v,F,J)},E.nice=function(F){return d4(v,F),N()},E.copy=function(){return v4(v,g,w,q)},N()}function h4(v,g){return e.rebind(v,g,"range","rangeRound","interpolate","clamp")}function d4(v,g){return cy(v,c4(vy(v,g)[2])),cy(v,c4(vy(v,g)[2])),v}function vy(v,g){g==null&&(g=10);var w=O0(v),q=w[1]-w[0],C=Math.pow(10,Math.floor(Math.log(q/g)/Math.LN10)),S=g/q*C;return S<=.15?C*=10:S<=.35?C*=5:S<=.75&&(C*=2),w[0]=Math.ceil(w[0]/C)*C,w[1]=Math.floor(w[1]/C)*C+C*.5,w[2]=C,w}function hy(v,g){return e.range.apply(e,vy(v,g))}var pW={s:1,g:1,p:1,r:1,e:1};function p4(v){return-Math.floor(Math.log(v)/Math.LN10+.01)}function Epe(v,g){var w=p4(g[2]);return v in pW?Math.abs(w-p4(Math.max(b(g[0]),b(g[1]))))+ +(v!=="e"):w-(v==="%")*2}e.scale.log=function(){return m4(e.scale.linear().domain([0,1]),10,!0,[1,10])};function m4(v,g,w,q){function C(E){return(w?Math.log(E<0?0:E):-Math.log(E>0?0:-E))/Math.log(g)}function S(E){return w?Math.pow(g,E):-Math.pow(g,-E)}function N(E){return v(C(E))}return N.invert=function(E){return S(v.invert(E))},N.domain=function(E){return arguments.length?(w=E[0]>=0,v.domain((q=E.map(Number)).map(C)),N):q},N.base=function(E){return arguments.length?(g=+E,v.domain(q.map(C)),N):g},N.nice=function(){var E=cy(q.map(C),w?Math:mW);return v.domain(E),q=E.map(S),N},N.ticks=function(){var E=O0(q),F=[],J=E[0],$=E[1],j=Math.floor(C(J)),ee=Math.ceil(C($)),me=g%1?2:g;if(isFinite(ee-j)){if(w){for(;j0;Te--)F.push(S(j)*Te);for(j=0;F[j]$;ee--);F=F.slice(j,ee)}return F},N.copy=function(){return m4(v.copy(),g,w,q)},h4(N,v)}var mW={floor:function(v){return-Math.ceil(-v)},ceil:function(v){return-Math.floor(-v)}};e.scale.pow=function(){return y4(e.scale.linear(),1,[0,1])};function y4(v,g,w){var q=Y0(g),C=Y0(1/g);function S(N){return v(q(N))}return S.invert=function(N){return C(v.invert(N))},S.domain=function(N){return arguments.length?(v.domain((w=N.map(Number)).map(q)),S):w},S.ticks=function(N){return hy(w,N)},S.tickFormat=function(N,E){return d3_scale_linearTickFormat(w,N,E)},S.nice=function(N){return S.domain(d4(w,N))},S.exponent=function(N){return arguments.length?(q=Y0(g=N),C=Y0(1/g),v.domain(w.map(q)),S):g},S.copy=function(){return y4(v.copy(),g,w)},h4(S,v)}function Y0(v){return function(g){return g<0?-Math.pow(-g,v):Math.pow(g,v)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return g4([],{t:"range",a:[[]]})};function g4(v,g){var w,q,C;function S(E){return q[((w.get(E)||(g.t==="range"?w.set(E,v.push(E)):NaN))-1)%q.length]}function N(E,F){return e.range(v.length).map(function(J){return E+F*J})}return S.domain=function(E){if(!arguments.length)return v;v=[],w=new x;for(var F=-1,J=E.length,$;++F0?w[S-1]:v[0],See?0:1;if($=vr)return F($,Te)+(J?F(J,1-Te):"")+"Z";var ae,oe,he,we,Me=0,pe=0,Ue,rr,or,ar,hr,dr,Sr,pr,Mr=[];if((we=(+N.apply(this,arguments)||0)/2)&&(he=q===G0?Math.sqrt(J*J+$*$):+q.apply(this,arguments),Te||(pe*=-1),$&&(pe=oa(he/$*Math.sin(we))),J&&(Me=oa(he/J*Math.sin(we)))),$){Ue=$*Math.cos(j+pe),rr=$*Math.sin(j+pe),or=$*Math.cos(ee-pe),ar=$*Math.sin(ee-pe);var Kr=Math.abs(ee-j-2*pe)<=qe?0:1;if(pe&&U0(Ue,rr,or,ar)===Te^Kr){var Ft=(j+ee)/2;Ue=$*Math.cos(Ft),rr=$*Math.sin(Ft),or=ar=null}}else Ue=rr=0;if(J){hr=J*Math.cos(ee-Me),dr=J*Math.sin(ee-Me),Sr=J*Math.cos(j+Me),pr=J*Math.sin(j+Me);var at=Math.abs(j-ee+2*Me)<=qe?0:1;if(Me&&U0(hr,dr,Sr,pr)===1-Te^at){var er=(j+ee)/2;hr=J*Math.cos(er),dr=J*Math.sin(er),Sr=pr=null}}else hr=dr=0;if(me>fe&&(ae=Math.min(Math.abs($-J)/2,+w.apply(this,arguments)))>.001){oe=J<$^Te?0:1;var Dr=ae,Pr=ae;if(me0?0:1}function V0(v,g,w,q,C){var S=v[0]-g[0],N=v[1]-g[1],E=(C?q:-q)/Math.sqrt(S*S+N*N),F=E*N,J=-E*S,$=v[0]+F,j=v[1]+J,ee=g[0]+F,me=g[1]+J,Te=($+ee)/2,ae=(j+me)/2,oe=ee-$,he=me-j,we=oe*oe+he*he,Me=w-q,pe=$*me-ee*j,Ue=(he<0?-1:1)*Math.sqrt(Math.max(0,Me*Me*we-pe*pe)),rr=(pe*he-oe*Ue)/we,or=(-pe*oe-he*Ue)/we,ar=(pe*he+oe*Ue)/we,hr=(-pe*oe+he*Ue)/we,dr=rr-Te,Sr=or-ae,pr=ar-Te,Mr=hr-ae;return dr*dr+Sr*Sr>pr*pr+Mr*Mr&&(rr=ar,or=hr),[[rr-F,or-J],[rr*w/Me,or*w/Me]]}function A4(){return!0}function k4(v){var g=nu,w=lc,q=A4,C=li,S=C.key,N=.7;function E(F){var J=[],$=[],j=-1,ee=F.length,me,Te=Nr(g),ae=Nr(w);function oe(){J.push("M",C(v($),N))}for(;++j1?v.join("L"):v+"Z"}function q4(v){return v.join("L")+"Z"}function AW(v){for(var g=0,w=v.length,q=v[0],C=[q[0],",",q[1]];++g1&&C.push("H",q[0]),C.join("")}function py(v){for(var g=0,w=v.length,q=v[0],C=[q[0],",",q[1]];++g1){E=g[1],S=v[F],F++,q+="C"+(C[0]+N[0])+","+(C[1]+N[1])+","+(S[0]-E[0])+","+(S[1]-E[1])+","+S[0]+","+S[1];for(var J=2;J9&&(S=w*3/Math.sqrt(S),N[E]=S*q,N[E+1]=S*C));for(E=-1;++E<=F;)S=(v[Math.min(F,E+1)][0]-v[Math.max(0,E-1)][0])/(6*(1+N[E]*N[E])),g.push([S||0,N[E]*S||0]);return g}function RW(v){return v.length<3?li(v):v[0]+W0(v,EW(v))}e.svg.line.radial=function(){var v=k4(D4);return v.radius=v.x,delete v.x,v.angle=v.y,delete v.y,v};function D4(v){for(var g,w=-1,q=v.length,C,S;++wqe)+",1 "+j}function J($,j,ee,me){return"Q 0,0 "+me}return S.radius=function($){return arguments.length?(w=Nr($),S):w},S.source=function($){return arguments.length?(v=Nr($),S):v},S.target=function($){return arguments.length?(g=Nr($),S):g},S.startAngle=function($){return arguments.length?(q=Nr($),S):q},S.endAngle=function($){return arguments.length?(C=Nr($),S):C},S};function zW(v){return v.radius}e.svg.diagonal=function(){var v=E4,g=R4,w=z4;function q(C,S){var N=v.call(this,C,S),E=g.call(this,C,S),F=(N.y+E.y)/2,J=[N,{x:N.x,y:F},{x:E.x,y:F},E];return J=J.map(w),"M"+J[0]+"C"+J[1]+" "+J[2]+" "+J[3]}return q.source=function(C){return arguments.length?(v=Nr(C),q):v},q.target=function(C){return arguments.length?(g=Nr(C),q):g},q.projection=function(C){return arguments.length?(w=C,q):w},q};function z4(v){return[v.x,v.y]}e.svg.diagonal.radial=function(){var v=e.svg.diagonal(),g=z4,w=v.projection;return v.projection=function(q){return arguments.length?w(NW(g=q)):g},v};function NW(v){return function(){var g=v.apply(this,arguments),w=g[0],q=g[1]-sr;return[w*Math.cos(q),w*Math.sin(q)]}}e.svg.symbol=function(){var v=IW,g=FW;function w(q,C){return(F4.get(v.call(this,q,C))||N4)(g.call(this,q,C))}return w.type=function(q){return arguments.length?(v=Nr(q),w):v},w.size=function(q){return arguments.length?(g=Nr(q),w):g},w};function FW(){return 64}function IW(){return"circle"}function N4(v){var g=Math.sqrt(v/qe);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var F4=e.map({circle:N4,cross:function(v){var g=Math.sqrt(v/5)/2;return"M"+-3*g+","+-g+"H"+-g+"V"+-3*g+"H"+g+"V"+-g+"H"+3*g+"V"+g+"H"+g+"V"+3*g+"H"+-g+"V"+g+"H"+-3*g+"Z"},diamond:function(v){var g=Math.sqrt(v/(2*I4)),w=g*I4;return"M0,"+-g+"L"+w+",0 0,"+g+" "+-w+",0Z"},square:function(v){var g=Math.sqrt(v)/2;return"M"+-g+","+-g+"L"+g+","+-g+" "+g+","+g+" "+-g+","+g+"Z"},"triangle-down":function(v){var g=Math.sqrt(v/X0),w=g*X0/2;return"M0,"+w+"L"+g+","+-w+" "+-g+","+-w+"Z"},"triangle-up":function(v){var g=Math.sqrt(v/X0),w=g*X0/2;return"M0,"+-w+"L"+g+","+w+" "+-g+","+w+"Z"}});e.svg.symbolTypes=F4.keys();var X0=Math.sqrt(3),I4=Math.tan(30*Ar);be.transition=function(v){for(var g=No||++O4,w=_y(v),q=[],C,S,N=J0||{time:Date.now(),ease:mV,delay:0,duration:250},E=-1,F=this.length;++E0;)j[--we].call(v,he);if(oe>=1)return N.event&&N.event.end.call(v,v.__data__,g),--S.count?delete S[q]:delete v[w],1}N||(E=C.time,F=E0(ee,0,E),N=S[q]={tween:new x,time:E,timer:F,delay:C.delay,duration:C.duration,ease:C.ease,index:g},C=null,++S.count)}e.svg.axis=function(){var v=e.scale.linear(),g=B4,w=6,q=6,C=3,S=[10],N=null,E;function F(J){J.each(function(){var $=e.select(this),j=this.__chart__||v,ee=this.__chart__=v.copy(),me=N==null?ee.ticks?ee.ticks.apply(ee,S):ee.domain():N,Te=E==null?ee.tickFormat?ee.tickFormat.apply(ee,S):U:E,ae=$.selectAll(".tick").data(me,ee),oe=ae.enter().insert("g",".domain").attr("class","tick").style("opacity",fe),he=e.transition(ae.exit()).style("opacity",fe).remove(),we=e.transition(ae.order()).style("opacity",1),Me=Math.max(w,0)+C,pe,Ue=B0(ee),rr=$.selectAll(".domain").data([0]),or=(rr.enter().append("path").attr("class","domain"),e.transition(rr));oe.append("line"),oe.append("text");var ar=oe.select("line"),hr=we.select("line"),dr=ae.select("text").text(Te),Sr=oe.select("text"),pr=we.select("text"),Mr=g==="top"||g==="left"?-1:1,Kr,Ft,at,er;if(g==="bottom"||g==="top"?(pe=BW,Kr="x",at="y",Ft="x2",er="y2",dr.attr("dy",Mr<0?"0em":".71em").style("text-anchor","middle"),or.attr("d","M"+Ue[0]+","+Mr*q+"V0H"+Ue[1]+"V"+Mr*q)):(pe=YW,Kr="y",at="x",Ft="y2",er="x2",dr.attr("dy",".32em").style("text-anchor",Mr<0?"end":"start"),or.attr("d","M"+Mr*q+","+Ue[0]+"H0V"+Ue[1]+"H"+Mr*q)),ar.attr(er,Mr*w),Sr.attr(at,Mr*Me),hr.attr(Ft,0).attr(er,Mr*w),pr.attr(Kr,0).attr(at,Mr*Me),ee.rangeBand){var Dr=ee,Pr=Dr.rangeBand()/2;j=ee=function(Qr){return Dr(Qr)+Pr}}else j.rangeBand?j=ee:he.call(pe,ee,j);oe.call(pe,j,ee),we.call(pe,ee,ee)})}return F.scale=function(J){return arguments.length?(v=J,F):v},F.orient=function(J){return arguments.length?(g=J in OW?J+"":B4,F):g},F.ticks=function(){return arguments.length?(S=t(arguments),F):S},F.tickValues=function(J){return arguments.length?(N=J,F):N},F.tickFormat=function(J){return arguments.length?(E=J,F):E},F.tickSize=function(J){var $=arguments.length;return $?(w=+J,q=+arguments[$-1],F):w},F.innerTickSize=function(J){return arguments.length?(w=+J,F):w},F.outerTickSize=function(J){return arguments.length?(q=+J,F):q},F.tickPadding=function(J){return arguments.length?(C=+J,F):C},F.tickSubdivide=function(){return arguments.length&&F},F};var B4="bottom",OW={top:1,right:1,bottom:1,left:1};function BW(v,g,w){v.attr("transform",function(q){var C=g(q);return"translate("+(isFinite(C)?C:w(q))+",0)"})}function YW(v,g,w){v.attr("transform",function(q){var C=g(q);return"translate(0,"+(isFinite(C)?C:w(q))+")"})}e.svg.brush=function(){var v=ce($,"brushstart","brush","brushend"),g=null,w=null,q=[0,0],C=[0,0],S,N,E=!0,F=!0,J=wy[0];function $(ae){ae.each(function(){var oe=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Te).on("touchstart.brush",Te),he=oe.selectAll(".background").data([0]);he.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),oe.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var we=oe.selectAll(".resize").data(J,U);we.exit().remove(),we.enter().append("g").attr("class",function(rr){return"resize "+rr}).style("cursor",function(rr){return GW[rr]}).append("rect").attr("x",function(rr){return/[ew]$/.test(rr)?-3:null}).attr("y",function(rr){return/^[ns]/.test(rr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),we.style("display",$.empty()?"none":null);var Me=e.transition(oe),pe=e.transition(he),Ue;g&&(Ue=B0(g),pe.attr("x",Ue[0]).attr("width",Ue[1]-Ue[0]),ee(Me)),w&&(Ue=B0(w),pe.attr("y",Ue[0]).attr("height",Ue[1]-Ue[0]),me(Me)),j(Me)})}$.event=function(ae){ae.each(function(){var oe=v.of(this,arguments),he={x:q,y:C,i:S,j:N},we=this.__chart__||he;this.__chart__=he,No?e.select(this).transition().each("start.brush",function(){S=we.i,N=we.j,q=we.x,C=we.y,oe({type:"brushstart"})}).tween("brush:brush",function(){var Me=H0(q,he.x),pe=H0(C,he.y);return S=N=null,function(Ue){q=he.x=Me(Ue),C=he.y=pe(Ue),oe({type:"brush",mode:"resize"})}}).each("end.brush",function(){S=he.i,N=he.j,oe({type:"brush",mode:"resize"}),oe({type:"brushend"})}):(oe({type:"brushstart"}),oe({type:"brush",mode:"resize"}),oe({type:"brushend"}))})};function j(ae){ae.selectAll(".resize").attr("transform",function(oe){return"translate("+q[+/e$/.test(oe)]+","+C[+/^s/.test(oe)]+")"})}function ee(ae){ae.select(".extent").attr("x",q[0]),ae.selectAll(".extent,.n>rect,.s>rect").attr("width",q[1]-q[0])}function me(ae){ae.select(".extent").attr("y",C[0]),ae.selectAll(".extent,.e>rect,.w>rect").attr("height",C[1]-C[0])}function Te(){var ae=this,oe=e.select(e.event.target),he=v.of(ae,arguments),we=e.select(ae),Me=oe.datum(),pe=!/^(n|s)$/.test(Me)&&g,Ue=!/^(e|w)$/.test(Me)&&w,rr=oe.classed("extent"),or=fr(ae),ar,hr=e.mouse(ae),dr,Sr=e.select(i(ae)).on("keydown.brush",Kr).on("keyup.brush",Ft);if(e.event.changedTouches?Sr.on("touchmove.brush",at).on("touchend.brush",Dr):Sr.on("mousemove.brush",at).on("mouseup.brush",Dr),we.interrupt().selectAll("*").interrupt(),rr)hr[0]=q[0]-hr[0],hr[1]=C[0]-hr[1];else if(Me){var pr=+/w$/.test(Me),Mr=+/^n/.test(Me);dr=[q[1-pr]-hr[0],C[1-Mr]-hr[1]],hr[0]=q[pr],hr[1]=C[Mr]}else e.event.altKey&&(ar=hr.slice());we.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",oe.style("cursor")),he({type:"brushstart"}),at();function Kr(){e.event.keyCode==32&&(rr||(ar=null,hr[0]-=q[1],hr[1]-=C[1],rr=2),re())}function Ft(){e.event.keyCode==32&&rr==2&&(hr[0]+=q[1],hr[1]+=C[1],rr=0,re())}function at(){var Pr=e.mouse(ae),Qr=!1;dr&&(Pr[0]+=dr[0],Pr[1]+=dr[1]),rr||(e.event.altKey?(ar||(ar=[(q[0]+q[1])/2,(C[0]+C[1])/2]),hr[0]=q[+(Pr[0]{(function(e,r){typeof rh=="object"&&typeof W4!="undefined"?r(rh):(e=e||self,r(e.d3=e.d3||{}))})(rh,function(e){"use strict";var r=new Date,t=new Date;function a(ie,Ae,Ce,cr){function tr(De){return ie(De=arguments.length===0?new Date:new Date(+De)),De}return tr.floor=function(De){return ie(De=new Date(+De)),De},tr.ceil=function(De){return ie(De=new Date(De-1)),Ae(De,1),ie(De),De},tr.round=function(De){var Le=tr(De),Ye=tr.ceil(De);return De-Le0))return Xe;do Xe.push(Ge=new Date(+De)),Ae(De,Ye),ie(De);while(Ge=Le)for(;ie(Le),!De(Le);)Le.setTime(Le-1)},function(Le,Ye){if(Le>=Le)if(Ye<0)for(;++Ye<=0;)for(;Ae(Le,-1),!De(Le););else for(;--Ye>=0;)for(;Ae(Le,1),!De(Le););})},Ce&&(tr.count=function(De,Le){return r.setTime(+De),t.setTime(+Le),ie(r),ie(t),Math.floor(Ce(r,t))},tr.every=function(De){return De=Math.floor(De),!isFinite(De)||!(De>0)?null:De>1?tr.filter(cr?function(Le){return cr(Le)%De===0}:function(Le){return tr.count(0,Le)%De===0}):tr}),tr}var n=a(function(){},function(ie,Ae){ie.setTime(+ie+Ae)},function(ie,Ae){return Ae-ie});n.every=function(ie){return ie=Math.floor(ie),!isFinite(ie)||!(ie>0)?null:ie>1?a(function(Ae){Ae.setTime(Math.floor(Ae/ie)*ie)},function(Ae,Ce){Ae.setTime(+Ae+Ce*ie)},function(Ae,Ce){return(Ce-Ae)/ie}):n};var i=n.range,l=1e3,o=6e4,s=36e5,u=864e5,f=6048e5,c=a(function(ie){ie.setTime(ie-ie.getMilliseconds())},function(ie,Ae){ie.setTime(+ie+Ae*l)},function(ie,Ae){return(Ae-ie)/l},function(ie){return ie.getUTCSeconds()}),h=c.range,d=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l)},function(ie,Ae){ie.setTime(+ie+Ae*o)},function(ie,Ae){return(Ae-ie)/o},function(ie){return ie.getMinutes()}),p=d.range,y=a(function(ie){ie.setTime(ie-ie.getMilliseconds()-ie.getSeconds()*l-ie.getMinutes()*o)},function(ie,Ae){ie.setTime(+ie+Ae*s)},function(ie,Ae){return(Ae-ie)/s},function(ie){return ie.getHours()}),m=y.range,b=a(function(ie){ie.setHours(0,0,0,0)},function(ie,Ae){ie.setDate(ie.getDate()+Ae)},function(ie,Ae){return(Ae-ie-(Ae.getTimezoneOffset()-ie.getTimezoneOffset())*o)/u},function(ie){return ie.getDate()-1}),_=b.range;function T(ie){return a(function(Ae){Ae.setDate(Ae.getDate()-(Ae.getDay()+7-ie)%7),Ae.setHours(0,0,0,0)},function(Ae,Ce){Ae.setDate(Ae.getDate()+Ce*7)},function(Ae,Ce){return(Ce-Ae-(Ce.getTimezoneOffset()-Ae.getTimezoneOffset())*o)/f})}var x=T(0),M=T(1),A=T(2),k=T(3),L=T(4),D=T(5),P=T(6),R=x.range,z=M.range,H=A.range,O=k.range,U=L.range,V=D.range,Y=P.range,I=a(function(ie){ie.setDate(1),ie.setHours(0,0,0,0)},function(ie,Ae){ie.setMonth(ie.getMonth()+Ae)},function(ie,Ae){return Ae.getMonth()-ie.getMonth()+(Ae.getFullYear()-ie.getFullYear())*12},function(ie){return ie.getMonth()}),G=I.range,Z=a(function(ie){ie.setMonth(0,1),ie.setHours(0,0,0,0)},function(ie,Ae){ie.setFullYear(ie.getFullYear()+Ae)},function(ie,Ae){return Ae.getFullYear()-ie.getFullYear()},function(ie){return ie.getFullYear()});Z.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(Ae){Ae.setFullYear(Math.floor(Ae.getFullYear()/ie)*ie),Ae.setMonth(0,1),Ae.setHours(0,0,0,0)},function(Ae,Ce){Ae.setFullYear(Ae.getFullYear()+Ce*ie)})};var K=Z.range,re=a(function(ie){ie.setUTCSeconds(0,0)},function(ie,Ae){ie.setTime(+ie+Ae*o)},function(ie,Ae){return(Ae-ie)/o},function(ie){return ie.getUTCMinutes()}),se=re.range,ce=a(function(ie){ie.setUTCMinutes(0,0,0)},function(ie,Ae){ie.setTime(+ie+Ae*s)},function(ie,Ae){return(Ae-ie)/s},function(ie){return ie.getUTCHours()}),le=ce.range,Q=a(function(ie){ie.setUTCHours(0,0,0,0)},function(ie,Ae){ie.setUTCDate(ie.getUTCDate()+Ae)},function(ie,Ae){return(Ae-ie)/u},function(ie){return ie.getUTCDate()-1}),ge=Q.range;function ue(ie){return a(function(Ae){Ae.setUTCDate(Ae.getUTCDate()-(Ae.getUTCDay()+7-ie)%7),Ae.setUTCHours(0,0,0,0)},function(Ae,Ce){Ae.setUTCDate(Ae.getUTCDate()+Ce*7)},function(Ae,Ce){return(Ce-Ae)/f})}var ke=ue(0),ve=ue(1),be=ue(2),W=ue(3),te=ue(4),X=ue(5),ye=ue(6),_e=ke.range,xe=ve.range,Ie=be.range,ze=W.range,Re=te.range,He=X.range,Be=ye.range,Fe=a(function(ie){ie.setUTCDate(1),ie.setUTCHours(0,0,0,0)},function(ie,Ae){ie.setUTCMonth(ie.getUTCMonth()+Ae)},function(ie,Ae){return Ae.getUTCMonth()-ie.getUTCMonth()+(Ae.getUTCFullYear()-ie.getUTCFullYear())*12},function(ie){return ie.getUTCMonth()}),Pe=Fe.range,Je=a(function(ie){ie.setUTCMonth(0,1),ie.setUTCHours(0,0,0,0)},function(ie,Ae){ie.setUTCFullYear(ie.getUTCFullYear()+Ae)},function(ie,Ae){return Ae.getUTCFullYear()-ie.getUTCFullYear()},function(ie){return ie.getUTCFullYear()});Je.every=function(ie){return!isFinite(ie=Math.floor(ie))||!(ie>0)?null:a(function(Ae){Ae.setUTCFullYear(Math.floor(Ae.getUTCFullYear()/ie)*ie),Ae.setUTCMonth(0,1),Ae.setUTCHours(0,0,0,0)},function(Ae,Ce){Ae.setUTCFullYear(Ae.getUTCFullYear()+Ce*ie)})};var We=Je.range;e.timeDay=b,e.timeDays=_,e.timeFriday=D,e.timeFridays=V,e.timeHour=y,e.timeHours=m,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=M,e.timeMondays=z,e.timeMonth=I,e.timeMonths=G,e.timeSaturday=P,e.timeSaturdays=Y,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=x,e.timeSundays=R,e.timeThursday=L,e.timeThursdays=U,e.timeTuesday=A,e.timeTuesdays=H,e.timeWednesday=k,e.timeWednesdays=O,e.timeWeek=x,e.timeWeeks=R,e.timeYear=Z,e.timeYears=K,e.utcDay=Q,e.utcDays=ge,e.utcFriday=X,e.utcFridays=He,e.utcHour=ce,e.utcHours=le,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=re,e.utcMinutes=se,e.utcMonday=ve,e.utcMondays=xe,e.utcMonth=Fe,e.utcMonths=Pe,e.utcSaturday=ye,e.utcSaturdays=Be,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=ke,e.utcSundays=_e,e.utcThursday=te,e.utcThursdays=Re,e.utcTuesday=be,e.utcTuesdays=Ie,e.utcWednesday=W,e.utcWednesdays=ze,e.utcWeek=ke,e.utcWeeks=_e,e.utcYear=Je,e.utcYears=We,Object.defineProperty(e,"__esModule",{value:!0})})});var cu=B((th,X4)=>{(function(e,r){typeof th=="object"&&typeof X4!="undefined"?r(th,Ay()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(th,function(e,r){"use strict";function t(ne){if(0<=ne.y&&ne.y<100){var fe=new Date(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L);return fe.setFullYear(ne.y),fe}return new Date(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L)}function a(ne){if(0<=ne.y&&ne.y<100){var fe=new Date(Date.UTC(-1,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L));return fe.setUTCFullYear(ne.y),fe}return new Date(Date.UTC(ne.y,ne.m,ne.d,ne.H,ne.M,ne.S,ne.L))}function n(ne,fe,Se){return{y:ne,m:fe,d:Se,H:0,M:0,S:0,L:0}}function i(ne){var fe=ne.dateTime,Se=ne.date,qe=ne.time,ir=ne.periods,vr=ne.days,sr=ne.shortDays,Ar=ne.months,Ur=ne.shortMonths,et=h(ir),Wr=d(ir),Nt=h(vr),oa=d(vr),Na=h(sr),sa=d(sr),Sn=h(Ar),Za=d(Ar),ua=h(Ur),Ja=d(Ur),gr={a:Do,A:Po,b:Sl,B:k0,c:null,d:I,e:I,f:se,H:G,I:Z,j:K,L:re,m:ce,M:le,p:q0,q:ac,Q:Le,s:Ye,S:Q,u:ge,U:ue,V:ke,w:ve,W:be,x:null,X:null,y:W,Y:te,Z:X,"%":De},ft={a:nc,A:ic,b:Ia,B:C0,c:null,d:ye,e:ye,f:Re,H:_e,I:xe,j:Ie,L:ze,m:He,M:Be,p:tu,q:au,Q:Le,s:Ye,S:Fe,u:Pe,U:Je,V:We,w:ie,W:Ae,x:null,X:null,y:Ce,Y:cr,Z:tr,"%":De},Xr={a:Fa,A:fa,b:ai,B:ni,c:Qt,d:L,e:L,f:O,H:P,I:P,j:D,L:H,m:k,M:R,p:_t,q:A,Q:V,s:Y,S:z,u:y,U:m,V:b,w:p,W:_,x:it,X:ma,y:x,Y:T,Z:M,"%":U};gr.x=bt(Se,gr),gr.X=bt(qe,gr),gr.c=bt(fe,gr),ft.x=bt(Se,ft),ft.X=bt(qe,ft),ft.c=bt(fe,ft);function bt(mr,Zr){return function(rt){var nr=[],ya=-1,vt=0,ga=mr.length,Nr,ii,Eo;for(rt instanceof Date||(rt=new Date(+rt));++ya53)return null;"w"in nr||(nr.w=1),"Z"in nr?(vt=a(n(nr.y,0,1)),ga=vt.getUTCDay(),vt=ga>4||ga===0?r.utcMonday.ceil(vt):r.utcMonday(vt),vt=r.utcDay.offset(vt,(nr.V-1)*7),nr.y=vt.getUTCFullYear(),nr.m=vt.getUTCMonth(),nr.d=vt.getUTCDate()+(nr.w+6)%7):(vt=t(n(nr.y,0,1)),ga=vt.getDay(),vt=ga>4||ga===0?r.timeMonday.ceil(vt):r.timeMonday(vt),vt=r.timeDay.offset(vt,(nr.V-1)*7),nr.y=vt.getFullYear(),nr.m=vt.getMonth(),nr.d=vt.getDate()+(nr.w+6)%7)}else("W"in nr||"U"in nr)&&("w"in nr||(nr.w="u"in nr?nr.u%7:"W"in nr?1:0),ga="Z"in nr?a(n(nr.y,0,1)).getUTCDay():t(n(nr.y,0,1)).getDay(),nr.m=0,nr.d="W"in nr?(nr.w+6)%7+nr.W*7-(ga+5)%7:nr.w+nr.U*7-(ga+6)%7);return"Z"in nr?(nr.H+=nr.Z/100|0,nr.M+=nr.Z%100,a(nr)):t(nr)}}function ct(mr,Zr,rt,nr){for(var ya=0,vt=Zr.length,ga=rt.length,Nr,ii;ya=ga)return-1;if(Nr=Zr.charCodeAt(ya++),Nr===37){if(Nr=Zr.charAt(ya++),ii=Xr[Nr in l?Zr.charAt(ya++):Nr],!ii||(nr=ii(mr,rt,nr))<0)return-1}else if(Nr!=rt.charCodeAt(nr++))return-1}return nr}function _t(mr,Zr,rt){var nr=et.exec(Zr.slice(rt));return nr?(mr.p=Wr[nr[0].toLowerCase()],rt+nr[0].length):-1}function Fa(mr,Zr,rt){var nr=Na.exec(Zr.slice(rt));return nr?(mr.w=sa[nr[0].toLowerCase()],rt+nr[0].length):-1}function fa(mr,Zr,rt){var nr=Nt.exec(Zr.slice(rt));return nr?(mr.w=oa[nr[0].toLowerCase()],rt+nr[0].length):-1}function ai(mr,Zr,rt){var nr=ua.exec(Zr.slice(rt));return nr?(mr.m=Ja[nr[0].toLowerCase()],rt+nr[0].length):-1}function ni(mr,Zr,rt){var nr=Sn.exec(Zr.slice(rt));return nr?(mr.m=Za[nr[0].toLowerCase()],rt+nr[0].length):-1}function Qt(mr,Zr,rt){return ct(mr,fe,Zr,rt)}function it(mr,Zr,rt){return ct(mr,Se,Zr,rt)}function ma(mr,Zr,rt){return ct(mr,qe,Zr,rt)}function Do(mr){return sr[mr.getDay()]}function Po(mr){return vr[mr.getDay()]}function Sl(mr){return Ur[mr.getMonth()]}function k0(mr){return Ar[mr.getMonth()]}function q0(mr){return ir[+(mr.getHours()>=12)]}function ac(mr){return 1+~~(mr.getMonth()/3)}function nc(mr){return sr[mr.getUTCDay()]}function ic(mr){return vr[mr.getUTCDay()]}function Ia(mr){return Ur[mr.getUTCMonth()]}function C0(mr){return Ar[mr.getUTCMonth()]}function tu(mr){return ir[+(mr.getUTCHours()>=12)]}function au(mr){return 1+~~(mr.getUTCMonth()/3)}return{format:function(mr){var Zr=bt(mr+="",gr);return Zr.toString=function(){return mr},Zr},parse:function(mr){var Zr=Lt(mr+="",!1);return Zr.toString=function(){return mr},Zr},utcFormat:function(mr){var Zr=bt(mr+="",ft);return Zr.toString=function(){return mr},Zr},utcParse:function(mr){var Zr=Lt(mr+="",!0);return Zr.toString=function(){return mr},Zr}}}var l={"-":"",_:" ",0:"0"},o=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(ne,fe,Se){var qe=ne<0?"-":"",ir=(qe?-ne:ne)+"",vr=ir.length;return qe+(vr68?1900:2e3),Se+qe[0].length):-1}function M(ne,fe,Se){var qe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(fe.slice(Se,Se+6));return qe?(ne.Z=qe[1]?0:-(qe[2]+(qe[3]||"00")),Se+qe[0].length):-1}function A(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+1));return qe?(ne.q=qe[0]*3-3,Se+qe[0].length):-1}function k(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.m=qe[0]-1,Se+qe[0].length):-1}function L(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.d=+qe[0],Se+qe[0].length):-1}function D(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+3));return qe?(ne.m=0,ne.d=+qe[0],Se+qe[0].length):-1}function P(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.H=+qe[0],Se+qe[0].length):-1}function R(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.M=+qe[0],Se+qe[0].length):-1}function z(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+2));return qe?(ne.S=+qe[0],Se+qe[0].length):-1}function H(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+3));return qe?(ne.L=+qe[0],Se+qe[0].length):-1}function O(ne,fe,Se){var qe=o.exec(fe.slice(Se,Se+6));return qe?(ne.L=Math.floor(qe[0]/1e3),Se+qe[0].length):-1}function U(ne,fe,Se){var qe=s.exec(fe.slice(Se,Se+1));return qe?Se+qe[0].length:-1}function V(ne,fe,Se){var qe=o.exec(fe.slice(Se));return qe?(ne.Q=+qe[0],Se+qe[0].length):-1}function Y(ne,fe,Se){var qe=o.exec(fe.slice(Se));return qe?(ne.s=+qe[0],Se+qe[0].length):-1}function I(ne,fe){return f(ne.getDate(),fe,2)}function G(ne,fe){return f(ne.getHours(),fe,2)}function Z(ne,fe){return f(ne.getHours()%12||12,fe,2)}function K(ne,fe){return f(1+r.timeDay.count(r.timeYear(ne),ne),fe,3)}function re(ne,fe){return f(ne.getMilliseconds(),fe,3)}function se(ne,fe){return re(ne,fe)+"000"}function ce(ne,fe){return f(ne.getMonth()+1,fe,2)}function le(ne,fe){return f(ne.getMinutes(),fe,2)}function Q(ne,fe){return f(ne.getSeconds(),fe,2)}function ge(ne){var fe=ne.getDay();return fe===0?7:fe}function ue(ne,fe){return f(r.timeSunday.count(r.timeYear(ne)-1,ne),fe,2)}function ke(ne,fe){var Se=ne.getDay();return ne=Se>=4||Se===0?r.timeThursday(ne):r.timeThursday.ceil(ne),f(r.timeThursday.count(r.timeYear(ne),ne)+(r.timeYear(ne).getDay()===4),fe,2)}function ve(ne){return ne.getDay()}function be(ne,fe){return f(r.timeMonday.count(r.timeYear(ne)-1,ne),fe,2)}function W(ne,fe){return f(ne.getFullYear()%100,fe,2)}function te(ne,fe){return f(ne.getFullYear()%1e4,fe,4)}function X(ne){var fe=ne.getTimezoneOffset();return(fe>0?"-":(fe*=-1,"+"))+f(fe/60|0,"0",2)+f(fe%60,"0",2)}function ye(ne,fe){return f(ne.getUTCDate(),fe,2)}function _e(ne,fe){return f(ne.getUTCHours(),fe,2)}function xe(ne,fe){return f(ne.getUTCHours()%12||12,fe,2)}function Ie(ne,fe){return f(1+r.utcDay.count(r.utcYear(ne),ne),fe,3)}function ze(ne,fe){return f(ne.getUTCMilliseconds(),fe,3)}function Re(ne,fe){return ze(ne,fe)+"000"}function He(ne,fe){return f(ne.getUTCMonth()+1,fe,2)}function Be(ne,fe){return f(ne.getUTCMinutes(),fe,2)}function Fe(ne,fe){return f(ne.getUTCSeconds(),fe,2)}function Pe(ne){var fe=ne.getUTCDay();return fe===0?7:fe}function Je(ne,fe){return f(r.utcSunday.count(r.utcYear(ne)-1,ne),fe,2)}function We(ne,fe){var Se=ne.getUTCDay();return ne=Se>=4||Se===0?r.utcThursday(ne):r.utcThursday.ceil(ne),f(r.utcThursday.count(r.utcYear(ne),ne)+(r.utcYear(ne).getUTCDay()===4),fe,2)}function ie(ne){return ne.getUTCDay()}function Ae(ne,fe){return f(r.utcMonday.count(r.utcYear(ne)-1,ne),fe,2)}function Ce(ne,fe){return f(ne.getUTCFullYear()%100,fe,2)}function cr(ne,fe){return f(ne.getUTCFullYear()%1e4,fe,4)}function tr(){return"+0000"}function De(){return"%"}function Le(ne){return+ne}function Ye(ne){return Math.floor(+ne/1e3)}var Xe;Ge({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ge(ne){return Xe=i(ne),e.timeFormat=Xe.format,e.timeParse=Xe.parse,e.utcFormat=Xe.utcFormat,e.utcParse=Xe.utcParse,Xe}var Oe="%Y-%m-%dT%H:%M:%S.%LZ";function $e(ne){return ne.toISOString()}var fr=Date.prototype.toISOString?$e:e.utcFormat(Oe);function lr(ne){var fe=new Date(ne);return isNaN(fe)?null:fe}var Ne=+new Date("2000-01-01T00:00:00.000Z")?lr:e.utcParse(Oe);e.isoFormat=fr,e.isoParse=Ne,e.timeFormatDefaultLocale=Ge,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var ky=B((ah,Z4)=>{(function(e,r){typeof ah=="object"&&typeof Z4!="undefined"?r(ah):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(ah,function(e){"use strict";function r(k){return Math.abs(k=Math.round(k))>=1e21?k.toLocaleString("en").replace(/,/g,""):k.toString(10)}function t(k,L){if((D=(k=L?k.toExponential(L-1):k.toExponential()).indexOf("e"))<0)return null;var D,P=k.slice(0,D);return[P.length>1?P[0]+P.slice(2):P,+k.slice(D+1)]}function a(k){return k=t(Math.abs(k)),k?k[1]:NaN}function n(k,L){return function(D,P){for(var R=D.length,z=[],H=0,O=k[0],U=0;R>0&&O>0&&(U+O+1>P&&(O=Math.max(1,P-U)),z.push(D.substring(R-=O,R+O)),!((U+=O+1)>P));)O=k[H=(H+1)%k.length];return z.reverse().join(L)}}function i(k){return function(L){return L.replace(/[0-9]/g,function(D){return k[+D]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(k){if(!(L=l.exec(k)))throw new Error("invalid format: "+k);var L;return new s({fill:L[1],align:L[2],sign:L[3],symbol:L[4],zero:L[5],width:L[6],comma:L[7],precision:L[8]&&L[8].slice(1),trim:L[9],type:L[10]})}o.prototype=s.prototype;function s(k){this.fill=k.fill===void 0?" ":k.fill+"",this.align=k.align===void 0?">":k.align+"",this.sign=k.sign===void 0?"-":k.sign+"",this.symbol=k.symbol===void 0?"":k.symbol+"",this.zero=!!k.zero,this.width=k.width===void 0?void 0:+k.width,this.comma=!!k.comma,this.precision=k.precision===void 0?void 0:+k.precision,this.trim=!!k.trim,this.type=k.type===void 0?"":k.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(k){e:for(var L=k.length,D=1,P=-1,R;D0&&(P=0);break}return P>0?k.slice(0,P)+k.slice(R+1):k}var f;function c(k,L){var D=t(k,L);if(!D)return k+"";var P=D[0],R=D[1],z=R-(f=Math.max(-8,Math.min(8,Math.floor(R/3)))*3)+1,H=P.length;return z===H?P:z>H?P+new Array(z-H+1).join("0"):z>0?P.slice(0,z)+"."+P.slice(z):"0."+new Array(1-z).join("0")+t(k,Math.max(0,L+z-1))[0]}function h(k,L){var D=t(k,L);if(!D)return k+"";var P=D[0],R=D[1];return R<0?"0."+new Array(-R).join("0")+P:P.length>R+1?P.slice(0,R+1)+"."+P.slice(R+1):P+new Array(R-P.length+2).join("0")}var d={"%":function(k,L){return(k*100).toFixed(L)},b:function(k){return Math.round(k).toString(2)},c:function(k){return k+""},d:r,e:function(k,L){return k.toExponential(L)},f:function(k,L){return k.toFixed(L)},g:function(k,L){return k.toPrecision(L)},o:function(k){return Math.round(k).toString(8)},p:function(k,L){return h(k*100,L)},r:h,s:c,X:function(k){return Math.round(k).toString(16).toUpperCase()},x:function(k){return Math.round(k).toString(16)}};function p(k){return k}var y=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function b(k){var L=k.grouping===void 0||k.thousands===void 0?p:n(y.call(k.grouping,Number),k.thousands+""),D=k.currency===void 0?"":k.currency[0]+"",P=k.currency===void 0?"":k.currency[1]+"",R=k.decimal===void 0?".":k.decimal+"",z=k.numerals===void 0?p:i(y.call(k.numerals,String)),H=k.percent===void 0?"%":k.percent+"",O=k.minus===void 0?"-":k.minus+"",U=k.nan===void 0?"NaN":k.nan+"";function V(I){I=o(I);var G=I.fill,Z=I.align,K=I.sign,re=I.symbol,se=I.zero,ce=I.width,le=I.comma,Q=I.precision,ge=I.trim,ue=I.type;ue==="n"?(le=!0,ue="g"):d[ue]||(Q===void 0&&(Q=12),ge=!0,ue="g"),(se||G==="0"&&Z==="=")&&(se=!0,G="0",Z="=");var ke=re==="$"?D:re==="#"&&/[boxX]/.test(ue)?"0"+ue.toLowerCase():"",ve=re==="$"?P:/[%p]/.test(ue)?H:"",be=d[ue],W=/[defgprs%]/.test(ue);Q=Q===void 0?6:/[gprs]/.test(ue)?Math.max(1,Math.min(21,Q)):Math.max(0,Math.min(20,Q));function te(X){var ye=ke,_e=ve,xe,Ie,ze;if(ue==="c")_e=be(X)+_e,X="";else{X=+X;var Re=X<0||1/X<0;if(X=isNaN(X)?U:be(Math.abs(X),Q),ge&&(X=u(X)),Re&&+X==0&&K!=="+"&&(Re=!1),ye=(Re?K==="("?K:O:K==="-"||K==="("?"":K)+ye,_e=(ue==="s"?m[8+f/3]:"")+_e+(Re&&K==="("?")":""),W){for(xe=-1,Ie=X.length;++xeze||ze>57){_e=(ze===46?R+X.slice(xe+1):X.slice(xe))+_e,X=X.slice(0,xe);break}}}le&&!se&&(X=L(X,1/0));var He=ye.length+X.length+_e.length,Be=He>1)+ye+X+_e+Be.slice(He);break;default:X=Be+ye+X+_e;break}return z(X)}return te.toString=function(){return I+""},te}function Y(I,G){var Z=V((I=o(I),I.type="f",I)),K=Math.max(-8,Math.min(8,Math.floor(a(G)/3)))*3,re=Math.pow(10,-K),se=m[8+K/3];return function(ce){return Z(re*ce)+se}}return{format:V,formatPrefix:Y}}var _;T({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function T(k){return _=b(k),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function x(k){return Math.max(0,-a(Math.abs(k)))}function M(k,L){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(L)/3)))*3-a(Math.abs(k)))}function A(k,L){return k=Math.abs(k),L=Math.abs(L)-k,Math.max(0,a(L)-a(k))+1}e.FormatSpecifier=s,e.formatDefaultLocale=T,e.formatLocale=b,e.formatSpecifier=o,e.precisionFixed=x,e.precisionPrefix=M,e.precisionRound=A,Object.defineProperty(e,"__esModule",{value:!0})})});var $4=B((Fpe,J4)=>{"use strict";J4.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var zr=B((Ipe,K4)=>{"use strict";var QW=$4();K4.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&QW(t))return!1}else if(r!=="number")return!1;return e-e<1}});var wt=B((Hpe,Q4)=>{"use strict";Q4.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var qy=B((nh,j4)=>{(function(e,r){typeof nh=="object"&&typeof j4!="undefined"?r(nh):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(nh,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(o[s]&3)<<4|o[s+1]>>4],f+=r[(o[s+1]&15)<<2|o[s+2]>>6],f+=r[o[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(l){var o=l.length*.75,s=l.length,u,f=0,c,h,d,p;l[l.length-1]==="="&&(o--,l[l.length-2]==="="&&o--);var y=new ArrayBuffer(o),m=new Uint8Array(y);for(u=0;u>4,m[f++]=(h&15)<<4|d>>2,m[f++]=(d&3)<<6|p&63;return y};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var El=B((Ope,e6)=>{"use strict";e6.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var gn=B(si=>{"use strict";var jW=qy().decode,eX=El(),Cy=Array.isArray,rX=ArrayBuffer,tX=DataView;function r6(e){return rX.isView(e)&&!(e instanceof tX)}si.isTypedArray=r6;function ih(e){return Cy(e)||r6(e)}si.isArrayOrTypedArray=ih;function aX(e){return!ih(e[0])}si.isArray1D=aX;si.ensureArray=function(e,r){return Cy(e)||(e=[]),e.length=r,e};var ca={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};ca.uint8c=ca.u1c;ca.uint8=ca.u1;ca.int8=ca.i1;ca.uint16=ca.u2;ca.int16=ca.i2;ca.uint32=ca.u4;ca.int32=ca.i4;ca.float32=ca.f4;ca.float64=ca.f8;function Ly(e){return e.constructor===ArrayBuffer}si.isArrayBuffer=Ly;si.decodeTypedArraySpec=function(e){var r=[],t=nX(e),a=t.dtype,n=ca[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,l=t.bdata;Ly(l)||(l=jW(l));var o=t.shape===void 0?[l.byteLength/i]:(""+t.shape).split(",");o.reverse();var s=o.length,u,f,c=+o[0],h=i*c,d=0;if(s===1)r=new n(l);else if(s===2)for(u=+o[1],f=0;f{"use strict";var a6=zr(),Dy=gn().isArrayOrTypedArray;o6.exports=function(r,t){if(a6(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,l,o;for(o=0;o{"use strict";var vu=lh(),uX=/^\w*$/,fX=0,s6=1,oh=2,u6=3,Ho=4;f6.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,l,o,s={};t&&t.length?(o=vu(r,t),l=o.get()):l=r,t=t||"";var u={};if(l)for(i=0;i2)return s[d]=s[d]|oh,c.set(h,null);if(f){for(i=d;i{"use strict";var cX=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,vX=/^[^\.\[\]]+$/;v6.exports=function(e,r){for(;r;){var t=e.match(cX);if(t)e=t[1];else if(e.match(vX))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var sh=B((Vpe,d6)=>{"use strict";var hX=zr();d6.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return hX(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var y6=B((Wpe,m6)=>{"use strict";var p6=gn().isArrayOrTypedArray,pc=El();m6.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(p6(n)&&p6(i)&&pc(n[0])){if(a==="customdata"||a==="ids")continue;for(var l=Math.min(n.length,i.length),o=0;o{"use strict";function dX(e,r){var t=e%r;return t<0?t+r:t}function pX(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}g6.exports={mod:dX,modHalf:pX}});var Rn=B((Zpe,uh)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,l=e.max,o=e.random;function s(W,te){if(W=W||"",te=te||{},W instanceof s)return W;if(!(this instanceof s))return new s(W,te);var X=u(W);this._originalInput=W,this._r=X.r,this._g=X.g,this._b=X.b,this._a=X.a,this._roundA=n(100*this._a)/100,this._format=te.format||X.format,this._gradientType=te.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=X.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var W=this.toRgb();return(W.r*299+W.g*587+W.b*114)/1e3},getLuminance:function(){var W=this.toRgb(),te,X,ye,_e,xe,Ie;return te=W.r/255,X=W.g/255,ye=W.b/255,te<=.03928?_e=te/12.92:_e=e.pow((te+.055)/1.055,2.4),X<=.03928?xe=X/12.92:xe=e.pow((X+.055)/1.055,2.4),ye<=.03928?Ie=ye/12.92:Ie=e.pow((ye+.055)/1.055,2.4),.2126*_e+.7152*xe+.0722*Ie},setAlpha:function(W){return this._a=I(W),this._roundA=n(100*this._a)/100,this},toHsv:function(){var W=d(this._r,this._g,this._b);return{h:W.h*360,s:W.s,v:W.v,a:this._a}},toHsvString:function(){var W=d(this._r,this._g,this._b),te=n(W.h*360),X=n(W.s*100),ye=n(W.v*100);return this._a==1?"hsv("+te+", "+X+"%, "+ye+"%)":"hsva("+te+", "+X+"%, "+ye+"%, "+this._roundA+")"},toHsl:function(){var W=c(this._r,this._g,this._b);return{h:W.h*360,s:W.s,l:W.l,a:this._a}},toHslString:function(){var W=c(this._r,this._g,this._b),te=n(W.h*360),X=n(W.s*100),ye=n(W.l*100);return this._a==1?"hsl("+te+", "+X+"%, "+ye+"%)":"hsla("+te+", "+X+"%, "+ye+"%, "+this._roundA+")"},toHex:function(W){return y(this._r,this._g,this._b,W)},toHexString:function(W){return"#"+this.toHex(W)},toHex8:function(W){return m(this._r,this._g,this._b,this._a,W)},toHex8String:function(W){return"#"+this.toHex8(W)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(G(this._r,255)*100)+"%",g:n(G(this._g,255)*100)+"%",b:n(G(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(G(this._r,255)*100)+"%, "+n(G(this._g,255)*100)+"%, "+n(G(this._b,255)*100)+"%)":"rgba("+n(G(this._r,255)*100)+"%, "+n(G(this._g,255)*100)+"%, "+n(G(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:V[y(this._r,this._g,this._b,!0)]||!1},toFilter:function(W){var te="#"+b(this._r,this._g,this._b,this._a),X=te,ye=this._gradientType?"GradientType = 1, ":"";if(W){var _e=s(W);X="#"+b(_e._r,_e._g,_e._b,_e._a)}return"progid:DXImageTransform.Microsoft.gradient("+ye+"startColorstr="+te+",endColorstr="+X+")"},toString:function(W){var te=!!W;W=W||this._format;var X=!1,ye=this._a<1&&this._a>=0,_e=!te&&ye&&(W==="hex"||W==="hex6"||W==="hex3"||W==="hex4"||W==="hex8"||W==="name");return _e?W==="name"&&this._a===0?this.toName():this.toRgbString():(W==="rgb"&&(X=this.toRgbString()),W==="prgb"&&(X=this.toPercentageRgbString()),(W==="hex"||W==="hex6")&&(X=this.toHexString()),W==="hex3"&&(X=this.toHexString(!0)),W==="hex4"&&(X=this.toHex8String(!0)),W==="hex8"&&(X=this.toHex8String()),W==="name"&&(X=this.toName()),W==="hsl"&&(X=this.toHslString()),W==="hsv"&&(X=this.toHsvString()),X||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(W,te){var X=W.apply(null,[this].concat([].slice.call(te)));return this._r=X._r,this._g=X._g,this._b=X._b,this.setAlpha(X._a),this},lighten:function(){return this._applyModification(M,arguments)},brighten:function(){return this._applyModification(A,arguments)},darken:function(){return this._applyModification(k,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(T,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(L,arguments)},_applyCombination:function(W,te){return W.apply(null,[this].concat([].slice.call(te)))},analogous:function(){return this._applyCombination(H,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(O,arguments)},splitcomplement:function(){return this._applyCombination(z,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(R,arguments)}},s.fromRatio=function(W,te){if(typeof W=="object"){var X={};for(var ye in W)W.hasOwnProperty(ye)&&(ye==="a"?X[ye]=W[ye]:X[ye]=le(W[ye]));W=X}return s(W,te)};function u(W){var te={r:0,g:0,b:0},X=1,ye=null,_e=null,xe=null,Ie=!1,ze=!1;return typeof W=="string"&&(W=ve(W)),typeof W=="object"&&(ke(W.r)&&ke(W.g)&&ke(W.b)?(te=f(W.r,W.g,W.b),Ie=!0,ze=String(W.r).substr(-1)==="%"?"prgb":"rgb"):ke(W.h)&&ke(W.s)&&ke(W.v)?(ye=le(W.s),_e=le(W.v),te=p(W.h,ye,_e),Ie=!0,ze="hsv"):ke(W.h)&&ke(W.s)&&ke(W.l)&&(ye=le(W.s),xe=le(W.l),te=h(W.h,ye,xe),Ie=!0,ze="hsl"),W.hasOwnProperty("a")&&(X=W.a)),X=I(X),{ok:Ie,format:W.format||ze,r:i(255,l(te.r,0)),g:i(255,l(te.g,0)),b:i(255,l(te.b,0)),a:X}}function f(W,te,X){return{r:G(W,255)*255,g:G(te,255)*255,b:G(X,255)*255}}function c(W,te,X){W=G(W,255),te=G(te,255),X=G(X,255);var ye=l(W,te,X),_e=i(W,te,X),xe,Ie,ze=(ye+_e)/2;if(ye==_e)xe=Ie=0;else{var Re=ye-_e;switch(Ie=ze>.5?Re/(2-ye-_e):Re/(ye+_e),ye){case W:xe=(te-X)/Re+(te1&&(Fe-=1),Fe<1/6?He+(Be-He)*6*Fe:Fe<1/2?Be:Fe<2/3?He+(Be-He)*(2/3-Fe)*6:He}if(te===0)ye=_e=xe=X;else{var ze=X<.5?X*(1+te):X+te-X*te,Re=2*X-ze;ye=Ie(Re,ze,W+1/3),_e=Ie(Re,ze,W),xe=Ie(Re,ze,W-1/3)}return{r:ye*255,g:_e*255,b:xe*255}}function d(W,te,X){W=G(W,255),te=G(te,255),X=G(X,255);var ye=l(W,te,X),_e=i(W,te,X),xe,Ie,ze=ye,Re=ye-_e;if(Ie=ye===0?0:Re/ye,ye==_e)xe=0;else{switch(ye){case W:xe=(te-X)/Re+(te>1)+720)%360;--te;)ye.h=(ye.h+_e)%360,xe.push(s(ye));return xe}function O(W,te){te=te||6;for(var X=s(W).toHsv(),ye=X.h,_e=X.s,xe=X.v,Ie=[],ze=1/te;te--;)Ie.push(s({h:ye,s:_e,v:xe})),xe=(xe+ze)%1;return Ie}s.mix=function(W,te,X){X=X===0?0:X||50;var ye=s(W).toRgb(),_e=s(te).toRgb(),xe=X/100,Ie={r:(_e.r-ye.r)*xe+ye.r,g:(_e.g-ye.g)*xe+ye.g,b:(_e.b-ye.b)*xe+ye.b,a:(_e.a-ye.a)*xe+ye.a};return s(Ie)},s.readability=function(W,te){var X=s(W),ye=s(te);return(e.max(X.getLuminance(),ye.getLuminance())+.05)/(e.min(X.getLuminance(),ye.getLuminance())+.05)},s.isReadable=function(W,te,X){var ye=s.readability(W,te),_e,xe;switch(xe=!1,_e=be(X),_e.level+_e.size){case"AAsmall":case"AAAlarge":xe=ye>=4.5;break;case"AAlarge":xe=ye>=3;break;case"AAAsmall":xe=ye>=7;break}return xe},s.mostReadable=function(W,te,X){var ye=null,_e=0,xe,Ie,ze,Re;X=X||{},Ie=X.includeFallbackColors,ze=X.level,Re=X.size;for(var He=0;He_e&&(_e=xe,ye=s(te[He]));return s.isReadable(W,ye,{level:ze,size:Re})||!Ie?ye:(X.includeFallbackColors=!1,s.mostReadable(W,["#fff","#000"],X))};var U=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},V=s.hexNames=Y(U);function Y(W){var te={};for(var X in W)W.hasOwnProperty(X)&&(te[W[X]]=X);return te}function I(W){return W=parseFloat(W),(isNaN(W)||W<0||W>1)&&(W=1),W}function G(W,te){re(W)&&(W="100%");var X=se(W);return W=i(te,l(0,parseFloat(W))),X&&(W=parseInt(W*te,10)/100),e.abs(W-te)<1e-6?1:W%te/parseFloat(te)}function Z(W){return i(1,l(0,W))}function K(W){return parseInt(W,16)}function re(W){return typeof W=="string"&&W.indexOf(".")!=-1&&parseFloat(W)===1}function se(W){return typeof W=="string"&&W.indexOf("%")!=-1}function ce(W){return W.length==1?"0"+W:""+W}function le(W){return W<=1&&(W=W*100+"%"),W}function Q(W){return e.round(parseFloat(W)*255).toString(16)}function ge(W){return K(W)/255}var ue=function(){var W="[-\\+]?\\d+%?",te="[-\\+]?\\d*\\.\\d+%?",X="(?:"+te+")|(?:"+W+")",ye="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?",_e="[\\s|\\(]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")[,|\\s]+("+X+")\\s*\\)?";return{CSS_UNIT:new RegExp(X),rgb:new RegExp("rgb"+ye),rgba:new RegExp("rgba"+_e),hsl:new RegExp("hsl"+ye),hsla:new RegExp("hsla"+_e),hsv:new RegExp("hsv"+ye),hsva:new RegExp("hsva"+_e),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function ke(W){return!!ue.CSS_UNIT.exec(W)}function ve(W){W=W.replace(r,"").replace(t,"").toLowerCase();var te=!1;if(U[W])W=U[W],te=!0;else if(W=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var X;return(X=ue.rgb.exec(W))?{r:X[1],g:X[2],b:X[3]}:(X=ue.rgba.exec(W))?{r:X[1],g:X[2],b:X[3],a:X[4]}:(X=ue.hsl.exec(W))?{h:X[1],s:X[2],l:X[3]}:(X=ue.hsla.exec(W))?{h:X[1],s:X[2],l:X[3],a:X[4]}:(X=ue.hsv.exec(W))?{h:X[1],s:X[2],v:X[3]}:(X=ue.hsva.exec(W))?{h:X[1],s:X[2],v:X[3],a:X[4]}:(X=ue.hex8.exec(W))?{r:K(X[1]),g:K(X[2]),b:K(X[3]),a:ge(X[4]),format:te?"name":"hex8"}:(X=ue.hex6.exec(W))?{r:K(X[1]),g:K(X[2]),b:K(X[3]),format:te?"name":"hex"}:(X=ue.hex4.exec(W))?{r:K(X[1]+""+X[1]),g:K(X[2]+""+X[2]),b:K(X[3]+""+X[3]),a:ge(X[4]+""+X[4]),format:te?"name":"hex8"}:(X=ue.hex3.exec(W))?{r:K(X[1]+""+X[1]),g:K(X[2]+""+X[2]),b:K(X[3]+""+X[3]),format:te?"name":"hex"}:!1}function be(W){var te,X;return W=W||{level:"AA",size:"small"},te=(W.level||"AA").toUpperCase(),X=(W.size||"small").toLowerCase(),te!=="AA"&&te!=="AAA"&&(te="AA"),X!=="small"&&X!=="large"&&(X="small"),{level:te,size:X}}typeof uh!="undefined"&&uh.exports?uh.exports=s:window.tinycolor=s})(Math)});var mt=B(gc=>{"use strict";var x6=El(),mc=Array.isArray;function mX(e,r){var t,a;for(t=0;t{"use strict";b6.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var xc=B((Kpe,_6)=>{"use strict";_6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var du=B((Qpe,M6)=>{"use strict";var w6=xc(),T6=jt(),Py=T6({editType:"none"});Py.family.dflt=w6.HOVERFONT;Py.size.dflt=w6.HOVERFONTSIZE;M6.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Py,grouptitlefont:T6({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var bc=B((jpe,A6)=>{"use strict";var yX=jt(),fh=du().hoverlabel,ch=mt().extendFlat;A6.exports={hoverlabel:{bgcolor:ch({},fh.bgcolor,{arrayOk:!0}),bordercolor:ch({},fh.bordercolor,{arrayOk:!0}),font:yX({arrayOk:!0,editType:"none"}),align:ch({},fh.align,{arrayOk:!0}),namelength:ch({},fh.namelength,{arrayOk:!0}),editType:"none"}}});var tn=B((eme,k6)=>{"use strict";var gX=jt(),xX=bc();k6.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:gX({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:xX.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var Oo=B((rme,L6)=>{"use strict";var bX=Rn(),vh={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},q6=vh.RdBu;function _X(e,r){if(r||(r=q6),!e)return r;function t(){try{e=vh[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),C6(e)?e:r}function C6(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";Bo.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Bo.defaultLine="#444";Bo.lightLine="#eee";Bo.background="#fff";Bo.borderLine="#BEC8D9";Bo.lightFraction=100*10/11});var xr=B((ame,S6)=>{"use strict";var an=Rn(),TX=zr(),MX=gn().isTypedArray,ea=S6.exports={},hh=zn();ea.defaults=hh.defaults;var AX=ea.defaultLine=hh.defaultLine;ea.lightLine=hh.lightLine;var Ry=ea.background=hh.background;ea.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};ea.rgb=function(e){return ea.tinyRGB(an(e))};ea.opacity=function(e){return e?an(e).getAlpha():0};ea.addOpacity=function(e,r){var t=an(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};ea.combine=function(e,r){var t=an(e).toRgb();if(t.a===1)return an(e).toRgbString();var a=an(r||Ry).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return an(i).toRgbString()};ea.interpolate=function(e,r,t){var a=an(e).toRgb(),n=an(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return an(i).toRgbString()};ea.contrast=function(e,r,t){var a=an(e);a.getAlpha()!==1&&(a=an(ea.combine(e,Ry)));var n=a.isDark()?r?a.lighten(r):Ry:t?a.darken(t):AX;return n.toString()};ea.stroke=function(e,r){var t=an(r);e.style({stroke:ea.tinyRGB(t),"stroke-opacity":t.getAlpha()})};ea.fill=function(e,r){var t=an(r);e.style({fill:ea.tinyRGB(t),"fill-opacity":t.getAlpha()})};ea.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var l=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+l+", "+a[3]+")":"rgb("+l+")"}});var pu=B((nme,D6)=>{"use strict";D6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var mu=B(P6=>{"use strict";P6.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var N6=B(nn=>{"use strict";var zy=zr(),E6=Rn(),R6=mt().extendFlat,kX=tn(),qX=Oo(),CX=xr(),LX=pu().DESELECTDIM,yu=lh(),z6=mu().counter,SX=hu().modHalf,Ni=gn().isArrayOrTypedArray,Rl=gn().isTypedArraySpec,zl=gn().decodeTypedArraySpec;nn.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Ni(e)?e:Rl(e)?zl(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}Rl(e)&&(e=zl(e)),e%1||!zy(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Rl(e)&&(e=zl(e)),E6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return E6(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(qX.get(e,t))}},angle:{coerceFunction:function(e,r,t){Rl(e)&&(e=zl(e)),e==="auto"?r.set("auto"):zy(e)?r.set(SX(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||z6(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!z6(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var F6={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},I6={};function H6(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),H6(a,r[t]))}}H6(F6,I6);O6.exports={configAttributes:F6,dfltConfig:I6}});var Fy=B((sme,B6)=>{"use strict";var Ny=kr(),DX=zr(),_c=[];B6.exports=function(e,r){if(_c.indexOf(e)!==-1)return;_c.push(e);var t=1e3;DX(r)?t=r:r==="long"&&(t=3e3);var a=Ny.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(_c);function i(l){l.duration(700).style("opacity",0).each("end",function(o){var s=_c.indexOf(o);s!==-1&&_c.splice(s,1),Ny.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var o=Ny.select(this);o.append("button").classed("notifier-close",!0).html("×").on("click",function(){o.transition().call(i)});for(var s=o.append("p"),u=l.split(//g),f=0;f{"use strict";var gu=Yo().dfltConfig,Iy=Fy(),Hy=Y6.exports={};Hy.log=function(){var e;if(gu.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};Hy.warn=function(){var e;if(gu.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};Hy.error=function(){var e;if(gu.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var ph=B((fme,G6)=>{"use strict";G6.exports=function(){}});var Oy=B((cme,U6)=>{"use strict";U6.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{V6.exports=PX;function PX(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Z6=B((hme,X6)=>{X6.exports=EX;function EX(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var $6=B((dme,J6)=>{J6.exports=RX;function RX(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var By=B((pme,K6)=>{K6.exports=zX;function zX(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var j6=B((mme,Q6)=>{Q6.exports=NX;function NX(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],l=r[7],o=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=l,e[14]=o}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var r7=B((yme,e7)=>{e7.exports=FX;function FX(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],c=r[9],h=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15],_=t*o-a*l,T=t*s-n*l,x=t*u-i*l,M=a*s-n*o,A=a*u-i*o,k=n*u-i*s,L=f*y-c*p,D=f*m-h*p,P=f*b-d*p,R=c*m-h*y,z=c*b-d*y,H=h*b-d*m,O=_*H-T*z+x*R+M*P-A*D+k*L;return O?(O=1/O,e[0]=(o*H-s*z+u*R)*O,e[1]=(n*z-a*H-i*R)*O,e[2]=(y*k-m*A+b*M)*O,e[3]=(h*A-c*k-d*M)*O,e[4]=(s*P-l*H-u*D)*O,e[5]=(t*H-n*P+i*D)*O,e[6]=(m*x-p*k-b*T)*O,e[7]=(f*k-h*x+d*T)*O,e[8]=(l*z-o*P+u*L)*O,e[9]=(a*P-t*z-i*L)*O,e[10]=(p*A-y*x+b*_)*O,e[11]=(c*x-f*A-d*_)*O,e[12]=(o*D-l*R-s*L)*O,e[13]=(t*R-a*D+n*L)*O,e[14]=(y*T-p*M-m*_)*O,e[15]=(f*M-c*T+h*_)*O,e):null}});var a7=B((gme,t7)=>{t7.exports=IX;function IX(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=r[4],o=r[5],s=r[6],u=r[7],f=r[8],c=r[9],h=r[10],d=r[11],p=r[12],y=r[13],m=r[14],b=r[15];return e[0]=o*(h*b-d*m)-c*(s*b-u*m)+y*(s*d-u*h),e[1]=-(a*(h*b-d*m)-c*(n*b-i*m)+y*(n*d-i*h)),e[2]=a*(s*b-u*m)-o*(n*b-i*m)+y*(n*u-i*s),e[3]=-(a*(s*d-u*h)-o*(n*d-i*h)+c*(n*u-i*s)),e[4]=-(l*(h*b-d*m)-f*(s*b-u*m)+p*(s*d-u*h)),e[5]=t*(h*b-d*m)-f*(n*b-i*m)+p*(n*d-i*h),e[6]=-(t*(s*b-u*m)-l*(n*b-i*m)+p*(n*u-i*s)),e[7]=t*(s*d-u*h)-l*(n*d-i*h)+f*(n*u-i*s),e[8]=l*(c*b-d*y)-f*(o*b-u*y)+p*(o*d-u*c),e[9]=-(t*(c*b-d*y)-f*(a*b-i*y)+p*(a*d-i*c)),e[10]=t*(o*b-u*y)-l*(a*b-i*y)+p*(a*u-i*o),e[11]=-(t*(o*d-u*c)-l*(a*d-i*c)+f*(a*u-i*o)),e[12]=-(l*(c*m-h*y)-f*(o*m-s*y)+p*(o*h-s*c)),e[13]=t*(c*m-h*y)-f*(a*m-n*y)+p*(a*h-n*c),e[14]=-(t*(o*m-s*y)-l*(a*m-n*y)+p*(a*s-n*o)),e[15]=t*(o*h-s*c)-l*(a*h-n*c)+f*(a*s-n*o),e}});var i7=B((xme,n7)=>{n7.exports=HX;function HX(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],l=e[5],o=e[6],s=e[7],u=e[8],f=e[9],c=e[10],h=e[11],d=e[12],p=e[13],y=e[14],m=e[15],b=r*l-t*i,_=r*o-a*i,T=r*s-n*i,x=t*o-a*l,M=t*s-n*l,A=a*s-n*o,k=u*p-f*d,L=u*y-c*d,D=u*m-h*d,P=f*y-c*p,R=f*m-h*p,z=c*m-h*y;return b*z-_*R+T*P+x*D-M*L+A*k}});var o7=B((bme,l7)=>{l7.exports=OX;function OX(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=r[4],s=r[5],u=r[6],f=r[7],c=r[8],h=r[9],d=r[10],p=r[11],y=r[12],m=r[13],b=r[14],_=r[15],T=t[0],x=t[1],M=t[2],A=t[3];return e[0]=T*a+x*o+M*c+A*y,e[1]=T*n+x*s+M*h+A*m,e[2]=T*i+x*u+M*d+A*b,e[3]=T*l+x*f+M*p+A*_,T=t[4],x=t[5],M=t[6],A=t[7],e[4]=T*a+x*o+M*c+A*y,e[5]=T*n+x*s+M*h+A*m,e[6]=T*i+x*u+M*d+A*b,e[7]=T*l+x*f+M*p+A*_,T=t[8],x=t[9],M=t[10],A=t[11],e[8]=T*a+x*o+M*c+A*y,e[9]=T*n+x*s+M*h+A*m,e[10]=T*i+x*u+M*d+A*b,e[11]=T*l+x*f+M*p+A*_,T=t[12],x=t[13],M=t[14],A=t[15],e[12]=T*a+x*o+M*c+A*y,e[13]=T*n+x*s+M*h+A*m,e[14]=T*i+x*u+M*d+A*b,e[15]=T*l+x*f+M*p+A*_,e}});var u7=B((_me,s7)=>{s7.exports=BX;function BX(e,r,t){var a=t[0],n=t[1],i=t[2],l,o,s,u,f,c,h,d,p,y,m,b;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(l=r[0],o=r[1],s=r[2],u=r[3],f=r[4],c=r[5],h=r[6],d=r[7],p=r[8],y=r[9],m=r[10],b=r[11],e[0]=l,e[1]=o,e[2]=s,e[3]=u,e[4]=f,e[5]=c,e[6]=h,e[7]=d,e[8]=p,e[9]=y,e[10]=m,e[11]=b,e[12]=l*a+f*n+p*i+r[12],e[13]=o*a+c*n+y*i+r[13],e[14]=s*a+h*n+m*i+r[14],e[15]=u*a+d*n+b*i+r[15]),e}});var c7=B((wme,f7)=>{f7.exports=YX;function YX(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var h7=B((Tme,v7)=>{v7.exports=GX;function GX(e,r,t,a){var n=a[0],i=a[1],l=a[2],o=Math.sqrt(n*n+i*i+l*l),s,u,f,c,h,d,p,y,m,b,_,T,x,M,A,k,L,D,P,R,z,H,O,U;return Math.abs(o)<1e-6?null:(o=1/o,n*=o,i*=o,l*=o,s=Math.sin(t),u=Math.cos(t),f=1-u,c=r[0],h=r[1],d=r[2],p=r[3],y=r[4],m=r[5],b=r[6],_=r[7],T=r[8],x=r[9],M=r[10],A=r[11],k=n*n*f+u,L=i*n*f+l*s,D=l*n*f-i*s,P=n*i*f-l*s,R=i*i*f+u,z=l*i*f+n*s,H=n*l*f+i*s,O=i*l*f-n*s,U=l*l*f+u,e[0]=c*k+y*L+T*D,e[1]=h*k+m*L+x*D,e[2]=d*k+b*L+M*D,e[3]=p*k+_*L+A*D,e[4]=c*P+y*R+T*z,e[5]=h*P+m*R+x*z,e[6]=d*P+b*R+M*z,e[7]=p*P+_*R+A*z,e[8]=c*H+y*O+T*U,e[9]=h*H+m*O+x*U,e[10]=d*H+b*O+M*U,e[11]=p*H+_*O+A*U,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var p7=B((Mme,d7)=>{d7.exports=UX;function UX(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],l=r[5],o=r[6],s=r[7],u=r[8],f=r[9],c=r[10],h=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=l*n+f*a,e[6]=o*n+c*a,e[7]=s*n+h*a,e[8]=u*n-i*a,e[9]=f*n-l*a,e[10]=c*n-o*a,e[11]=h*n-s*a,e}});var y7=B((Ame,m7)=>{m7.exports=VX;function VX(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[8],f=r[9],c=r[10],h=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=l*n-f*a,e[2]=o*n-c*a,e[3]=s*n-h*a,e[8]=i*a+u*n,e[9]=l*a+f*n,e[10]=o*a+c*n,e[11]=s*a+h*n,e}});var x7=B((kme,g7)=>{g7.exports=WX;function WX(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],l=r[1],o=r[2],s=r[3],u=r[4],f=r[5],c=r[6],h=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=l*n+f*a,e[2]=o*n+c*a,e[3]=s*n+h*a,e[4]=u*n-i*a,e[5]=f*n-l*a,e[6]=c*n-o*a,e[7]=h*n-s*a,e}});var _7=B((qme,b7)=>{b7.exports=XX;function XX(e,r,t){var a,n,i,l=t[0],o=t[1],s=t[2],u=Math.sqrt(l*l+o*o+s*s);return Math.abs(u)<1e-6?null:(u=1/u,l*=u,o*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=l*l*i+n,e[1]=o*l*i+s*a,e[2]=s*l*i-o*a,e[3]=0,e[4]=l*o*i-s*a,e[5]=o*o*i+n,e[6]=s*o*i+l*a,e[7]=0,e[8]=l*s*i+o*a,e[9]=o*s*i-l*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var T7=B((Cme,w7)=>{w7.exports=ZX;function ZX(e,r,t){var a=r[0],n=r[1],i=r[2],l=r[3],o=a+a,s=n+n,u=i+i,f=a*o,c=a*s,h=a*u,d=n*s,p=n*u,y=i*u,m=l*o,b=l*s,_=l*u;return e[0]=1-(d+y),e[1]=c+_,e[2]=h-b,e[3]=0,e[4]=c-_,e[5]=1-(f+y),e[6]=p+m,e[7]=0,e[8]=h+b,e[9]=p-m,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var A7=B((Lme,M7)=>{M7.exports=JX;function JX(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var q7=B((Sme,k7)=>{k7.exports=$X;function $X(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var L7=B((Dme,C7)=>{C7.exports=KX;function KX(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var D7=B((Pme,S7)=>{S7.exports=QX;function QX(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var E7=B((Eme,P7)=>{P7.exports=jX;function jX(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Yy=B((Rme,R7)=>{R7.exports=eZ;function eZ(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],l=t+t,o=a+a,s=n+n,u=t*l,f=a*l,c=a*o,h=n*l,d=n*o,p=n*s,y=i*l,m=i*o,b=i*s;return e[0]=1-c-p,e[1]=f+b,e[2]=h-m,e[3]=0,e[4]=f-b,e[5]=1-u-p,e[6]=d+y,e[7]=0,e[8]=h+m,e[9]=d-y,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var N7=B((zme,z7)=>{z7.exports=rZ;function rZ(e,r,t,a,n,i,l){var o=1/(t-r),s=1/(n-a),u=1/(i-l);return e[0]=i*2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*o,e[9]=(n+a)*s,e[10]=(l+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=l*i*2*u,e[15]=0,e}});var I7=B((Nme,F7)=>{F7.exports=tZ;function tZ(e,r,t,a,n){var i=1/Math.tan(r/2),l=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*l,e[15]=0,e}});var O7=B((Fme,H7)=>{H7.exports=aZ;function aZ(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),l=Math.tan(r.leftDegrees*Math.PI/180),o=Math.tan(r.rightDegrees*Math.PI/180),s=2/(l+o),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((l-o)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var Y7=B((Ime,B7)=>{B7.exports=nZ;function nZ(e,r,t,a,n,i,l){var o=1/(r-t),s=1/(a-n),u=1/(i-l);return e[0]=-2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*o,e[13]=(n+a)*s,e[14]=(l+i)*u,e[15]=1,e}});var U7=B((Hme,G7)=>{var iZ=By();G7.exports=lZ;function lZ(e,r,t,a){var n,i,l,o,s,u,f,c,h,d,p=r[0],y=r[1],m=r[2],b=a[0],_=a[1],T=a[2],x=t[0],M=t[1],A=t[2];return Math.abs(p-x)<1e-6&&Math.abs(y-M)<1e-6&&Math.abs(m-A)<1e-6?iZ(e):(f=p-x,c=y-M,h=m-A,d=1/Math.sqrt(f*f+c*c+h*h),f*=d,c*=d,h*=d,n=_*h-T*c,i=T*f-b*h,l=b*c-_*f,d=Math.sqrt(n*n+i*i+l*l),d?(d=1/d,n*=d,i*=d,l*=d):(n=0,i=0,l=0),o=c*l-h*i,s=h*n-f*l,u=f*i-c*n,d=Math.sqrt(o*o+s*s+u*u),d?(d=1/d,o*=d,s*=d,u*=d):(o=0,s=0,u=0),e[0]=n,e[1]=o,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=l,e[9]=u,e[10]=h,e[11]=0,e[12]=-(n*p+i*y+l*m),e[13]=-(o*p+s*y+u*m),e[14]=-(f*p+c*y+h*m),e[15]=1,e)}});var W7=B((Ome,V7)=>{V7.exports=oZ;function oZ(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Gy=B((Bme,X7)=>{X7.exports={create:W6(),clone:Z6(),copy:$6(),identity:By(),transpose:j6(),invert:r7(),adjoint:a7(),determinant:i7(),multiply:o7(),translate:u7(),scale:c7(),rotate:h7(),rotateX:p7(),rotateY:y7(),rotateZ:x7(),fromRotation:_7(),fromRotationTranslation:T7(),fromScaling:A7(),fromTranslation:q7(),fromXRotation:L7(),fromYRotation:D7(),fromZRotation:E7(),fromQuat:Yy(),frustum:N7(),perspective:I7(),perspectiveFromFieldOfView:O7(),ortho:Y7(),lookAt:U7(),str:W7()}});var mh=B(It=>{"use strict";var sZ=Gy();It.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var uZ=kr(),Z7=Go(),fZ=mh(),cZ=Gy();function vZ(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function hZ(e){var r=uZ.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function J7(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function dZ(e,r){$7("global",e,r)}function $7(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):Z7.warn("addStyleRule failed"):Z7.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function pZ(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&J7(t)}function mZ(e,r,t,a,n,i){var l=a.split(":"),o=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[l[0]]=l[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[l[0]]=l[1]:f.style[o[0]]=o[1])}),u.setAttribute(s,!0))})}function yZ(e){var r=Q7(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=K7(a);if(n){var i=fZ.convertCssMatrix(n);t=cZ.multiply(t,t,i)}}),t}function K7(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function Q7(e){for(var r=[];gZ(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function gZ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function xZ(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}j7.exports={getGraphDiv:vZ,isPlotDiv:hZ,removeElement:J7,addStyleRule:dZ,addRelatedStyleRule:$7,deleteRelatedStyleRule:pZ,setStyleOnHover:mZ,getFullTransformMatrix:yZ,getElementTransformMatrix:K7,getElementAndAncestors:Q7,equalDomRects:xZ}});var Tc=B((Ume,ew)=>{"use strict";ew.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var ui=B((Vme,ow)=>{"use strict";var tw=mt().extendFlat,bZ=El(),aw={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},nw={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},_Z=aw.flags.slice().concat(["fullReplot"]),wZ=nw.flags.slice().concat("layoutReplot");ow.exports={traces:aw,layout:nw,traceFlags:function(){return rw(_Z)},layoutFlags:function(){return rw(wZ)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";Uy.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Uy.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Vy=B((Xme,sw)=>{"use strict";sw.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var _a=B(yh=>{"use strict";var uw=Vy(),Zme=uw.FORMAT_LINK,Jme=uw.DATE_FORMAT_LINK;function Wy(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function Nl(e,r){return r?r.d2l(e):e}function fw(e,r){return r?r.l2d(e):e}function TZ(e){return e.x0}function MZ(e){return e.x1}function AZ(e){return e.y0}function kZ(e){return e.y1}function cw(e){return e.x0shift||0}function vw(e){return e.x1shift||0}function hw(e){return e.y0shift||0}function dw(e){return e.y1shift||0}function gh(e,r){return Nl(e.x1,r)+vw(e)-Nl(e.x0,r)-cw(e)}function xh(e,r,t){return Nl(e.y1,t)+dw(e)-Nl(e.y0,t)-hw(e)}function qZ(e,r){return Math.abs(gh(e,r))}function CZ(e,r,t){return Math.abs(xh(e,r,t))}function LZ(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(gh(e,r),2)+Math.pow(xh(e,r,t),2))}function SZ(e,r){return fw((Nl(e.x1,r)+vw(e)+Nl(e.x0,r)+cw(e))/2,r)}function DZ(e,r,t){return fw((Nl(e.y1,t)+dw(e)+Nl(e.y0,t)+hw(e))/2,t)}function PZ(e,r,t){return e.type!=="line"?void 0:xh(e,r,t)/gh(e,r)}pw.exports={x0:TZ,x1:MZ,y0:AZ,y1:kZ,slope:PZ,dx:gh,dy:xh,width:qZ,height:CZ,length:LZ,xcenter:SZ,ycenter:DZ}});var gw=B((Qme,yw)=>{"use strict";var EZ=ui().overrideAll,Uo=tn(),mw=jt(),RZ=fi().dash,Fl=mt().extendFlat,zZ=_a().shapeTexttemplateAttrs,NZ=bh();yw.exports=EZ({newshape:{visible:Fl({},Uo.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Fl({},Uo.legend,{}),legendgroup:Fl({},Uo.legendgroup,{}),legendgrouptitle:{text:Fl({},Uo.legendgrouptitle.text,{}),font:mw({})},legendrank:Fl({},Uo.legendrank,{}),legendwidth:Fl({},Uo.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Fl({},RZ,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Fl({},Uo.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:zZ({newshape:!0},{keys:Object.keys(NZ)}),font:mw({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var bw=B((jme,xw)=>{"use strict";var FZ=fi().dash,IZ=mt().extendFlat;xw.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:IZ({},FZ,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var _h=B((eye,_w)=>{"use strict";_w.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var xu=B((rye,Aw)=>{"use strict";var Xy=jt(),HZ=Tc(),wh=zn(),ww=gw(),Tw=bw(),OZ=_h(),Mw=mt().extendFlat,Th=Xy({editType:"calc"});Th.family.dflt='"Open Sans", verdana, arial, sans-serif';Th.size.dflt=12;Th.color.dflt=wh.defaultLine;Aw.exports={font:Th,title:{text:{valType:"string",editType:"layoutstyle"},font:Xy({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Xy({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Mw(OZ({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:wh.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:wh.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:wh.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:ww.newshape,activeshape:ww.activeshape,newselection:Tw.newselection,activeselection:Tw.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Mw({},HZ.transition,{editType:"none"})}});var kw=nt(()=>{});var BZ={};var qw=nt(()=>{kw()});var yr=B(Fr=>{"use strict";var bu=Go(),Cw=ph(),Lw=Oy(),YZ=El(),GZ=wc().addStyleRule,Sw=mt(),UZ=tn(),VZ=xu(),WZ=Sw.extendFlat,Zy=Sw.extendDeepAll;Fr.modules={};Fr.allCategories={};Fr.allTypes=[];Fr.subplotsRegistry={};Fr.componentsRegistry={};Fr.layoutArrayContainers=[];Fr.layoutArrayRegexes=[];Fr.traceLayoutAttributes={};Fr.localeRegistry={};Fr.apiMethodRegistry={};Fr.collectableSubplotTypes=null;Fr.register=function(r){if(Fr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var QZ=cu().timeFormat,Bw=zr(),Jy=Go(),Hl=hu().mod,Tu=wt(),Nn=Tu.BADNUM,ln=Tu.ONEDAY,Mc=Tu.ONEHOUR,Il=Tu.ONEMIN,wu=Tu.ONESEC,Ac=Tu.EPOCHJD,il=yr(),zw=cu().utcFormat,jZ=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,eJ=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Nw=new Date().getFullYear()-70;function ll(e){return e&&il.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Ht.dateTick0=function(e,r){var t=rJ(e,!!r);if(r<2)return t;var a=Ht.dateTime2ms(t,e);return a+=ln*(r-1),Ht.ms2DateTime(a,0,e)};function rJ(e,r){return ll(e)?r?il.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:il.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Ht.dfltRange=function(e){return ll(e)?il.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Ht.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Ah,kh;Ht.dateTime2ms=function(e,r){if(Ht.isJSDate(e)){var t=e.getTimezoneOffset()*Il,a=(e.getUTCMinutes()-e.getMinutes())*Il+(e.getUTCSeconds()-e.getSeconds())*wu+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Il;t=t-n/2+Hl(a-t+n/2,n)}return e=Number(e)-t,e>=Ah&&e<=kh?e:Nn}if(typeof e!="string"&&typeof e!="number")return Nn;e=String(e);var i=ll(r),l=e.charAt(0);i&&(l==="G"||l==="g")&&(e=e.substr(1),r="");var o=i&&r.substr(0,7)==="chinese",s=e.match(o?eJ:jZ);if(!s)return Nn;var u=s[1],f=s[3]||"1",c=Number(s[5]||1),h=Number(s[7]||0),d=Number(s[9]||0),p=Number(s[11]||0);if(i){if(u.length===2)return Nn;u=Number(u);var y;try{var m=il.getComponentMethod("calendars","getCal")(r);if(o){var b=f.charAt(f.length-1)==="i";f=parseInt(f,10),y=m.newDate(u,m.toMonthIndex(u,f,b),c)}else y=m.newDate(u,Number(f),c)}catch(T){return Nn}return y?(y.toJD()-Ac)*ln+h*Mc+d*Il+p*wu:Nn}u.length===2?u=(Number(u)+2e3-Nw)%100+Nw:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,h,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?Nn:_.getTime()+p*wu};Ah=Ht.MIN_MS=Ht.dateTime2ms("-9999");kh=Ht.MAX_MS=Ht.dateTime2ms("9999-12-31 23:59:59.9999");Ht.isDateTime=function(e,r){return Ht.dateTime2ms(e,r)!==Nn};function _u(e,r){return String(e+Math.pow(10,r)).substr(1)}var Mh=90*ln,Fw=3*Mc,Iw=5*Il;Ht.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Ah&&e<=kh))return Nn;r||(r=0);var a=Math.floor(Hl(e+.05,1)*10),n=Math.round(e-a/10),i,l,o,s,u,f;if(ll(t)){var c=Math.floor(n/ln)+Ac,h=Math.floor(Hl(e,ln));try{i=il.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=zw("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;l=r=Ah+ln&&e<=kh-ln))return Nn;var r=Math.floor(Hl(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=QZ("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),l=t.getSeconds(),o=t.getUTCMilliseconds()*10+r;return Yw(a,n,i,l,o)};function Yw(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+_u(r,2)+":"+_u(t,2),(a||n)&&(e+=":"+_u(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+_u(n,i)}return e}Ht.cleanDate=function(e,r,t){if(e===Nn)return r;if(Ht.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(ll(t))return Jy.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Ht.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Ht.isDateTime(e,t))return Jy.error("unrecognized date",e),r;return e};var tJ=/%\d?f/g,aJ=/%h/g,nJ={1:"1",2:"1",3:"2",4:"2"};function Hw(e,r,t,a){e=e.replace(tJ,function(i){var l=Math.min(+i.charAt(1)||6,6),o=(r/1e3%1+2).toFixed(l).substr(2).replace(/0+$/,"")||"0";return o});var n=new Date(Math.floor(r+.05));if(e=e.replace(aJ,function(){return nJ[t("%q")(n)]}),ll(a))try{e=il.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var iJ=[59,59.9,59.99,59.999,59.9999];function lJ(e,r){var t=Hl(e+.05,ln),a=_u(Math.floor(t/Mc),2)+":"+_u(Hl(Math.floor(t/Il),60),2);if(r!=="M"){Bw(r)||(r=0);var n=Math.min(Hl(e/wu,60),iJ[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}Ht.formatDate=function(e,r,t,a,n,i){if(n=ll(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-geo-assets.js b/dist/plotly-geo-assets.js index da65233a271..86eab7b82cf 100644 --- a/dist/plotly-geo-assets.js +++ b/dist/plotly-geo-assets.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.3 +* plotly.js v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -141,7 +141,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-geo.js b/dist/plotly-geo.js index e762643dec0..212a4f9b3c8 100644 --- a/dist/plotly-geo.js +++ b/dist/plotly-geo.js @@ -1,5 +1,5 @@ /** -* plotly.js (geo) v3.0.3 +* plotly.js (geo) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-geo.min.js b/dist/plotly-geo.min.js index dc0c06fdcc4..850f561ea71 100644 --- a/dist/plotly-geo.min.js +++ b/dist/plotly-geo.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (geo - minified) v3.0.3 +* plotly.js (geo - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var B_=Object.defineProperty;var UI=Object.getOwnPropertyDescriptor;var YI=Object.getOwnPropertyNames;var GI=Object.prototype.hasOwnProperty;var O_=(e,r)=>()=>(e&&(r=e(e=0)),r);var ne=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var VI=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of YI(r))!GI.call(e,a)&&a!==t&&B_(e,a,{get:()=>r[a],enumerable:!(n=UI(r,a))||n.enumerable});return e};var WI=e=>VI(B_({},"__esModule",{value:!0}),e);var Jh=ne(U_=>{"use strict";U_.version="3.0.3"});var G_=ne((Y_,$h)=>{(function(r,t,n){t[r]=t[r]||n(),typeof $h!="undefined"&&$h.exports&&($h.exports=t[r])})("Promise",typeof window!="undefined"?window:Y_,function(){"use strict";var r,t,n,a=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(S){return setImmediate(S)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(S,x,b,A){return Object.defineProperty(S,x,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(x,b,A){return x[b]=A,x}}n=function(){var S,x,b;function A(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,D){b=new A(M,D),x?x.next=b:S=b,x=b,b=void 0},drain:function(){var M=S;for(S=x=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(_,S){n.add(_,S),t||(t=i(n.drain))}function l(_){var S,x=typeof _;return _!=null&&(x=="object"||x=="function")&&(S=_.then),typeof S=="function"?S:!1}function s(){for(var _=0;_0&&o(s,x))}catch(b){v.call(new d(x),b)}}}function v(_){var S=this;S.triggered||(S.triggered=!0,S.def&&(S=S.def),S.msg=_,S.state=2,S.chain.length>0&&o(s,S))}function h(_,S,x,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},n=self.document;function a(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(c){t=function(g){for(var w=g.length,C=new Array(w);w--;)C[w]=g[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,w){l.call(this,g,w+"")},o.setAttributeNS=function(g,w,C){s.call(this,g,w,C+"")},u.setProperty=function(g,w,C){f.call(this,g,w+"",C)}}e.ascending=v;function v(c,g){return cg?1:c>=g?0:NaN}e.descending=function(c,g){return gc?1:g>=c?0:NaN},e.min=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wE&&(q=E)}else{for(;++w=E){q=E;break}for(;++wE&&(q=E)}return q},e.max=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wq&&(q=E)}else{for(;++w=E){q=E;break}for(;++wq&&(q=E)}return q},e.extent=function(c,g){var w=-1,C=c.length,q,E,G;if(arguments.length===1){for(;++w=E){q=G=E;break}for(;++wE&&(q=E),G=E){q=G=E;break}for(;++wE&&(q=E),G1)return G/(j-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)<0?C=E+1:q=E}return C},right:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)>0?q=E:C=E+1}return C}}}var p=m(v);e.bisectLeft=p.left,e.bisect=e.bisectRight=p.right,e.bisector=function(c){return m(c.length===1?function(g,w){return v(c(g),w)}:c)},e.shuffle=function(c,g,w){(C=arguments.length)<3&&(w=c.length,C<2&&(g=0));for(var C=w-g,q,E;C;)E=Math.random()*C--|0,q=c[C+g],c[C+g]=c[E+g],c[E+g]=q;return c},e.permute=function(c,g){for(var w=g.length,C=new Array(w);w--;)C[w]=c[g[w]];return C},e.pairs=function(c){for(var g=0,w=c.length-1,C,q=c[0],E=new Array(w<0?0:w);g=0;)for(G=c[g],w=G.length;--w>=0;)E[--q]=G[w];return E};var _=Math.abs;e.range=function(c,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=c,c=0)),(g-c)/w===1/0)throw new Error("infinite range");var C=[],q=S(_(w)),E=-1,G;if(c*=q,g*=q,w*=q,w<0)for(;(G=c+w*++E)>g;)C.push(G/q);else for(;(G=c+w*++E)=g.length)return q?q.call(c,j):C?j.sort(C):j;for(var ie=-1,ge=j.length,me=g[ae++],Re,Ye,ye,Ce=new b,De;++ie=g.length)return N;var ae=[],ie=w[j++];return N.forEach(function(ge,me){ae.push({key:ge,values:G(me,j)})}),ie?ae.sort(function(ge,me){return ie(ge.key,me.key)}):ae}return c.map=function(N,j){return E(j,N,0)},c.entries=function(N){return G(E(e.map,N,0),0)},c.key=function(N){return g.push(N),c},c.sortKeys=function(N){return w[g.length-1]=N,c},c.sortValues=function(N){return C=N,c},c.rollup=function(N){return q=N,c},c},e.set=function(c){var g=new X;if(c)for(var w=0,C=c.length;w=0&&(C=c.slice(w+1),c=c.slice(0,w)),c)return arguments.length<2?this[c].on(C):this[c].on(C,g);if(arguments.length===2){if(g==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(C,null);return this}};function de(c){var g=[],w=new b;function C(){for(var q=g,E=-1,G=q.length,N;++E=0&&(w=c.slice(0,g))!=="xmlns"&&(c=c.slice(g+1)),Me.hasOwnProperty(w)?{space:Me[w],local:c}:c}},pe.attr=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node();return c=e.ns.qualify(c),c.local?w.getAttributeNS(c.space,c.local):w.getAttribute(c)}for(g in c)this.each(Fe(g,c[g]));return this}return this.each(Fe(c,g))};function Fe(c,g){c=e.ns.qualify(c);function w(){this.removeAttribute(c)}function C(){this.removeAttributeNS(c.space,c.local)}function q(){this.setAttribute(c,g)}function E(){this.setAttributeNS(c.space,c.local,g)}function G(){var j=g.apply(this,arguments);j==null?this.removeAttribute(c):this.setAttribute(c,j)}function N(){var j=g.apply(this,arguments);j==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,j)}return g==null?c.local?C:w:typeof g=="function"?c.local?N:G:c.local?E:q}function Oe(c){return c.trim().replace(/\s+/g," ")}pe.classed=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node(),C=(c=nr(c)).length,q=-1;if(g=w.classList){for(;++q=0;)(E=w[C])&&(q&&q!==E.nextSibling&&q.parentNode.insertBefore(E,q),q=E);return this},pe.sort=function(c){c=Ve.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=q+1);!(j=G[g])&&++g0&&(c=c.slice(0,q));var G=mr.get(c);G&&(c=G,E=gr);function N(){var ie=this[C];ie&&(this.removeEventListener(c,ie,ie.$),delete this[C])}function j(){var ie=E(g,t(arguments));N.call(this),this.addEventListener(c,this[C]=ie,ie.$=w),ie._=g}function ae(){var ie=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),ge;for(var me in this)if(ge=me.match(ie)){var Re=this[me];this.removeEventListener(ge[1],Re,Re.$),delete this[me]}}return q?g?j:N:g?re:ae}var mr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&mr.forEach(function(c){"on"+c in n&&mr.remove(c)});function Mr(c,g){return function(w){var C=e.event;e.event=w,g[0]=this.__data__;try{c.apply(this,g)}finally{e.event=C}}}function gr(c,g){var w=Mr(c,g);return function(C){var q=this,E=C.relatedTarget;(!E||E!==q&&!(E.compareDocumentPosition(q)&8))&&w.call(q,C)}}var dr,Tr=0;function Pr(c){var g=".dragsuppress-"+ ++Tr,w="click"+g,C=e.select(i(c)).on("touchmove"+g,qe).on("dragstart"+g,qe).on("selectstart"+g,qe);if(dr==null&&(dr="onselectstart"in c?!1:te(c.style,"userSelect")),dr){var q=a(c).style,E=q[dr];q[dr]="none"}return function(G){if(C.on(g,null),dr&&(q[dr]=E),G){var N=function(){C.on(w,null)};C.on(w,function(){qe(),N()},!0),setTimeout(N,0)}}}e.mouse=function(c){return sr(c,Be())};var Ur=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function sr(c,g){g.changedTouches&&(g=g.changedTouches[0]);var w=c.ownerSVGElement||c;if(w.createSVGPoint){var C=w.createSVGPoint();if(Ur<0){var q=i(c);if(q.scrollX||q.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var E=w[0][0].getScreenCTM();Ur=!(E.f||E.e),w.remove()}}return Ur?(C.x=g.pageX,C.y=g.pageY):(C.x=g.clientX,C.y=g.clientY),C=C.matrixTransform(c.getScreenCTM().inverse()),[C.x,C.y]}var G=c.getBoundingClientRect();return[g.clientX-G.left-c.clientLeft,g.clientY-G.top-c.clientTop]}e.touch=function(c,g,w){if(arguments.length<3&&(w=g,g=Be().changedTouches),g){for(var C=0,q=g.length,E;C0?1:c<0?-1:0}function St(c,g,w){return(g[0]-c[0])*(w[1]-c[1])-(g[1]-c[1])*(w[0]-c[0])}function hn(c){return c>1?0:c<-1?We:Math.acos(c)}function Fn(c){return c>1?Hr:c<-1?-Hr:Math.asin(c)}function $n(c){return((c=Math.exp(c))-1/c)/2}function Xt(c){return((c=Math.exp(c))+1/c)/2}function cn(c){return((c=Math.exp(2*c))-1)/(c+1)}function sn(c){return(c=Math.sin(c/2))*c}var Kt=Math.SQRT2,aa=2,rt=4;e.interpolateZoom=function(c,g){var w=c[0],C=c[1],q=c[2],E=g[0],G=g[1],N=g[2],j=E-w,ae=G-C,ie=j*j+ae*ae,ge,me;if(ie<$e)me=Math.log(N/q)/Kt,ge=function(Ue){return[w+Ue*j,C+Ue*ae,q*Math.exp(Kt*Ue*me)]};else{var Re=Math.sqrt(ie),Ye=(N*N-q*q+rt*ie)/(2*q*aa*Re),ye=(N*N-q*q-rt*ie)/(2*N*aa*Re),Ce=Math.log(Math.sqrt(Ye*Ye+1)-Ye),De=Math.log(Math.sqrt(ye*ye+1)-ye);me=(De-Ce)/Kt,ge=function(Ue){var Ge=Ue*me,Pe=Xt(Ce),_r=q/(aa*Re)*(Pe*cn(Kt*Ge+Ce)-$n(Ce));return[w+_r*j,C+_r*ae,q*Pe/Xt(Kt*Ge+Ce)]}}return ge.duration=me*1e3,ge},e.behavior.zoom=function(){var c={x:0,y:0,k:1},g,w,C,q=[960,500],E=Qt,G=250,N=0,j="mousedown.zoom",ae="mousemove.zoom",ie="mouseup.zoom",ge,me="touchstart.zoom",Re,Ye=Ne(Ge,"zoomstart","zoom","zoomend"),ye,Ce,De,Ue;dn||(dn="onwheel"in n?(Ct=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in n?(Ct=function(){return e.event.wheelDelta},"mousewheel"):(Ct=function(){return-e.event.detail},"MozMousePixelScroll"));function Ge(Fr){Fr.on(j,ht).on(dn+".zoom",Zn).on("dblclick.zoom",on).on(me,jt)}Ge.event=function(Fr){Fr.each(function(){var _t=Ye.of(this,arguments),wt=c;ma?e.select(this).transition().each("start.zoom",function(){c=this.__chart__||{x:0,y:0,k:1},$r(_t)}).tween("zoom:zoom",function(){var Jt=q[0],Nn=q[1],oa=w?w[0]:Jt/2,Da=w?w[1]:Nn/2,ja=e.interpolateZoom([(oa-c.x)/c.k,(Da-c.y)/c.k,Jt/c.k],[(oa-wt.x)/wt.k,(Da-wt.y)/wt.k,Jt/wt.k]);return function(fi){var Ja=ja(fi),Si=Jt/Ja[2];this.__chart__=c={x:oa-Ja[0]*Si,y:Da-Ja[1]*Si,k:Si},bt(_t)}}).each("interrupt.zoom",function(){Qr(_t)}).each("end.zoom",function(){Qr(_t)}):(this.__chart__=c,$r(_t),bt(_t),Qr(_t))})},Ge.translate=function(Fr){return arguments.length?(c={x:+Fr[0],y:+Fr[1],k:c.k},Jr(),Ge):[c.x,c.y]},Ge.scale=function(Fr){return arguments.length?(c={x:c.x,y:c.y,k:null},Or(+Fr),Jr(),Ge):c.k},Ge.scaleExtent=function(Fr){return arguments.length?(E=Fr==null?Qt:[+Fr[0],+Fr[1]],Ge):E},Ge.center=function(Fr){return arguments.length?(C=Fr&&[+Fr[0],+Fr[1]],Ge):C},Ge.size=function(Fr){return arguments.length?(q=Fr&&[+Fr[0],+Fr[1]],Ge):q},Ge.duration=function(Fr){return arguments.length?(G=+Fr,Ge):G},Ge.x=function(Fr){return arguments.length?(Ce=Fr,ye=Fr.copy(),c={x:0,y:0,k:1},Ge):Ce},Ge.y=function(Fr){return arguments.length?(Ue=Fr,De=Fr.copy(),c={x:0,y:0,k:1},Ge):Ue};function Pe(Fr){return[(Fr[0]-c.x)/c.k,(Fr[1]-c.y)/c.k]}function _r(Fr){return[Fr[0]*c.k+c.x,Fr[1]*c.k+c.y]}function Or(Fr){c.k=Math.max(E[0],Math.min(E[1],Fr))}function Wr(Fr,_t){_t=_r(_t),c.x+=Fr[0]-_t[0],c.y+=Fr[1]-_t[1]}function Gr(Fr,_t,wt,Jt){Fr.__chart__={x:c.x,y:c.y,k:c.k},Or(Math.pow(2,Jt)),Wr(w=_t,wt),Fr=e.select(Fr),G>0&&(Fr=Fr.transition().duration(G)),Fr.call(Ge.event)}function Jr(){Ce&&Ce.domain(ye.range().map(function(Fr){return(Fr-c.x)/c.k}).map(ye.invert)),Ue&&Ue.domain(De.range().map(function(Fr){return(Fr-c.y)/c.k}).map(De.invert))}function $r(Fr){N++||Fr({type:"zoomstart"})}function bt(Fr){Jr(),Fr({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function Qr(Fr){--N||(Fr({type:"zoomend"}),w=null)}function ht(){var Fr=this,_t=Ye.of(Fr,arguments),wt=0,Jt=e.select(i(Fr)).on(ae,Da).on(ie,ja),Nn=Pe(e.mouse(Fr)),oa=Pr(Fr);vt.call(Fr),$r(_t);function Da(){wt=1,Wr(e.mouse(Fr),Nn),bt(_t)}function ja(){Jt.on(ae,null).on(ie,null),oa(wt),Qr(_t)}}function jt(){var Fr=this,_t=Ye.of(Fr,arguments),wt={},Jt=0,Nn,oa=".zoom-"+e.event.changedTouches[0].identifier,Da="touchmove"+oa,ja="touchend"+oa,fi=[],Ja=e.select(Fr),Si=Pr(Fr);Ci(),$r(_t),Ja.on(j,null).on(me,Ci);function Ha(){var ul=e.touches(Fr);return Nn=c.k,ul.forEach(function(Ea){Ea.identifier in wt&&(wt[Ea.identifier]=Pe(Ea))}),ul}function Ci(){var ul=e.event.target;e.select(ul).on(Da,Zf).on(ja,OI),fi.push(ul);for(var Ea=e.event.changedTouches,mo=0,jl=Ea.length;mo1){var Xf=yo[0],qu=yo[1],jh=Xf[0]-qu[0],H_=Xf[1]-qu[1];Jt=jh*jh+H_*H_}}function Zf(){var ul=e.touches(Fr),Ea,mo,jl,yo;vt.call(Fr);for(var g0=0,Xf=ul.length;g01?1:g,w=w<0?0:w>1?1:w,q=w<=.5?w*(1+g):w+g-w*g,C=2*w-q;function E(N){return N>360?N-=360:N<0&&(N+=360),N<60?C+(q-C)*N/60:N<180?q:N<240?C+(q-C)*(240-N)/60:C}function G(N){return Math.round(E(N)*255)}return new Hn(G(c+120),G(c),G(c-120))}e.hcl=Sn;function Sn(c,g,w){return this instanceof Sn?(this.h=+c,this.c=+g,void(this.l=+w)):arguments.length<2?c instanceof Sn?new Sn(c.h,c.c,c.l):c instanceof wn?El(c.l,c.a,c.b):El((c=Br((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new Sn(c,g,w)}var Na=Sn.prototype=new pn;Na.brighter=function(c){return new Sn(this.h,this.c,Math.min(100,this.l+It*(arguments.length?c:1)))},Na.darker=function(c){return new Sn(this.h,this.c,Math.max(0,this.l-It*(arguments.length?c:1)))},Na.rgb=function(){return pa(this.h,this.c,this.l).rgb()};function pa(c,g,w){return isNaN(c)&&(c=0),isNaN(g)&&(g=0),new wn(w,Math.cos(c*=lt)*g,Math.sin(c)*g)}e.lab=wn;function wn(c,g,w){return this instanceof wn?(this.l=+c,this.a=+g,void(this.b=+w)):arguments.length<2?c instanceof wn?new wn(c.l,c.a,c.b):c instanceof Sn?pa(c.h,c.c,c.l):Br((c=Hn(c)).r,c.g,c.b):new wn(c,g,w)}var It=18,In=.95047,gi=1,io=1.08883,mi=wn.prototype=new pn;mi.brighter=function(c){return new wn(Math.min(100,this.l+It*(arguments.length?c:1)),this.a,this.b)},mi.darker=function(c){return new wn(Math.max(0,this.l-It*(arguments.length?c:1)),this.a,this.b)},mi.rgb=function(){return ms(this.l,this.a,this.b)};function ms(c,g,w){var C=(c+16)/116,q=C+g/500,E=C-w/200;return q=Bo(q)*In,C=Bo(C)*gi,E=Bo(E)*io,new Hn(Oo(3.2404542*q-1.5371385*C-.4985314*E),Oo(-.969266*q+1.8760108*C+.041556*E),Oo(.0556434*q-.2040259*C+1.0572252*E))}function El(c,g,w){return c>0?new Sn(Math.atan2(w,g)*xt,Math.sqrt(g*g+w*w),c):new Sn(NaN,NaN,c)}function Bo(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function ys(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Oo(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Hn;function Hn(c,g,w){return this instanceof Hn?(this.r=~~c,this.g=~~g,void(this.b=~~w)):arguments.length<2?c instanceof Hn?new Hn(c.r,c.g,c.b):Lt(""+c,Hn,da):new Hn(c,g,w)}function yi(c){return new Hn(c>>16,c>>8&255,c&255)}function Uo(c){return yi(c)+""}var bi=Hn.prototype=new pn;bi.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var g=this.r,w=this.g,C=this.b,q=30;return!g&&!w&&!C?new Hn(q,q,q):(g&&g>4,C=C>>4|C,q=j&240,q=q>>4|q,E=j&15,E=E<<4|E):c.length===7&&(C=(j&16711680)>>16,q=(j&65280)>>8,E=j&255)),g(C,q,E))}function Ht(c,g,w){var C=Math.min(c/=255,g/=255,w/=255),q=Math.max(c,g,w),E=q-C,G,N,j=(q+C)/2;return E?(N=j<.5?E/(q+C):E/(2-q-C),c==q?G=(g-w)/E+(g0&&j<1?0:G),new tn(G,N,j)}function Br(c,g,w){c=Vn(c),g=Vn(g),w=Vn(w);var C=ys((.4124564*c+.3575761*g+.1804375*w)/In),q=ys((.2126729*c+.7151522*g+.072175*w)/gi),E=ys((.0193339*c+.119192*g+.9503041*w)/io);return wn(116*q-16,500*(C-q),200*(q-E))}function Vn(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function nn(c){var g=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(g*2.55):g}var Dn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Dn.forEach(function(c,g){Dn.set(c,yi(g))});function At(c){return typeof c=="function"?c:function(){return c}}e.functor=At,e.xhr=Wa(V);function Wa(c){return function(g,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Yo(g,w,c,C)}}function Yo(c,g,w,C){var q={},E=e.dispatch("beforesend","progress","load","error"),G={},N=new XMLHttpRequest,j=null;self.XDomainRequest&&!("withCredentials"in N)&&/^(http(s)?:)?\/\//.test(c)&&(N=new XDomainRequest),"onload"in N?N.onload=N.onerror=ae:N.onreadystatechange=function(){N.readyState>3&&ae()};function ae(){var ie=N.status,ge;if(!ie&&cu(N)||ie>=200&&ie<300||ie===304){try{ge=w.call(q,N)}catch(me){E.error.call(q,me);return}E.load.call(q,ge)}else E.error.call(q,N)}return N.onprogress=function(ie){var ge=e.event;e.event=ie;try{E.progress.call(q,N)}finally{e.event=ge}},q.header=function(ie,ge){return ie=(ie+"").toLowerCase(),arguments.length<2?G[ie]:(ge==null?delete G[ie]:G[ie]=ge+"",q)},q.mimeType=function(ie){return arguments.length?(g=ie==null?null:ie+"",q):g},q.responseType=function(ie){return arguments.length?(j=ie,q):j},q.response=function(ie){return w=ie,q},["get","post"].forEach(function(ie){q[ie]=function(){return q.send.apply(q,[ie].concat(t(arguments)))}}),q.send=function(ie,ge,me){if(arguments.length===2&&typeof ge=="function"&&(me=ge,ge=null),N.open(ie,c,!0),g!=null&&!("accept"in G)&&(G.accept=g+",*/*"),N.setRequestHeader)for(var Re in G)N.setRequestHeader(Re,G[Re]);return g!=null&&N.overrideMimeType&&N.overrideMimeType(g),j!=null&&(N.responseType=j),me!=null&&q.on("error",me).on("load",function(Ye){me(null,Ye)}),E.beforesend.call(q,N),N.send(ge==null?null:ge),q},q.abort=function(){return N.abort(),q},e.rebind(q,E,"on"),C==null?q:q.get(wf(C))}function wf(c){return c.length===1?function(g,w){c(g==null?w:null)}:c}function cu(c){var g=c.responseType;return g&&g!=="text"?c.response:c.responseText}e.dsv=function(c,g){var w=new RegExp('["'+c+` +"use strict";var Plotly=(()=>{var B_=Object.defineProperty;var UI=Object.getOwnPropertyDescriptor;var YI=Object.getOwnPropertyNames;var GI=Object.prototype.hasOwnProperty;var O_=(e,r)=>()=>(e&&(r=e(e=0)),r);var ne=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var VI=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of YI(r))!GI.call(e,a)&&a!==t&&B_(e,a,{get:()=>r[a],enumerable:!(n=UI(r,a))||n.enumerable});return e};var WI=e=>VI(B_({},"__esModule",{value:!0}),e);var Jh=ne(U_=>{"use strict";U_.version="3.0.2"});var G_=ne((Y_,$h)=>{(function(r,t,n){t[r]=t[r]||n(),typeof $h!="undefined"&&$h.exports&&($h.exports=t[r])})("Promise",typeof window!="undefined"?window:Y_,function(){"use strict";var r,t,n,a=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(S){return setImmediate(S)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(S,x,b,A){return Object.defineProperty(S,x,{value:b,writable:!0,configurable:A!==!1})}}catch(_){r=function(x,b,A){return x[b]=A,x}}n=function(){var S,x,b;function A(k,M){this.fn=k,this.self=M,this.next=void 0}return{add:function(M,D){b=new A(M,D),x?x.next=b:S=b,x=b,b=void 0},drain:function(){var M=S;for(S=x=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(_,S){n.add(_,S),t||(t=i(n.drain))}function l(_){var S,x=typeof _;return _!=null&&(x=="object"||x=="function")&&(S=_.then),typeof S=="function"?S:!1}function s(){for(var _=0;_0&&o(s,x))}catch(b){v.call(new d(x),b)}}}function v(_){var S=this;S.triggered||(S.triggered=!0,S.def&&(S=S.def),S.msg=_,S.state=2,S.chain.length>0&&o(s,S))}function h(_,S,x,b){for(var A=0;A{(function(){var e={version:"3.8.2"},r=[].slice,t=function(c){return r.call(c)},n=self.document;function a(c){return c&&(c.ownerDocument||c.document||c).documentElement}function i(c){return c&&(c.ownerDocument&&c.ownerDocument.defaultView||c.document&&c||c.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(c){t=function(g){for(var w=g.length,C=new Array(w);w--;)C[w]=g[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(c){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(g,w){l.call(this,g,w+"")},o.setAttributeNS=function(g,w,C){s.call(this,g,w,C+"")},u.setProperty=function(g,w,C){f.call(this,g,w+"",C)}}e.ascending=v;function v(c,g){return cg?1:c>=g?0:NaN}e.descending=function(c,g){return gc?1:g>=c?0:NaN},e.min=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wE&&(q=E)}else{for(;++w=E){q=E;break}for(;++wE&&(q=E)}return q},e.max=function(c,g){var w=-1,C=c.length,q,E;if(arguments.length===1){for(;++w=E){q=E;break}for(;++wq&&(q=E)}else{for(;++w=E){q=E;break}for(;++wq&&(q=E)}return q},e.extent=function(c,g){var w=-1,C=c.length,q,E,G;if(arguments.length===1){for(;++w=E){q=G=E;break}for(;++wE&&(q=E),G=E){q=G=E;break}for(;++wE&&(q=E),G1)return G/(j-1)},e.deviation=function(){var c=e.variance.apply(this,arguments);return c&&Math.sqrt(c)};function m(c){return{left:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)<0?C=E+1:q=E}return C},right:function(g,w,C,q){for(arguments.length<3&&(C=0),arguments.length<4&&(q=g.length);C>>1;c(g[E],w)>0?q=E:C=E+1}return C}}}var p=m(v);e.bisectLeft=p.left,e.bisect=e.bisectRight=p.right,e.bisector=function(c){return m(c.length===1?function(g,w){return v(c(g),w)}:c)},e.shuffle=function(c,g,w){(C=arguments.length)<3&&(w=c.length,C<2&&(g=0));for(var C=w-g,q,E;C;)E=Math.random()*C--|0,q=c[C+g],c[C+g]=c[E+g],c[E+g]=q;return c},e.permute=function(c,g){for(var w=g.length,C=new Array(w);w--;)C[w]=c[g[w]];return C},e.pairs=function(c){for(var g=0,w=c.length-1,C,q=c[0],E=new Array(w<0?0:w);g=0;)for(G=c[g],w=G.length;--w>=0;)E[--q]=G[w];return E};var _=Math.abs;e.range=function(c,g,w){if(arguments.length<3&&(w=1,arguments.length<2&&(g=c,c=0)),(g-c)/w===1/0)throw new Error("infinite range");var C=[],q=S(_(w)),E=-1,G;if(c*=q,g*=q,w*=q,w<0)for(;(G=c+w*++E)>g;)C.push(G/q);else for(;(G=c+w*++E)=g.length)return q?q.call(c,j):C?j.sort(C):j;for(var ie=-1,ge=j.length,me=g[ae++],Re,Ye,ye,Ce=new b,De;++ie=g.length)return N;var ae=[],ie=w[j++];return N.forEach(function(ge,me){ae.push({key:ge,values:G(me,j)})}),ie?ae.sort(function(ge,me){return ie(ge.key,me.key)}):ae}return c.map=function(N,j){return E(j,N,0)},c.entries=function(N){return G(E(e.map,N,0),0)},c.key=function(N){return g.push(N),c},c.sortKeys=function(N){return w[g.length-1]=N,c},c.sortValues=function(N){return C=N,c},c.rollup=function(N){return q=N,c},c},e.set=function(c){var g=new X;if(c)for(var w=0,C=c.length;w=0&&(C=c.slice(w+1),c=c.slice(0,w)),c)return arguments.length<2?this[c].on(C):this[c].on(C,g);if(arguments.length===2){if(g==null)for(c in this)this.hasOwnProperty(c)&&this[c].on(C,null);return this}};function de(c){var g=[],w=new b;function C(){for(var q=g,E=-1,G=q.length,N;++E=0&&(w=c.slice(0,g))!=="xmlns"&&(c=c.slice(g+1)),Me.hasOwnProperty(w)?{space:Me[w],local:c}:c}},pe.attr=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node();return c=e.ns.qualify(c),c.local?w.getAttributeNS(c.space,c.local):w.getAttribute(c)}for(g in c)this.each(Fe(g,c[g]));return this}return this.each(Fe(c,g))};function Fe(c,g){c=e.ns.qualify(c);function w(){this.removeAttribute(c)}function C(){this.removeAttributeNS(c.space,c.local)}function q(){this.setAttribute(c,g)}function E(){this.setAttributeNS(c.space,c.local,g)}function G(){var j=g.apply(this,arguments);j==null?this.removeAttribute(c):this.setAttribute(c,j)}function N(){var j=g.apply(this,arguments);j==null?this.removeAttributeNS(c.space,c.local):this.setAttributeNS(c.space,c.local,j)}return g==null?c.local?C:w:typeof g=="function"?c.local?N:G:c.local?E:q}function Oe(c){return c.trim().replace(/\s+/g," ")}pe.classed=function(c,g){if(arguments.length<2){if(typeof c=="string"){var w=this.node(),C=(c=nr(c)).length,q=-1;if(g=w.classList){for(;++q=0;)(E=w[C])&&(q&&q!==E.nextSibling&&q.parentNode.insertBefore(E,q),q=E);return this},pe.sort=function(c){c=Ve.apply(this,arguments);for(var g=-1,w=this.length;++g=g&&(g=q+1);!(j=G[g])&&++g0&&(c=c.slice(0,q));var G=mr.get(c);G&&(c=G,E=gr);function N(){var ie=this[C];ie&&(this.removeEventListener(c,ie,ie.$),delete this[C])}function j(){var ie=E(g,t(arguments));N.call(this),this.addEventListener(c,this[C]=ie,ie.$=w),ie._=g}function ae(){var ie=new RegExp("^__on([^.]+)"+e.requote(c)+"$"),ge;for(var me in this)if(ge=me.match(ie)){var Re=this[me];this.removeEventListener(ge[1],Re,Re.$),delete this[me]}}return q?g?j:N:g?re:ae}var mr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&mr.forEach(function(c){"on"+c in n&&mr.remove(c)});function Mr(c,g){return function(w){var C=e.event;e.event=w,g[0]=this.__data__;try{c.apply(this,g)}finally{e.event=C}}}function gr(c,g){var w=Mr(c,g);return function(C){var q=this,E=C.relatedTarget;(!E||E!==q&&!(E.compareDocumentPosition(q)&8))&&w.call(q,C)}}var dr,Tr=0;function Pr(c){var g=".dragsuppress-"+ ++Tr,w="click"+g,C=e.select(i(c)).on("touchmove"+g,qe).on("dragstart"+g,qe).on("selectstart"+g,qe);if(dr==null&&(dr="onselectstart"in c?!1:te(c.style,"userSelect")),dr){var q=a(c).style,E=q[dr];q[dr]="none"}return function(G){if(C.on(g,null),dr&&(q[dr]=E),G){var N=function(){C.on(w,null)};C.on(w,function(){qe(),N()},!0),setTimeout(N,0)}}}e.mouse=function(c){return sr(c,Be())};var Ur=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function sr(c,g){g.changedTouches&&(g=g.changedTouches[0]);var w=c.ownerSVGElement||c;if(w.createSVGPoint){var C=w.createSVGPoint();if(Ur<0){var q=i(c);if(q.scrollX||q.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var E=w[0][0].getScreenCTM();Ur=!(E.f||E.e),w.remove()}}return Ur?(C.x=g.pageX,C.y=g.pageY):(C.x=g.clientX,C.y=g.clientY),C=C.matrixTransform(c.getScreenCTM().inverse()),[C.x,C.y]}var G=c.getBoundingClientRect();return[g.clientX-G.left-c.clientLeft,g.clientY-G.top-c.clientTop]}e.touch=function(c,g,w){if(arguments.length<3&&(w=g,g=Be().changedTouches),g){for(var C=0,q=g.length,E;C0?1:c<0?-1:0}function St(c,g,w){return(g[0]-c[0])*(w[1]-c[1])-(g[1]-c[1])*(w[0]-c[0])}function hn(c){return c>1?0:c<-1?We:Math.acos(c)}function Fn(c){return c>1?Hr:c<-1?-Hr:Math.asin(c)}function $n(c){return((c=Math.exp(c))-1/c)/2}function Xt(c){return((c=Math.exp(c))+1/c)/2}function cn(c){return((c=Math.exp(2*c))-1)/(c+1)}function sn(c){return(c=Math.sin(c/2))*c}var Kt=Math.SQRT2,aa=2,rt=4;e.interpolateZoom=function(c,g){var w=c[0],C=c[1],q=c[2],E=g[0],G=g[1],N=g[2],j=E-w,ae=G-C,ie=j*j+ae*ae,ge,me;if(ie<$e)me=Math.log(N/q)/Kt,ge=function(Ue){return[w+Ue*j,C+Ue*ae,q*Math.exp(Kt*Ue*me)]};else{var Re=Math.sqrt(ie),Ye=(N*N-q*q+rt*ie)/(2*q*aa*Re),ye=(N*N-q*q-rt*ie)/(2*N*aa*Re),Ce=Math.log(Math.sqrt(Ye*Ye+1)-Ye),De=Math.log(Math.sqrt(ye*ye+1)-ye);me=(De-Ce)/Kt,ge=function(Ue){var Ge=Ue*me,Pe=Xt(Ce),_r=q/(aa*Re)*(Pe*cn(Kt*Ge+Ce)-$n(Ce));return[w+_r*j,C+_r*ae,q*Pe/Xt(Kt*Ge+Ce)]}}return ge.duration=me*1e3,ge},e.behavior.zoom=function(){var c={x:0,y:0,k:1},g,w,C,q=[960,500],E=Qt,G=250,N=0,j="mousedown.zoom",ae="mousemove.zoom",ie="mouseup.zoom",ge,me="touchstart.zoom",Re,Ye=Ne(Ge,"zoomstart","zoom","zoomend"),ye,Ce,De,Ue;dn||(dn="onwheel"in n?(Ct=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in n?(Ct=function(){return e.event.wheelDelta},"mousewheel"):(Ct=function(){return-e.event.detail},"MozMousePixelScroll"));function Ge(Fr){Fr.on(j,ht).on(dn+".zoom",Zn).on("dblclick.zoom",on).on(me,jt)}Ge.event=function(Fr){Fr.each(function(){var _t=Ye.of(this,arguments),wt=c;ma?e.select(this).transition().each("start.zoom",function(){c=this.__chart__||{x:0,y:0,k:1},$r(_t)}).tween("zoom:zoom",function(){var Jt=q[0],Nn=q[1],oa=w?w[0]:Jt/2,Da=w?w[1]:Nn/2,ja=e.interpolateZoom([(oa-c.x)/c.k,(Da-c.y)/c.k,Jt/c.k],[(oa-wt.x)/wt.k,(Da-wt.y)/wt.k,Jt/wt.k]);return function(fi){var Ja=ja(fi),Si=Jt/Ja[2];this.__chart__=c={x:oa-Ja[0]*Si,y:Da-Ja[1]*Si,k:Si},bt(_t)}}).each("interrupt.zoom",function(){Qr(_t)}).each("end.zoom",function(){Qr(_t)}):(this.__chart__=c,$r(_t),bt(_t),Qr(_t))})},Ge.translate=function(Fr){return arguments.length?(c={x:+Fr[0],y:+Fr[1],k:c.k},Jr(),Ge):[c.x,c.y]},Ge.scale=function(Fr){return arguments.length?(c={x:c.x,y:c.y,k:null},Or(+Fr),Jr(),Ge):c.k},Ge.scaleExtent=function(Fr){return arguments.length?(E=Fr==null?Qt:[+Fr[0],+Fr[1]],Ge):E},Ge.center=function(Fr){return arguments.length?(C=Fr&&[+Fr[0],+Fr[1]],Ge):C},Ge.size=function(Fr){return arguments.length?(q=Fr&&[+Fr[0],+Fr[1]],Ge):q},Ge.duration=function(Fr){return arguments.length?(G=+Fr,Ge):G},Ge.x=function(Fr){return arguments.length?(Ce=Fr,ye=Fr.copy(),c={x:0,y:0,k:1},Ge):Ce},Ge.y=function(Fr){return arguments.length?(Ue=Fr,De=Fr.copy(),c={x:0,y:0,k:1},Ge):Ue};function Pe(Fr){return[(Fr[0]-c.x)/c.k,(Fr[1]-c.y)/c.k]}function _r(Fr){return[Fr[0]*c.k+c.x,Fr[1]*c.k+c.y]}function Or(Fr){c.k=Math.max(E[0],Math.min(E[1],Fr))}function Wr(Fr,_t){_t=_r(_t),c.x+=Fr[0]-_t[0],c.y+=Fr[1]-_t[1]}function Gr(Fr,_t,wt,Jt){Fr.__chart__={x:c.x,y:c.y,k:c.k},Or(Math.pow(2,Jt)),Wr(w=_t,wt),Fr=e.select(Fr),G>0&&(Fr=Fr.transition().duration(G)),Fr.call(Ge.event)}function Jr(){Ce&&Ce.domain(ye.range().map(function(Fr){return(Fr-c.x)/c.k}).map(ye.invert)),Ue&&Ue.domain(De.range().map(function(Fr){return(Fr-c.y)/c.k}).map(De.invert))}function $r(Fr){N++||Fr({type:"zoomstart"})}function bt(Fr){Jr(),Fr({type:"zoom",scale:c.k,translate:[c.x,c.y]})}function Qr(Fr){--N||(Fr({type:"zoomend"}),w=null)}function ht(){var Fr=this,_t=Ye.of(Fr,arguments),wt=0,Jt=e.select(i(Fr)).on(ae,Da).on(ie,ja),Nn=Pe(e.mouse(Fr)),oa=Pr(Fr);vt.call(Fr),$r(_t);function Da(){wt=1,Wr(e.mouse(Fr),Nn),bt(_t)}function ja(){Jt.on(ae,null).on(ie,null),oa(wt),Qr(_t)}}function jt(){var Fr=this,_t=Ye.of(Fr,arguments),wt={},Jt=0,Nn,oa=".zoom-"+e.event.changedTouches[0].identifier,Da="touchmove"+oa,ja="touchend"+oa,fi=[],Ja=e.select(Fr),Si=Pr(Fr);Ci(),$r(_t),Ja.on(j,null).on(me,Ci);function Ha(){var ul=e.touches(Fr);return Nn=c.k,ul.forEach(function(Ea){Ea.identifier in wt&&(wt[Ea.identifier]=Pe(Ea))}),ul}function Ci(){var ul=e.event.target;e.select(ul).on(Da,Zf).on(ja,OI),fi.push(ul);for(var Ea=e.event.changedTouches,mo=0,jl=Ea.length;mo1){var Xf=yo[0],qu=yo[1],jh=Xf[0]-qu[0],H_=Xf[1]-qu[1];Jt=jh*jh+H_*H_}}function Zf(){var ul=e.touches(Fr),Ea,mo,jl,yo;vt.call(Fr);for(var g0=0,Xf=ul.length;g01?1:g,w=w<0?0:w>1?1:w,q=w<=.5?w*(1+g):w+g-w*g,C=2*w-q;function E(N){return N>360?N-=360:N<0&&(N+=360),N<60?C+(q-C)*N/60:N<180?q:N<240?C+(q-C)*(240-N)/60:C}function G(N){return Math.round(E(N)*255)}return new Hn(G(c+120),G(c),G(c-120))}e.hcl=Sn;function Sn(c,g,w){return this instanceof Sn?(this.h=+c,this.c=+g,void(this.l=+w)):arguments.length<2?c instanceof Sn?new Sn(c.h,c.c,c.l):c instanceof wn?El(c.l,c.a,c.b):El((c=Br((c=e.rgb(c)).r,c.g,c.b)).l,c.a,c.b):new Sn(c,g,w)}var Na=Sn.prototype=new pn;Na.brighter=function(c){return new Sn(this.h,this.c,Math.min(100,this.l+It*(arguments.length?c:1)))},Na.darker=function(c){return new Sn(this.h,this.c,Math.max(0,this.l-It*(arguments.length?c:1)))},Na.rgb=function(){return pa(this.h,this.c,this.l).rgb()};function pa(c,g,w){return isNaN(c)&&(c=0),isNaN(g)&&(g=0),new wn(w,Math.cos(c*=lt)*g,Math.sin(c)*g)}e.lab=wn;function wn(c,g,w){return this instanceof wn?(this.l=+c,this.a=+g,void(this.b=+w)):arguments.length<2?c instanceof wn?new wn(c.l,c.a,c.b):c instanceof Sn?pa(c.h,c.c,c.l):Br((c=Hn(c)).r,c.g,c.b):new wn(c,g,w)}var It=18,In=.95047,gi=1,io=1.08883,mi=wn.prototype=new pn;mi.brighter=function(c){return new wn(Math.min(100,this.l+It*(arguments.length?c:1)),this.a,this.b)},mi.darker=function(c){return new wn(Math.max(0,this.l-It*(arguments.length?c:1)),this.a,this.b)},mi.rgb=function(){return ms(this.l,this.a,this.b)};function ms(c,g,w){var C=(c+16)/116,q=C+g/500,E=C-w/200;return q=Bo(q)*In,C=Bo(C)*gi,E=Bo(E)*io,new Hn(Oo(3.2404542*q-1.5371385*C-.4985314*E),Oo(-.969266*q+1.8760108*C+.041556*E),Oo(.0556434*q-.2040259*C+1.0572252*E))}function El(c,g,w){return c>0?new Sn(Math.atan2(w,g)*xt,Math.sqrt(g*g+w*w),c):new Sn(NaN,NaN,c)}function Bo(c){return c>.206893034?c*c*c:(c-4/29)/7.787037}function ys(c){return c>.008856?Math.pow(c,1/3):7.787037*c+4/29}function Oo(c){return Math.round(255*(c<=.00304?12.92*c:1.055*Math.pow(c,1/2.4)-.055))}e.rgb=Hn;function Hn(c,g,w){return this instanceof Hn?(this.r=~~c,this.g=~~g,void(this.b=~~w)):arguments.length<2?c instanceof Hn?new Hn(c.r,c.g,c.b):Lt(""+c,Hn,da):new Hn(c,g,w)}function yi(c){return new Hn(c>>16,c>>8&255,c&255)}function Uo(c){return yi(c)+""}var bi=Hn.prototype=new pn;bi.brighter=function(c){c=Math.pow(.7,arguments.length?c:1);var g=this.r,w=this.g,C=this.b,q=30;return!g&&!w&&!C?new Hn(q,q,q):(g&&g>4,C=C>>4|C,q=j&240,q=q>>4|q,E=j&15,E=E<<4|E):c.length===7&&(C=(j&16711680)>>16,q=(j&65280)>>8,E=j&255)),g(C,q,E))}function Ht(c,g,w){var C=Math.min(c/=255,g/=255,w/=255),q=Math.max(c,g,w),E=q-C,G,N,j=(q+C)/2;return E?(N=j<.5?E/(q+C):E/(2-q-C),c==q?G=(g-w)/E+(g0&&j<1?0:G),new tn(G,N,j)}function Br(c,g,w){c=Vn(c),g=Vn(g),w=Vn(w);var C=ys((.4124564*c+.3575761*g+.1804375*w)/In),q=ys((.2126729*c+.7151522*g+.072175*w)/gi),E=ys((.0193339*c+.119192*g+.9503041*w)/io);return wn(116*q-16,500*(C-q),200*(q-E))}function Vn(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function nn(c){var g=parseFloat(c);return c.charAt(c.length-1)==="%"?Math.round(g*2.55):g}var Dn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Dn.forEach(function(c,g){Dn.set(c,yi(g))});function At(c){return typeof c=="function"?c:function(){return c}}e.functor=At,e.xhr=Wa(V);function Wa(c){return function(g,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Yo(g,w,c,C)}}function Yo(c,g,w,C){var q={},E=e.dispatch("beforesend","progress","load","error"),G={},N=new XMLHttpRequest,j=null;self.XDomainRequest&&!("withCredentials"in N)&&/^(http(s)?:)?\/\//.test(c)&&(N=new XDomainRequest),"onload"in N?N.onload=N.onerror=ae:N.onreadystatechange=function(){N.readyState>3&&ae()};function ae(){var ie=N.status,ge;if(!ie&&cu(N)||ie>=200&&ie<300||ie===304){try{ge=w.call(q,N)}catch(me){E.error.call(q,me);return}E.load.call(q,ge)}else E.error.call(q,N)}return N.onprogress=function(ie){var ge=e.event;e.event=ie;try{E.progress.call(q,N)}finally{e.event=ge}},q.header=function(ie,ge){return ie=(ie+"").toLowerCase(),arguments.length<2?G[ie]:(ge==null?delete G[ie]:G[ie]=ge+"",q)},q.mimeType=function(ie){return arguments.length?(g=ie==null?null:ie+"",q):g},q.responseType=function(ie){return arguments.length?(j=ie,q):j},q.response=function(ie){return w=ie,q},["get","post"].forEach(function(ie){q[ie]=function(){return q.send.apply(q,[ie].concat(t(arguments)))}}),q.send=function(ie,ge,me){if(arguments.length===2&&typeof ge=="function"&&(me=ge,ge=null),N.open(ie,c,!0),g!=null&&!("accept"in G)&&(G.accept=g+",*/*"),N.setRequestHeader)for(var Re in G)N.setRequestHeader(Re,G[Re]);return g!=null&&N.overrideMimeType&&N.overrideMimeType(g),j!=null&&(N.responseType=j),me!=null&&q.on("error",me).on("load",function(Ye){me(null,Ye)}),E.beforesend.call(q,N),N.send(ge==null?null:ge),q},q.abort=function(){return N.abort(),q},e.rebind(q,E,"on"),C==null?q:q.get(wf(C))}function wf(c){return c.length===1?function(g,w){c(g==null?w:null)}:c}function cu(c){var g=c.responseType;return g&&g!=="text"?c.response:c.responseText}e.dsv=function(c,g){var w=new RegExp('["'+c+` ]`),C=c.charCodeAt(0);function q(ae,ie,ge){arguments.length<3&&(ge=ie,ie=null);var me=Yo(ae,g,ie==null?E:G(ie),ge);return me.row=function(Re){return arguments.length?me.response((ie=Re)==null?E:G(Re)):ie},me}function E(ae){return q.parse(ae.responseText)}function G(ae){return function(ie){return q.parse(ie.responseText,ae)}}q.parse=function(ae,ie){var ge;return q.parseRows(ae,function(me,Re){if(ge)return ge(me,Re-1);var Ye=function(ye){for(var Ce={},De=me.length,Ue=0;Ue=Ye)return me;if(Ue)return Ue=!1,ge;var _r=ye;if(ae.charCodeAt(_r)===34){for(var Or=_r;Or++24?(isFinite(g)&&(clearTimeout(vu),vu=setTimeout(_i,g)),Vo=0):(Vo=1,Pl(_i))}e.timer.flush=function(){lo(),Wo()};function lo(){for(var c=Date.now(),g=oo;g;)c>=g.t&&g.c(c-g.t)&&(g.c=null),g=g.n;return c}function Wo(){for(var c,g=oo,w=1/0;g;)g.c?(g.t=0;--N)ye.push(q[ae[ge[N]][2]]);for(N=+Re;N1&&St(c[w[C-2]],c[w[C-1]],c[q])<=0;)--C;w[C++]=q}return w.slice(0,C)}function Zc(c,g){return c[0]-g[0]||c[1]-g[1]}e.geom.polygon=function(c){return Se(c,_s),c};var _s=e.geom.polygon.prototype=[];_s.area=function(){for(var c=-1,g=this.length,w,C=this[g-1],q=0;++cke)N=N.L;else if(G=g-Fv(N,w),G>ke){if(!N.R){C=N;break}N=N.R}else{E>-ke?(C=N.P,q=N):G>-ke?(C=N,q=N.N):C=q=N;break}var j=Ms(c);if(Oi.insert(C,j),!(!C&&!q)){if(C===q){co(C),q=Ms(C.site),Oi.insert(j,q),j.edge=q.edge=Il(C.site,j.site),fo(C),fo(q);return}if(!q){j.edge=Il(C.site,j.site);return}co(C),co(q);var ae=C.site,ie=ae.x,ge=ae.y,me=c.x-ie,Re=c.y-ge,Ye=q.site,ye=Ye.x-ie,Ce=Ye.y-ge,De=2*(me*Ce-Re*ye),Ue=me*me+Re*Re,Ge=ye*ye+Ce*Ce,Pe={x:(Ce*Ue-Re*Ge)/De+ie,y:(me*Ge-ye*Ue)/De+ge};Gi(q.edge,ae,Ye,Pe),j.edge=Il(ae,c,null,Pe),q.edge=Il(c,Ye,null,Pe),fo(C),fo(q)}}function Ts(c,g){var w=c.site,C=w.x,q=w.y,E=q-g;if(!E)return C;var G=c.P;if(!G)return-1/0;w=G.site;var N=w.x,j=w.y,ae=j-g;if(!ae)return N;var ie=N-C,ge=1/E-1/ae,me=ie/ae;return ge?(-me+Math.sqrt(me*me-2*ge*(ie*ie/(-2*ae)-j+ae/2+q-E/2)))/ge+C:(C+N)/2}function Fv(c,g){var w=c.N;if(w)return Ts(w,g);var C=c.site;return C.y===g?C.x:1/0}function Xo(c){this.site=c,this.edges=[]}Xo.prototype.prepare=function(){for(var c=this.edges,g=c.length,w;g--;)w=c[g].edge,(!w.b||!w.a)&&c.splice(g,1);return c.sort(Fl),c.length};function kf(c){for(var g=c[0][0],w=c[1][0],C=c[0][1],q=c[1][1],E,G,N,j,ae=uo,ie=ae.length,ge,me,Re,Ye,ye,Ce;ie--;)if(ge=ae[ie],!(!ge||!ge.prepare()))for(Re=ge.edges,Ye=Re.length,me=0;meke||_(j-G)>ke)&&(Re.splice(me,0,new jo(Hv(ge.site,Ce,_(N-g)ke?{x:g,y:_(E-g)ke?{x:_(G-q)ke?{x:w,y:_(E-w)ke?{x:_(G-C)=-$e)){var me=j*j+ae*ae,Re=ie*ie+Ce*Ce,Ye=(Ce*me-ae*Re)/ge,ye=(j*Re-ie*me)/ge,Ce=ye+N,De=Tf.pop()||new Jc;De.arc=c,De.site=q,De.x=Ye+G,De.y=Ce+Math.sqrt(Ye*Ye+ye*ye),De.cy=Ce,c.circle=De;for(var Ue=null,Ge=Nl._;Ge;)if(De.y0)){if(ye/=Re,Re<0){if(ye0){if(ye>me)return;ye>ge&&(ge=ye)}if(ye=w-N,!(!Re&&ye<0)){if(ye/=Re,Re<0){if(ye>me)return;ye>ge&&(ge=ye)}else if(Re>0){if(ye0)){if(ye/=Ye,Ye<0){if(ye0){if(ye>me)return;ye>ge&&(ge=ye)}if(ye=C-j,!(!Ye&&ye<0)){if(ye/=Ye,Ye<0){if(ye>me)return;ye>ge&&(ge=ye)}else if(Ye>0){if(ye0&&(q.a={x:N+ge*Re,y:j+ge*Ye}),me<1&&(q.b={x:N+me*Re,y:j+me*Ye}),q}}}}}}function xi(c){for(var g=so,w=Sf(c[0][0],c[0][1],c[1][0],c[1][1]),C=g.length,q;C--;)q=g[C],(!Iv(q,c)||!w(q)||_(q.a.x-q.b.x)=E)return;if(ie>me){if(!C)C={x:Ye,y:G};else if(C.y>=N)return;w={x:Ye,y:N}}else{if(!C)C={x:Ye,y:N};else if(C.y1)if(ie>me){if(!C)C={x:(G-De)/Ce,y:G};else if(C.y>=N)return;w={x:(N-De)/Ce,y:N}}else{if(!C)C={x:(N-De)/Ce,y:N};else if(C.y=E)return;w={x:E,y:Ce*E+De}}else{if(!C)C={x:E,y:Ce*E+De};else if(C.x=ie&&De.x<=me&&De.y>=ge&&De.y<=Re?[[ie,Re],[me,Re],[me,ge],[ie,ge]]:[];Ue.point=j[ye]}),ae}function N(j){return j.map(function(ae,ie){return{x:Math.round(C(ae,ie)/ke)*ke,y:Math.round(q(ae,ie)/ke)*ke,i:ie}})}return G.links=function(j){return Ss(N(j)).edges.filter(function(ae){return ae.l&&ae.r}).map(function(ae){return{source:j[ae.l.i],target:j[ae.r.i]}})},G.triangles=function(j){var ae=[];return Ss(N(j)).cells.forEach(function(ie,ge){for(var me=ie.site,Re=ie.edges.sort(Fl),Ye=-1,ye=Re.length,Ce,De,Ue=Re[ye-1].edge,Ge=Ue.l===me?Ue.r:Ue.l;++YeGe&&(Ge=ie.x),ie.y>Pe&&(Pe=ie.y),Re.push(ie.x),Ye.push(ie.y);else for(ye=0;yeGe&&(Ge=_r),Or>Pe&&(Pe=Or),Re.push(_r),Ye.push(Or)}var Wr=Ge-De,Gr=Pe-Ue;Wr>Gr?Pe=Ue+Wr:Ge=De+Gr;function Jr(Qr,ht,jt,Zn,on,Fr,_t,wt){if(!(isNaN(jt)||isNaN(Zn)))if(Qr.leaf){var Jt=Qr.x,Nn=Qr.y;if(Jt!=null)if(_(Jt-jt)+_(Nn-Zn)<.01)$r(Qr,ht,jt,Zn,on,Fr,_t,wt);else{var oa=Qr.point;Qr.x=Qr.y=Qr.point=null,$r(Qr,oa,Jt,Nn,on,Fr,_t,wt),$r(Qr,ht,jt,Zn,on,Fr,_t,wt)}else Qr.x=jt,Qr.y=Zn,Qr.point=ht}else $r(Qr,ht,jt,Zn,on,Fr,_t,wt)}function $r(Qr,ht,jt,Zn,on,Fr,_t,wt){var Jt=(on+_t)*.5,Nn=(Fr+wt)*.5,oa=jt>=Jt,Da=Zn>=Nn,ja=Da<<1|oa;Qr.leaf=!1,Qr=Qr.nodes[ja]||(Qr.nodes[ja]=gu()),oa?on=Jt:_t=Jt,Da?Fr=Nn:wt=Nn,Jr(Qr,ht,jt,Zn,on,Fr,_t,wt)}var bt=gu();if(bt.add=function(Qr){Jr(bt,Qr,+ge(Qr,++ye),+me(Qr,ye),De,Ue,Ge,Pe)},bt.visit=function(Qr){oi(Qr,bt,De,Ue,Ge,Pe)},bt.find=function(Qr){return mu(bt,Qr[0],Qr[1],De,Ue,Ge,Pe)},ye=-1,g==null){for(;++yeE||me>G||Re=_r,Gr=w>=Or,Jr=Gr<<1|Wr,$r=Jr+4;Jr<$r;++Jr)if(ie=Pe[Jr&3])switch(Jr&3){case 0:ae(ie,ge,me,_r,Or);break;case 1:ae(ie,_r,me,Re,Or);break;case 2:ae(ie,ge,Or,_r,Ye);break;case 3:ae(ie,_r,Or,Re,Ye);break}}}(c,C,q,E,G),j}e.interpolateRgb=yu;function yu(c,g){c=e.rgb(c),g=e.rgb(g);var w=c.r,C=c.g,q=c.b,E=g.r-w,G=g.g-C,N=g.b-q;return function(j){return"#"+Kr(Math.round(w+E*j))+Kr(Math.round(C+G*j))+Kr(Math.round(q+N*j))}}e.interpolateObject=Fa;function Fa(c,g){var w={},C={},q;for(q in c)q in g?w[q]=Qo(c[q],g[q]):C[q]=c[q];for(q in g)q in c||(C[q]=g[q]);return function(E){for(q in w)C[q]=w[q](E);return C}}e.interpolateNumber=Kn;function Kn(c,g){return c=+c,g=+g,function(w){return c*(1-w)+g*w}}e.interpolateString=Aa;function Aa(c,g){var w=Vi.lastIndex=Ls.lastIndex=0,C,q,E,G=-1,N=[],j=[];for(c=c+"",g=g+"";(C=Vi.exec(c))&&(q=Ls.exec(g));)(E=q.index)>w&&(E=g.slice(w,E),N[G]?N[G]+=E:N[++G]=E),(C=C[0])===(q=q[0])?N[G]?N[G]+=q:N[++G]=q:(N[++G]=null,j.push({i:G,x:Kn(C,q)})),w=Ls.lastIndex;return w=0&&!(C=e.interpolators[w](c,g)););return C}e.interpolators=[function(c,g){var w=typeof g;return(w==="string"?Dn.has(g.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(g)?yu:Aa:g instanceof pn?yu:Array.isArray(g)?Ol:w==="object"&&isNaN(g)?Fa:Kn)(c,g)}],e.interpolateArray=Ol;function Ol(c,g){var w=[],C=[],q=c.length,E=g.length,G=Math.min(c.length,g.length),N;for(N=0;N=0?c.slice(0,g):c,C=g>=0?c.slice(g+1):"in";return w=$c.get(w)||Cf,C=Bv.get(C)||V,Ov(C(w.apply(null,r.call(arguments,1))))};function Ov(c){return function(g){return g<=0?0:g>=1?1:c(g)}}function Lf(c){return function(g){return 1-c(1-g)}}function qf(c){return function(g){return .5*(g<.5?c(2*g):2-c(2-2*g))}}function Df(c){return c*c}function Ef(c){return c*c*c}function Kc(c){if(c<=0)return 0;if(c>=1)return 1;var g=c*c,w=g*c;return 4*(c<.5?w:3*(c-g)+w-.75)}function Qc(c){return function(g){return Math.pow(g,c)}}function qs(c){return 1-Math.cos(c*Hr)}function Ds(c){return Math.pow(2,10*(c-1))}function wi(c){return 1-Math.sqrt(1-c*c)}function bu(c,g){var w;return arguments.length<2&&(g=.45),arguments.length?w=g/qr*Math.asin(1/c):(c=1,w=g/4),function(C){return 1+c*Math.pow(2,-10*C)*Math.sin((C-w)*qr/g)}}function Es(c){return c||(c=1.70158),function(g){return g*g*((c+1)*g-c)}}function _u(c){return c<1/2.75?7.5625*c*c:c<2/2.75?7.5625*(c-=1.5/2.75)*c+.75:c<2.5/2.75?7.5625*(c-=2.25/2.75)*c+.9375:7.5625*(c-=2.625/2.75)*c+.984375}e.interpolateHcl=e0;function e0(c,g){c=e.hcl(c),g=e.hcl(g);var w=c.h,C=c.c,q=c.l,E=g.h-w,G=g.c-C,N=g.l-q;return isNaN(G)&&(G=0,C=isNaN(C)?g.c:C),isNaN(E)?(E=0,w=isNaN(w)?g.h:w):E>180?E-=360:E<-180&&(E+=360),function(j){return pa(w+E*j,C+G*j,q+N*j)+""}}e.interpolateHsl=Pf;function Pf(c,g){c=e.hsl(c),g=e.hsl(g);var w=c.h,C=c.s,q=c.l,E=g.h-w,G=g.s-C,N=g.l-q;return isNaN(G)&&(G=0,C=isNaN(C)?g.s:C),isNaN(E)?(E=0,w=isNaN(w)?g.h:w):E>180?E-=360:E<-180&&(E+=360),function(j){return da(w+E*j,C+G*j,q+N*j)+""}}e.interpolateLab=Uv;function Uv(c,g){c=e.lab(c),g=e.lab(g);var w=c.l,C=c.a,q=c.b,E=g.l-w,G=g.a-C,N=g.b-q;return function(j){return ms(w+E*j,C+G*j,q+N*j)+""}}e.interpolateRound=ho;function ho(c,g){return g-=c,function(w){return Math.round(c+g*w)}}e.transform=function(c){var g=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(w){if(w!=null){g.setAttribute("transform",w);var C=g.transform.baseVal.consolidate()}return new xu(C?C.matrix:Rf)})(c)};function xu(c){var g=[c.a,c.b],w=[c.c,c.d],C=Ps(g),q=Ul(g,w),E=Ps(Rs(w,g,-q))||0;g[0]*w[1]180?g+=360:g-c>180&&(c+=360),C.push({i:w.push(po(w)+"rotate(",null,")")-2,x:Kn(c,g)})):g&&w.push(po(w)+"rotate("+g+")")}function t0(c,g,w,C){c!==g?C.push({i:w.push(po(w)+"skewX(",null,")")-2,x:Kn(c,g)}):g&&w.push(po(w)+"skewX("+g+")")}function Nf(c,g,w,C){if(c[0]!==g[0]||c[1]!==g[1]){var q=w.push(po(w)+"scale(",null,",",null,")");C.push({i:q-4,x:Kn(c[0],g[0])},{i:q-2,x:Kn(c[1],g[1])})}else(g[0]!==1||g[1]!==1)&&w.push(po(w)+"scale("+g+")")}function wu(c,g){var w=[],C=[];return c=e.transform(c),g=e.transform(g),r0(c.translate,g.translate,w,C),zf(c.rotate,g.rotate,w,C),t0(c.skew,g.skew,w,C),Nf(c.scale,g.scale,w,C),c=g=null,function(q){for(var E=-1,G=C.length,N;++E0?E=Pe:(w.c=null,w.t=NaN,w=null,g.end({type:"end",alpha:E=0})):Pe>0&&(g.start({type:"start",alpha:E=Pe}),w=Rl(c.tick)),c):E},c.start=function(){var Pe,_r=Re.length,Or=Ye.length,Wr=C[0],Gr=C[1],Jr,$r;for(Pe=0;Pe<_r;++Pe)($r=Re[Pe]).index=Pe,$r.weight=0;for(Pe=0;Pe=0;)E.push(ie=ae[j]),ie.parent=N,ie.depth=N.depth+1;w&&(N.value=0),N.children=ae}else w&&(N.value=+w.call(C,N,N.depth)||0),delete N.children;return Ia(q,function(ge){var me,Re;c&&(me=ge.children)&&me.sort(c),w&&(Re=ge.parent)&&(Re.value+=ge.value)}),G}return C.sort=function(q){return arguments.length?(c=q,C):c},C.children=function(q){return arguments.length?(g=q,C):g},C.value=function(q){return arguments.length?(w=q,C):w},C.revalue=function(q){return w&&(Ai(q,function(E){E.children&&(E.value=0)}),Ia(q,function(E){var G;E.children||(E.value=+w.call(C,E,E.depth)||0),(G=E.parent)&&(G.value+=E.value)})),q},C};function Wi(c,g){return e.rebind(c,g,"sort","children","value"),c.nodes=c,c.links=Za,c}function Ai(c,g){for(var w=[c];(c=w.pop())!=null;)if(g(c),(q=c.children)&&(C=q.length))for(var C,q;--C>=0;)w.push(q[C])}function Ia(c,g){for(var w=[c],C=[];(c=w.pop())!=null;)if(C.push(c),(G=c.children)&&(E=G.length))for(var q=-1,E,G;++qq&&(q=N),C.push(N)}for(G=0;GC&&(w=g,C=q);return w}function Is(c){return c.reduce(rl,0)}function rl(c,g){return c+g[1]}e.layout.histogram=function(){var c=!0,g=Number,w=Vl,C=Hs;function q(E,me){for(var N=[],j=E.map(g,this),ae=w.call(this,j,me),ie=C.call(this,ae,j,me),ge,me=-1,Re=j.length,Ye=ie.length-1,ye=c?1:1/Re,Ce;++me0)for(me=-1;++me=ae[0]&&Ce<=ae[1]&&(ge=N[e.bisect(ie,Ce,1,Ye)-1],ge.y+=ye,ge.push(E[me]));return N}return q.value=function(E){return arguments.length?(g=E,q):g},q.range=function(E){return arguments.length?(w=At(E),q):w},q.bins=function(E){return arguments.length?(C=typeof E=="number"?function(G){return tl(G,E)}:At(E),q):C},q.frequency=function(E){return arguments.length?(c=!!E,q):c},q};function Hs(c,g){return tl(c,Math.ceil(Math.log(g.length)/Math.LN2+1))}function tl(c,g){for(var w=-1,C=+c[0],q=(c[1]-C)/g,E=[];++w<=g;)E[w]=q*w+C;return E}function Vl(c){return[e.min(c),e.max(c)]}e.layout.pack=function(){var c=e.layout.hierarchy().sort(Tu),g=0,w=[1,1],C;function q(E,G){var N=c.call(this,E,G),j=N[0],ae=w[0],ie=w[1],ge=C==null?Math.sqrt:typeof C=="function"?C:function(){return C};if(j.x=j.y=0,Ia(j,function(Re){Re.r=+ge(Re.value)}),Ia(j,f0),g){var me=g*(C?1:Math.max(2*j.r/ae,2*j.r/ie))/2;Ia(j,function(Re){Re.r+=me}),Ia(j,f0),Ia(j,function(Re){Re.r-=me})}return Su(j,ae/2,ie/2,C?1:1/Math.max(2*j.r/ae,2*j.r/ie)),N}return q.size=function(E){return arguments.length?(w=E,q):w},q.radius=function(E){return arguments.length?(C=E==null||typeof E=="function"?E:+E,q):C},q.padding=function(E){return arguments.length?(g=+E,q):g},Wi(q,c)};function Tu(c,g){return c.value-g.value}function Bs(c,g){var w=c._pack_next;c._pack_next=g,g._pack_prev=c,g._pack_next=w,w._pack_prev=g}function u0(c,g){c._pack_next=g,g._pack_prev=c}function ku(c,g){var w=g.x-c.x,C=g.y-c.y,q=c.r+g.r;return .999*q*q>w*w+C*C}function f0(c){if(!(g=c.children)||!(me=g.length))return;var g,w=1/0,C=-1/0,q=1/0,E=-1/0,G,N,j,ae,ie,ge,me;function Re(Pe){w=Math.min(Pe.x-Pe.r,w),C=Math.max(Pe.x+Pe.r,C),q=Math.min(Pe.y-Pe.r,q),E=Math.max(Pe.y+Pe.r,E)}if(g.forEach(c0),G=g[0],G.x=-G.r,G.y=0,Re(G),me>1&&(N=g[1],N.x=N.r,N.y=0,Re(N),me>2))for(j=g[2],Wn(G,N,j),Re(j),Bs(G,j),G._pack_prev=j,Bs(j,N),N=G._pack_next,ae=3;aeCe.x&&(Ce=_r),_r.depth>De.depth&&(De=_r)});var Ue=g(ye,Ce)/2-ye.x,Ge=w[0]/(Ce.x+g(Ce,ye)/2+Ue),Pe=w[1]/(De.depth||1);Ai(Re,function(_r){_r.x=(_r.x+Ue)*Ge,_r.y=_r.depth*Pe})}return me}function E(ie){for(var ge={A:null,children:[ie]},me=[ge],Re;(Re=me.pop())!=null;)for(var Ye=Re.children,ye,Ce=0,De=Ye.length;Ce0&&(Os(I(ye,ie,me),ie,_r),De+=_r,Ue+=_r),Ge+=ye.m,De+=Re.m,Pe+=Ce.m,Ue+=Ye.m;ye&&!Cu(Ye)&&(Ye.t=ye,Ye.m+=Ge-Ue),Re&&!Wl(Ce)&&(Ce.t=Re,Ce.m+=De-Pe,me=ie)}return me}function ae(ie){ie.x*=w[0],ie.y=ie.depth*w[1]}return q.separation=function(ie){return arguments.length?(g=ie,q):g},q.size=function(ie){return arguments.length?(C=(w=ie)==null?ae:null,q):C?null:w},q.nodeSize=function(ie){return arguments.length?(C=(w=ie)==null?null:ae,q):C?w:null},Wi(q,c)};function li(c,g){return c.parent==g.parent?1:2}function Wl(c){var g=c.children;return g.length?g[0]:c.t}function Cu(c){var g=c.children,w;return(w=g.length)?g[w-1]:c.t}function Os(c,g,w){var C=w/(g.i-c.i);g.c-=C,g.s+=w,c.c+=C,g.z+=w,g.m+=w}function Yf(c){for(var g=0,w=0,C=c.children,q=C.length,E;--q>=0;)E=C[q],E.z+=g,E.m+=g,g+=E.s+(w+=E.c)}function I(c,g,w){return c.a.parent===g.parent?c.a:w}e.layout.cluster=function(){var c=e.layout.hierarchy().sort(null).value(null),g=li,w=[1,1],C=!1;function q(E,G){var N=c.call(this,E,G),j=N[0],ae,ie=0;Ia(j,function(ye){var Ce=ye.children;Ce&&Ce.length?(ye.x=ce(Ce),ye.y=J(Ce)):(ye.x=ae?ie+=g(ye,ae):0,ye.y=0,ae=ye)});var ge=oe(j),me=we(j),Re=ge.x-g(ge,me)/2,Ye=me.x+g(me,ge)/2;return Ia(j,C?function(ye){ye.x=(ye.x-j.x)*w[0],ye.y=(j.y-ye.y)*w[1]}:function(ye){ye.x=(ye.x-Re)/(Ye-Re)*w[0],ye.y=(1-(j.y?ye.y/j.y:1))*w[1]}),N}return q.separation=function(E){return arguments.length?(g=E,q):g},q.size=function(E){return arguments.length?(C=(w=E)==null,q):C?null:w},q.nodeSize=function(E){return arguments.length?(C=(w=E)!=null,q):C?w:null},Wi(q,c)};function J(c){return 1+e.max(c,function(g){return g.y})}function ce(c){return c.reduce(function(g,w){return g+w.x},0)/c.length}function oe(c){var g=c.children;return g&&g.length?oe(g[0]):c}function we(c){var g=c.children,w;return g&&(w=g.length)?we(g[w-1]):c}e.layout.treemap=function(){var c=e.layout.hierarchy(),g=Math.round,w=[1,1],C=null,q=He,E=!1,G,N="squarify",j=.5*(1+Math.sqrt(5));function ae(ye,Ce){for(var De=-1,Ue=ye.length,Ge,Pe;++De0;)Ue.push(Pe=Ge[Gr-1]),Ue.area+=Pe.area,N!=="squarify"||(Or=me(Ue,Wr))<=_r?(Ge.pop(),_r=Or):(Ue.area-=Ue.pop().area,Re(Ue,Wr,De,!1),Wr=Math.min(De.dx,De.dy),Ue.length=Ue.area=0,_r=1/0);Ue.length&&(Re(Ue,Wr,De,!0),Ue.length=Ue.area=0),Ce.forEach(ie)}}function ge(ye){var Ce=ye.children;if(Ce&&Ce.length){var De=q(ye),Ue=Ce.slice(),Ge,Pe=[];for(ae(Ue,De.dx*De.dy/ye.value),Pe.area=0;Ge=Ue.pop();)Pe.push(Ge),Pe.area+=Ge.area,Ge.z!=null&&(Re(Pe,Ge.z?De.dx:De.dy,De,!Ue.length),Pe.length=Pe.area=0);Ce.forEach(ge)}}function me(ye,Ce){for(var De=ye.area,Ue,Ge=0,Pe=1/0,_r=-1,Or=ye.length;++_rGe&&(Ge=Ue));return De*=De,Ce*=Ce,De?Math.max(Ce*Ge*j/De,De/(Ce*Pe*j)):1/0}function Re(ye,Ce,De,Ue){var Ge=-1,Pe=ye.length,_r=De.x,Or=De.y,Wr=Ce?g(ye.area/Ce):0,Gr;if(Ce==De.dx){for((Ue||Wr>De.dy)&&(Wr=De.dy);++GeDe.dx)&&(Wr=De.dx);++Ge1);return c+g*C*Math.sqrt(-2*Math.log(E)/E)}},logNormal:function(){var c=e.random.normal.apply(e,arguments);return function(){return Math.exp(c())}},bates:function(c){var g=e.random.irwinHall(c);return function(){return g()/c}},irwinHall:function(c){return function(){for(var g=0,w=0;w2?wr:br,ae=C?If:Ff;return q=j(c,g,ae,w),E=j(g,c,ae,Qo),N}function N(j){return q(j)}return N.invert=function(j){return E(j)},N.domain=function(j){return arguments.length?(c=j.map(Number),G()):c},N.range=function(j){return arguments.length?(g=j,G()):g},N.rangeRound=function(j){return N.range(j).interpolate(ho)},N.clamp=function(j){return arguments.length?(C=j,G()):C},N.interpolate=function(j){return arguments.length?(w=j,G()):w},N.ticks=function(j){return nt(c,j)},N.tickFormat=function(j,ae){return d3_scale_linearTickFormat(c,j,ae)},N.nice=function(j){return jr(c,j),G()},N.copy=function(){return Lr(c,g,w,C)},G()}function et(c,g){return e.rebind(c,g,"range","rangeRound","interpolate","clamp")}function jr(c,g){return Qe(c,hr(tt(c,g)[2])),Qe(c,hr(tt(c,g)[2])),c}function tt(c,g){g==null&&(g=10);var w=or(c),C=w[1]-w[0],q=Math.pow(10,Math.floor(Math.log(C/g)/Math.LN10)),E=g/C*q;return E<=.15?q*=10:E<=.35?q*=5:E<=.75&&(q*=2),w[0]=Math.ceil(w[0]/q)*q,w[1]=Math.floor(w[1]/q)*q+q*.5,w[2]=q,w}function nt(c,g){return e.range.apply(e,tt(c,g))}var Dr={s:1,g:1,p:1,r:1,e:1};function Ir(c){return-Math.floor(Math.log(c)/Math.LN10+.01)}function it(c,g){var w=Ir(g[2]);return c in Dr?Math.abs(w-Ir(Math.max(_(g[0]),_(g[1]))))+ +(c!=="e"):w-(c==="%")*2}e.scale.log=function(){return pt(e.scale.linear().domain([0,1]),10,!0,[1,10])};function pt(c,g,w,C){function q(N){return(w?Math.log(N<0?0:N):-Math.log(N>0?0:-N))/Math.log(g)}function E(N){return w?Math.pow(g,N):-Math.pow(g,-N)}function G(N){return c(q(N))}return G.invert=function(N){return E(c.invert(N))},G.domain=function(N){return arguments.length?(w=N[0]>=0,c.domain((C=N.map(Number)).map(q)),G):C},G.base=function(N){return arguments.length?(g=+N,c.domain(C.map(q)),G):g},G.nice=function(){var N=Qe(C.map(q),w?Math:Yt);return c.domain(N),C=N.map(E),G},G.ticks=function(){var N=or(C),j=[],ae=N[0],ie=N[1],ge=Math.floor(q(ae)),me=Math.ceil(q(ie)),Re=g%1?2:g;if(isFinite(me-ge)){if(w){for(;ge0;Ye--)j.push(E(ge)*Ye);for(ge=0;j[ge]ie;me--);j=j.slice(ge,me)}return j},G.copy=function(){return pt(c.copy(),g,w,C)},et(G,c)}var Yt={floor:function(c){return-Math.ceil(-c)},ceil:function(c){return-Math.floor(-c)}};e.scale.pow=function(){return en(e.scale.linear(),1,[0,1])};function en(c,g,w){var C=Wt(g),q=Wt(1/g);function E(G){return c(C(G))}return E.invert=function(G){return q(c.invert(G))},E.domain=function(G){return arguments.length?(c.domain((w=G.map(Number)).map(C)),E):w},E.ticks=function(G){return nt(w,G)},E.tickFormat=function(G,N){return d3_scale_linearTickFormat(w,G,N)},E.nice=function(G){return E.domain(jr(w,G))},E.exponent=function(G){return arguments.length?(C=Wt(g=G),q=Wt(1/g),c.domain(w.map(C)),E):g},E.copy=function(){return en(c.copy(),g,w)},et(E,c)}function Wt(c){return function(g){return g<0?-Math.pow(-g,c):Math.pow(g,c)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return gn([],{t:"range",a:[[]]})};function gn(c,g){var w,C,q;function E(N){return C[((w.get(N)||(g.t==="range"?w.set(N,c.push(N)):NaN))-1)%C.length]}function G(N,j){return e.range(c.length).map(function(ae){return N+j*ae})}return E.domain=function(N){if(!arguments.length)return c;c=[],w=new b;for(var j=-1,ae=N.length,ie;++j0?w[E-1]:c[0],Eme?0:1;if(ie=Vr)return j(ie,Ye)+(ae?j(ae,1-Ye):"")+"Z";var ye,Ce,De,Ue,Ge=0,Pe=0,_r,Or,Wr,Gr,Jr,$r,bt,Qr,ht=[];if((Ue=(+G.apply(this,arguments)||0)/2)&&(De=C===Zi?Math.sqrt(ae*ae+ie*ie):+C.apply(this,arguments),Ye||(Pe*=-1),ie&&(Pe=Fn(De/ie*Math.sin(Ue))),ae&&(Ge=Fn(De/ae*Math.sin(Ue)))),ie){_r=ie*Math.cos(ge+Pe),Or=ie*Math.sin(ge+Pe),Wr=ie*Math.cos(me-Pe),Gr=ie*Math.sin(me-Pe);var jt=Math.abs(me-ge-2*Pe)<=We?0:1;if(Pe&&Lu(_r,Or,Wr,Gr)===Ye^jt){var Zn=(ge+me)/2;_r=ie*Math.cos(Zn),Or=ie*Math.sin(Zn),Wr=Gr=null}}else _r=Or=0;if(ae){Jr=ae*Math.cos(me-Ge),$r=ae*Math.sin(me-Ge),bt=ae*Math.cos(ge+Ge),Qr=ae*Math.sin(ge+Ge);var on=Math.abs(ge-me+2*Ge)<=We?0:1;if(Ge&&Lu(Jr,$r,bt,Qr)===1-Ye^on){var Fr=(ge+me)/2;Jr=ae*Math.cos(Fr),$r=ae*Math.sin(Fr),bt=Qr=null}}else Jr=$r=0;if(Re>ke&&(ye=Math.min(Math.abs(ie-ae)/2,+w.apply(this,arguments)))>.001){Ce=ae0?0:1}function v0(c,g,w,C,q){var E=c[0]-g[0],G=c[1]-g[1],N=(q?C:-C)/Math.sqrt(E*E+G*G),j=N*G,ae=-N*E,ie=c[0]+j,ge=c[1]+ae,me=g[0]+j,Re=g[1]+ae,Ye=(ie+me)/2,ye=(ge+Re)/2,Ce=me-ie,De=Re-ge,Ue=Ce*Ce+De*De,Ge=w-C,Pe=ie*Re-me*ge,_r=(De<0?-1:1)*Math.sqrt(Math.max(0,Ge*Ge*Ue-Pe*Pe)),Or=(Pe*De-Ce*_r)/Ue,Wr=(-Pe*Ce-De*_r)/Ue,Gr=(Pe*De+Ce*_r)/Ue,Jr=(-Pe*Ce+De*_r)/Ue,$r=Or-Ye,bt=Wr-ye,Qr=Gr-Ye,ht=Jr-ye;return $r*$r+bt*bt>Qr*Qr+ht*ht&&(Or=Gr,Wr=Jr),[[Or-j,Wr-ae],[Or*w/Ge,Wr*w/Ge]]}function h0(){return!0}function Uh(c){var g=zl,w=bs,C=h0,q=Xi,E=q.key,G=.7;function N(j){var ae=[],ie=[],ge=-1,me=j.length,Re,Ye=At(g),ye=At(w);function Ce(){ae.push("M",q(c(ie),G))}for(;++ge1?c.join("L"):c+"Z"}function Yh(c){return c.join("L")+"Z"}function Gh(c){for(var g=0,w=c.length,C=c[0],q=[C[0],",",C[1]];++g1&&q.push("H",C[0]),q.join("")}function d0(c){for(var g=0,w=c.length,C=c[0],q=[C[0],",",C[1]];++g1){N=g[1],E=c[j],j++,C+="C"+(q[0]+G[0])+","+(q[1]+G[1])+","+(E[0]-N[0])+","+(E[1]-N[1])+","+E[0]+","+E[1];for(var ae=2;ae9&&(E=w*3/Math.sqrt(E),G[N]=E*C,G[N+1]=E*q));for(N=-1;++N<=j;)E=(c[Math.min(j,N+1)][0]-c[Math.max(0,N-1)][0])/(6*(1+G[N]*G[N])),g.push([E||0,G[N]*E||0]);return g}function ue(c){return c.length<3?Xi(c):c[0]+p0(c,Z(c))}e.svg.line.radial=function(){var c=Uh(ve);return c.radius=c.x,delete c.x,c.angle=c.y,delete c.y,c};function ve(c){for(var g,w=-1,C=c.length,q,E;++wWe)+",1 "+ge}function ae(ie,ge,me,Re){return"Q 0,0 "+Re}return E.radius=function(ie){return arguments.length?(w=At(ie),E):w},E.source=function(ie){return arguments.length?(c=At(ie),E):c},E.target=function(ie){return arguments.length?(g=At(ie),E):g},E.startAngle=function(ie){return arguments.length?(C=At(ie),E):C},E.endAngle=function(ie){return arguments.length?(q=At(ie),E):q},E};function Le(c){return c.radius}e.svg.diagonal=function(){var c=he,g=xe,w=ze;function C(q,E){var G=c.call(this,q,E),N=g.call(this,q,E),j=(G.y+N.y)/2,ae=[G,{x:G.x,y:j},{x:N.x,y:j},N];return ae=ae.map(w),"M"+ae[0]+"C"+ae[1]+" "+ae[2]+" "+ae[3]}return C.source=function(q){return arguments.length?(c=At(q),C):c},C.target=function(q){return arguments.length?(g=At(q),C):g},C.projection=function(q){return arguments.length?(w=q,C):w},C};function ze(c){return[c.x,c.y]}e.svg.diagonal.radial=function(){var c=e.svg.diagonal(),g=ze,w=c.projection;return c.projection=function(C){return arguments.length?w(tr(g=C)):g},c};function tr(c){return function(){var g=c.apply(this,arguments),w=g[0],C=g[1]-Hr;return[w*Math.cos(C),w*Math.sin(C)]}}e.svg.symbol=function(){var c=Ar,g=vr;function w(C,q){return(at.get(c.call(this,C,q))||Zr)(g.call(this,C,q))}return w.type=function(C){return arguments.length?(c=At(C),w):c},w.size=function(C){return arguments.length?(g=At(C),w):g},w};function vr(){return 64}function Ar(){return"circle"}function Zr(c){var g=Math.sqrt(c/We);return"M0,"+g+"A"+g+","+g+" 0 1,1 0,"+-g+"A"+g+","+g+" 0 1,1 0,"+g+"Z"}var at=e.map({circle:Zr,cross:function(c){var g=Math.sqrt(c/5)/2;return"M"+-3*g+","+-g+"H"+-g+"V"+-3*g+"H"+g+"V"+-g+"H"+3*g+"V"+g+"H"+g+"V"+3*g+"H"+-g+"V"+g+"H"+-3*g+"Z"},diamond:function(c){var g=Math.sqrt(c/(2*st)),w=g*st;return"M0,"+-g+"L"+w+",0 0,"+g+" "+-w+",0Z"},square:function(c){var g=Math.sqrt(c)/2;return"M"+-g+","+-g+"L"+g+","+-g+" "+g+","+g+" "+-g+","+g+"Z"},"triangle-down":function(c){var g=Math.sqrt(c/ot),w=g*ot/2;return"M0,"+w+"L"+g+","+-w+" "+-g+","+-w+"Z"},"triangle-up":function(c){var g=Math.sqrt(c/ot),w=g*ot/2;return"M0,"+-w+"L"+g+","+w+" "+-g+","+w+"Z"}});e.svg.symbolTypes=at.keys();var ot=Math.sqrt(3),st=Math.tan(30*lt);pe.transition=function(c){for(var g=ma||++zn,w=La(c),C=[],q,E,G=ui||{time:Date.now(),ease:Kc,delay:0,duration:250},N=-1,j=this.length;++N0;)ge[--Ue].call(c,De);if(Ce>=1)return G.event&&G.event.end.call(c,c.__data__,g),--E.count?delete E[C]:delete c[w],1}G||(N=q.time,j=Rl(me,0,N),G=E[C]={tween:new b,time:N,timer:j,delay:q.delay,duration:q.duration,ease:q.ease,index:g},q=null,++E.count)}e.svg.axis=function(){var c=e.scale.linear(),g=ji,w=6,C=6,q=3,E=[10],G=null,N;function j(ae){ae.each(function(){var ie=e.select(this),ge=this.__chart__||c,me=this.__chart__=c.copy(),Re=G==null?me.ticks?me.ticks.apply(me,E):me.domain():G,Ye=N==null?me.tickFormat?me.tickFormat.apply(me,E):V:N,ye=ie.selectAll(".tick").data(Re,me),Ce=ye.enter().insert("g",".domain").attr("class","tick").style("opacity",ke),De=e.transition(ye.exit()).style("opacity",ke).remove(),Ue=e.transition(ye.order()).style("opacity",1),Ge=Math.max(w,0)+q,Pe,_r=ur(me),Or=ie.selectAll(".domain").data([0]),Wr=(Or.enter().append("path").attr("class","domain"),e.transition(Or));Ce.append("line"),Ce.append("text");var Gr=Ce.select("line"),Jr=Ue.select("line"),$r=ye.select("text").text(Ye),bt=Ce.select("text"),Qr=Ue.select("text"),ht=g==="top"||g==="left"?-1:1,jt,Zn,on,Fr;if(g==="bottom"||g==="top"?(Pe=ll,jt="x",on="y",Zn="x2",Fr="y2",$r.attr("dy",ht<0?"0em":".71em").style("text-anchor","middle"),Wr.attr("d","M"+_r[0]+","+ht*C+"V0H"+_r[1]+"V"+ht*C)):(Pe=sl,jt="y",on="x",Zn="y2",Fr="x2",$r.attr("dy",".32em").style("text-anchor",ht<0?"end":"start"),Wr.attr("d","M"+ht*C+","+_r[0]+"H0V"+_r[1]+"H"+ht*C)),Gr.attr(Fr,ht*w),bt.attr(on,ht*Ge),Jr.attr(Zn,0).attr(Fr,ht*w),Qr.attr(jt,0).attr(on,ht*Ge),me.rangeBand){var _t=me,wt=_t.rangeBand()/2;ge=me=function(Jt){return _t(Jt)+wt}}else ge.rangeBand?ge=me:De.call(Pe,me,ge);Ce.call(Pe,ge,me),Ue.call(Pe,me,me)})}return j.scale=function(ae){return arguments.length?(c=ae,j):c},j.orient=function(ae){return arguments.length?(g=ae in ol?ae+"":ji,j):g},j.ticks=function(){return arguments.length?(E=t(arguments),j):E},j.tickValues=function(ae){return arguments.length?(G=ae,j):G},j.tickFormat=function(ae){return arguments.length?(N=ae,j):N},j.tickSize=function(ae){var ie=arguments.length;return ie?(w=+ae,C=+arguments[ie-1],j):w},j.innerTickSize=function(ae){return arguments.length?(w=+ae,j):w},j.outerTickSize=function(ae){return arguments.length?(C=+ae,j):C},j.tickPadding=function(ae){return arguments.length?(q=+ae,j):q},j.tickSubdivide=function(){return arguments.length&&j},j};var ji="bottom",ol={top:1,right:1,bottom:1,left:1};function ll(c,g,w){c.attr("transform",function(C){var q=g(C);return"translate("+(isFinite(q)?q:w(C))+",0)"})}function sl(c,g,w){c.attr("transform",function(C){var q=g(C);return"translate(0,"+(isFinite(q)?q:w(C))+")"})}e.svg.brush=function(){var c=Ne(ie,"brushstart","brush","brushend"),g=null,w=null,C=[0,0],q=[0,0],E,G,N=!0,j=!0,ae=go[0];function ie(ye){ye.each(function(){var Ce=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Ye).on("touchstart.brush",Ye),De=Ce.selectAll(".background").data([0]);De.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ce.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Ue=Ce.selectAll(".resize").data(ae,V);Ue.exit().remove(),Ue.enter().append("g").attr("class",function(Or){return"resize "+Or}).style("cursor",function(Or){return Xl[Or]}).append("rect").attr("x",function(Or){return/[ew]$/.test(Or)?-3:null}).attr("y",function(Or){return/^[ns]/.test(Or)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Ue.style("display",ie.empty()?"none":null);var Ge=e.transition(Ce),Pe=e.transition(De),_r;g&&(_r=ur(g),Pe.attr("x",_r[0]).attr("width",_r[1]-_r[0]),me(Ge)),w&&(_r=ur(w),Pe.attr("y",_r[0]).attr("height",_r[1]-_r[0]),Re(Ge)),ge(Ge)})}ie.event=function(ye){ye.each(function(){var Ce=c.of(this,arguments),De={x:C,y:q,i:E,j:G},Ue=this.__chart__||De;this.__chart__=De,ma?e.select(this).transition().each("start.brush",function(){E=Ue.i,G=Ue.j,C=Ue.x,q=Ue.y,Ce({type:"brushstart"})}).tween("brush:brush",function(){var Ge=Ol(C,De.x),Pe=Ol(q,De.y);return E=G=null,function(_r){C=De.x=Ge(_r),q=De.y=Pe(_r),Ce({type:"brush",mode:"resize"})}}).each("end.brush",function(){E=De.i,G=De.j,Ce({type:"brush",mode:"resize"}),Ce({type:"brushend"})}):(Ce({type:"brushstart"}),Ce({type:"brush",mode:"resize"}),Ce({type:"brushend"}))})};function ge(ye){ye.selectAll(".resize").attr("transform",function(Ce){return"translate("+C[+/e$/.test(Ce)]+","+q[+/^s/.test(Ce)]+")"})}function me(ye){ye.select(".extent").attr("x",C[0]),ye.selectAll(".extent,.n>rect,.s>rect").attr("width",C[1]-C[0])}function Re(ye){ye.select(".extent").attr("y",q[0]),ye.selectAll(".extent,.e>rect,.w>rect").attr("height",q[1]-q[0])}function Ye(){var ye=this,Ce=e.select(e.event.target),De=c.of(ye,arguments),Ue=e.select(ye),Ge=Ce.datum(),Pe=!/^(n|s)$/.test(Ge)&&g,_r=!/^(e|w)$/.test(Ge)&&w,Or=Ce.classed("extent"),Wr=Pr(ye),Gr,Jr=e.mouse(ye),$r,bt=e.select(i(ye)).on("keydown.brush",jt).on("keyup.brush",Zn);if(e.event.changedTouches?bt.on("touchmove.brush",on).on("touchend.brush",_t):bt.on("mousemove.brush",on).on("mouseup.brush",_t),Ue.interrupt().selectAll("*").interrupt(),Or)Jr[0]=C[0]-Jr[0],Jr[1]=q[0]-Jr[1];else if(Ge){var Qr=+/w$/.test(Ge),ht=+/^n/.test(Ge);$r=[C[1-Qr]-Jr[0],q[1-ht]-Jr[1]],Jr[0]=C[Qr],Jr[1]=q[ht]}else e.event.altKey&&(Gr=Jr.slice());Ue.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ce.style("cursor")),De({type:"brushstart"}),on();function jt(){e.event.keyCode==32&&(Or||(Gr=null,Jr[0]-=C[1],Jr[1]-=q[1],Or=2),qe())}function Zn(){e.event.keyCode==32&&Or==2&&(Jr[0]+=C[1],Jr[1]+=q[1],Or=0,qe())}function on(){var wt=e.mouse(ye),Jt=!1;$r&&(wt[0]+=$r[0],wt[1]+=$r[1]),Or||(e.event.altKey?(Gr||(Gr=[(C[0]+C[1])/2,(q[0]+q[1])/2]),Jr[0]=C[+(wt[0]{(function(e,r){typeof Qh=="object"&&typeof V_!="undefined"?r(Qh):(e=e||self,r(e.d3=e.d3||{}))})(Qh,function(e){"use strict";var r=new Date,t=new Date;function n(Ae,Ve,je,zr){function kr(er){return Ae(er=arguments.length===0?new Date:new Date(+er)),er}return kr.floor=function(er){return Ae(er=new Date(+er)),er},kr.ceil=function(er){return Ae(er=new Date(er-1)),Ve(er,1),Ae(er),er},kr.round=function(er){var Ke=kr(er),mr=kr.ceil(er);return er-Ke0))return Mr;do Mr.push(gr=new Date(+er)),Ve(er,mr),Ae(er);while(gr=Ke)for(;Ae(Ke),!er(Ke);)Ke.setTime(Ke-1)},function(Ke,mr){if(Ke>=Ke)if(mr<0)for(;++mr<=0;)for(;Ve(Ke,-1),!er(Ke););else for(;--mr>=0;)for(;Ve(Ke,1),!er(Ke););})},je&&(kr.count=function(er,Ke){return r.setTime(+er),t.setTime(+Ke),Ae(r),Ae(t),Math.floor(je(r,t))},kr.every=function(er){return er=Math.floor(er),!isFinite(er)||!(er>0)?null:er>1?kr.filter(zr?function(Ke){return zr(Ke)%er===0}:function(Ke){return kr.count(0,Ke)%er===0}):kr}),kr}var a=n(function(){},function(Ae,Ve){Ae.setTime(+Ae+Ve)},function(Ae,Ve){return Ve-Ae});a.every=function(Ae){return Ae=Math.floor(Ae),!isFinite(Ae)||!(Ae>0)?null:Ae>1?n(function(Ve){Ve.setTime(Math.floor(Ve/Ae)*Ae)},function(Ve,je){Ve.setTime(+Ve+je*Ae)},function(Ve,je){return(je-Ve)/Ae}):a};var i=a.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,v=n(function(Ae){Ae.setTime(Ae-Ae.getMilliseconds())},function(Ae,Ve){Ae.setTime(+Ae+Ve*o)},function(Ae,Ve){return(Ve-Ae)/o},function(Ae){return Ae.getUTCSeconds()}),h=v.range,d=n(function(Ae){Ae.setTime(Ae-Ae.getMilliseconds()-Ae.getSeconds()*o)},function(Ae,Ve){Ae.setTime(+Ae+Ve*l)},function(Ae,Ve){return(Ve-Ae)/l},function(Ae){return Ae.getMinutes()}),m=d.range,p=n(function(Ae){Ae.setTime(Ae-Ae.getMilliseconds()-Ae.getSeconds()*o-Ae.getMinutes()*l)},function(Ae,Ve){Ae.setTime(+Ae+Ve*s)},function(Ae,Ve){return(Ve-Ae)/s},function(Ae){return Ae.getHours()}),y=p.range,_=n(function(Ae){Ae.setHours(0,0,0,0)},function(Ae,Ve){Ae.setDate(Ae.getDate()+Ve)},function(Ae,Ve){return(Ve-Ae-(Ve.getTimezoneOffset()-Ae.getTimezoneOffset())*l)/u},function(Ae){return Ae.getDate()-1}),S=_.range;function x(Ae){return n(function(Ve){Ve.setDate(Ve.getDate()-(Ve.getDay()+7-Ae)%7),Ve.setHours(0,0,0,0)},function(Ve,je){Ve.setDate(Ve.getDate()+je*7)},function(Ve,je){return(je-Ve-(je.getTimezoneOffset()-Ve.getTimezoneOffset())*l)/f})}var b=x(0),A=x(1),k=x(2),M=x(3),D=x(4),z=x(5),F=x(6),H=b.range,Y=A.range,O=k.range,X=M.range,V=D.range,ee=z.range,te=F.range,K=n(function(Ae){Ae.setDate(1),Ae.setHours(0,0,0,0)},function(Ae,Ve){Ae.setMonth(Ae.getMonth()+Ve)},function(Ae,Ve){return Ve.getMonth()-Ae.getMonth()+(Ve.getFullYear()-Ae.getFullYear())*12},function(Ae){return Ae.getMonth()}),re=K.range,fe=n(function(Ae){Ae.setMonth(0,1),Ae.setHours(0,0,0,0)},function(Ae,Ve){Ae.setFullYear(Ae.getFullYear()+Ve)},function(Ae,Ve){return Ve.getFullYear()-Ae.getFullYear()},function(Ae){return Ae.getFullYear()});fe.every=function(Ae){return!isFinite(Ae=Math.floor(Ae))||!(Ae>0)?null:n(function(Ve){Ve.setFullYear(Math.floor(Ve.getFullYear()/Ae)*Ae),Ve.setMonth(0,1),Ve.setHours(0,0,0,0)},function(Ve,je){Ve.setFullYear(Ve.getFullYear()+je*Ae)})};var de=fe.range,qe=n(function(Ae){Ae.setUTCSeconds(0,0)},function(Ae,Ve){Ae.setTime(+Ae+Ve*l)},function(Ae,Ve){return(Ve-Ae)/l},function(Ae){return Ae.getUTCMinutes()}),Be=qe.range,Ne=n(function(Ae){Ae.setUTCMinutes(0,0,0)},function(Ae,Ve){Ae.setTime(+Ae+Ve*s)},function(Ae,Ve){return(Ve-Ae)/s},function(Ae){return Ae.getUTCHours()}),Ie=Ne.range,Se=n(function(Ae){Ae.setUTCHours(0,0,0,0)},function(Ae,Ve){Ae.setUTCDate(Ae.getUTCDate()+Ve)},function(Ae,Ve){return(Ve-Ae)/u},function(Ae){return Ae.getUTCDate()-1}),Xe=Se.range;function se(Ae){return n(function(Ve){Ve.setUTCDate(Ve.getUTCDate()-(Ve.getUTCDay()+7-Ae)%7),Ve.setUTCHours(0,0,0,0)},function(Ve,je){Ve.setUTCDate(Ve.getUTCDate()+je*7)},function(Ve,je){return(je-Ve)/f})}var be=se(0),Te=se(1),pe=se(2),W=se(3),Q=se(4),$=se(5),Me=se(6),Fe=be.range,Oe=Te.range,fr=pe.range,nr=W.range,Ze=Q.range,ar=$.range,lr=Me.range,ir=n(function(Ae){Ae.setUTCDate(1),Ae.setUTCHours(0,0,0,0)},function(Ae,Ve){Ae.setUTCMonth(Ae.getUTCMonth()+Ve)},function(Ae,Ve){return Ve.getUTCMonth()-Ae.getUTCMonth()+(Ve.getUTCFullYear()-Ae.getUTCFullYear())*12},function(Ae){return Ae.getUTCMonth()}),rr=ir.range,Cr=n(function(Ae){Ae.setUTCMonth(0,1),Ae.setUTCHours(0,0,0,0)},function(Ae,Ve){Ae.setUTCFullYear(Ae.getUTCFullYear()+Ve)},function(Ae,Ve){return Ve.getUTCFullYear()-Ae.getUTCFullYear()},function(Ae){return Ae.getUTCFullYear()});Cr.every=function(Ae){return!isFinite(Ae=Math.floor(Ae))||!(Ae>0)?null:n(function(Ve){Ve.setUTCFullYear(Math.floor(Ve.getUTCFullYear()/Ae)*Ae),Ve.setUTCMonth(0,1),Ve.setUTCHours(0,0,0,0)},function(Ve,je){Ve.setUTCFullYear(Ve.getUTCFullYear()+je*Ae)})};var yr=Cr.range;e.timeDay=_,e.timeDays=S,e.timeFriday=z,e.timeFridays=ee,e.timeHour=p,e.timeHours=y,e.timeInterval=n,e.timeMillisecond=a,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=m,e.timeMonday=A,e.timeMondays=Y,e.timeMonth=K,e.timeMonths=re,e.timeSaturday=F,e.timeSaturdays=te,e.timeSecond=v,e.timeSeconds=h,e.timeSunday=b,e.timeSundays=H,e.timeThursday=D,e.timeThursdays=V,e.timeTuesday=k,e.timeTuesdays=O,e.timeWednesday=M,e.timeWednesdays=X,e.timeWeek=b,e.timeWeeks=H,e.timeYear=fe,e.timeYears=de,e.utcDay=Se,e.utcDays=Xe,e.utcFriday=$,e.utcFridays=ar,e.utcHour=Ne,e.utcHours=Ie,e.utcMillisecond=a,e.utcMilliseconds=i,e.utcMinute=qe,e.utcMinutes=Be,e.utcMonday=Te,e.utcMondays=Oe,e.utcMonth=ir,e.utcMonths=rr,e.utcSaturday=Me,e.utcSaturdays=lr,e.utcSecond=v,e.utcSeconds=h,e.utcSunday=be,e.utcSundays=Fe,e.utcThursday=Q,e.utcThursdays=Ze,e.utcTuesday=pe,e.utcTuesdays=fr,e.utcWednesday=W,e.utcWednesdays=nr,e.utcWeek=be,e.utcWeeks=Fe,e.utcYear=Cr,e.utcYears=yr,Object.defineProperty(e,"__esModule",{value:!0})})});var m0=ne((ed,W_)=>{(function(e,r){typeof ed=="object"&&typeof W_!="undefined"?r(ed,xy()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(ed,function(e,r){"use strict";function t(_e){if(0<=_e.y&&_e.y<100){var ke=new Date(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L);return ke.setFullYear(_e.y),ke}return new Date(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L)}function n(_e){if(0<=_e.y&&_e.y<100){var ke=new Date(Date.UTC(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L));return ke.setUTCFullYear(_e.y),ke}return new Date(Date.UTC(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L))}function a(_e,ke,$e){return{y:_e,m:ke,d:$e,H:0,M:0,S:0,L:0}}function i(_e){var ke=_e.dateTime,$e=_e.date,We=_e.time,qr=_e.periods,Vr=_e.days,Hr=_e.shortDays,lt=_e.months,xt=_e.shortMonths,Rt=h(qr),St=d(qr),hn=h(Vr),Fn=d(Vr),$n=h(Hr),Xt=d(Hr),cn=h(lt),sn=d(lt),Kt=h(xt),aa=d(xt),rt={a:gi,A:io,b:mi,B:ms,c:null,d:K,e:K,f:Be,H:re,I:fe,j:de,L:qe,m:Ne,M:Ie,p:El,q:Bo,Q:Ke,s:mr,S:Se,u:Xe,U:se,V:be,w:Te,W:pe,x:null,X:null,y:W,Y:Q,Z:$,"%":er},Qt={a:ys,A:Oo,b:Hn,B:yi,c:null,d:Me,e:Me,f:Ze,H:Fe,I:Oe,j:fr,L:nr,m:ar,M:lr,p:Uo,q:bi,Q:Ke,s:mr,S:ir,u:rr,U:Cr,V:yr,w:Ae,W:Ve,x:null,X:null,y:je,Y:zr,Z:kr,"%":er},Ct={a:da,A:Sn,b:Na,B:pa,c:wn,d:D,e:D,f:X,H:F,I:F,j:z,L:O,m:M,M:H,p:un,q:k,Q:ee,s:te,S:Y,u:p,U:y,V:_,w:m,W:S,x:It,X:In,y:b,Y:x,Z:A,"%":V};rt.x=dn($e,rt),rt.X=dn(We,rt),rt.c=dn(ke,rt),Qt.x=dn($e,Qt),Qt.X=dn(We,Qt),Qt.c=dn(ke,Qt);function dn(Kr,Lt){return function(Ht){var Br=[],Vn=-1,nn=0,Dn=Kr.length,At,Wa,Yo;for(Ht instanceof Date||(Ht=new Date(+Ht));++Vn53)return null;"w"in Br||(Br.w=1),"Z"in Br?(nn=n(a(Br.y,0,1)),Dn=nn.getUTCDay(),nn=Dn>4||Dn===0?r.utcMonday.ceil(nn):r.utcMonday(nn),nn=r.utcDay.offset(nn,(Br.V-1)*7),Br.y=nn.getUTCFullYear(),Br.m=nn.getUTCMonth(),Br.d=nn.getUTCDate()+(Br.w+6)%7):(nn=t(a(Br.y,0,1)),Dn=nn.getDay(),nn=Dn>4||Dn===0?r.timeMonday.ceil(nn):r.timeMonday(nn),nn=r.timeDay.offset(nn,(Br.V-1)*7),Br.y=nn.getFullYear(),Br.m=nn.getMonth(),Br.d=nn.getDate()+(Br.w+6)%7)}else("W"in Br||"U"in Br)&&("w"in Br||(Br.w="u"in Br?Br.u%7:"W"in Br?1:0),Dn="Z"in Br?n(a(Br.y,0,1)).getUTCDay():t(a(Br.y,0,1)).getDay(),Br.m=0,Br.d="W"in Br?(Br.w+6)%7+Br.W*7-(Dn+5)%7:Br.w+Br.U*7-(Dn+6)%7);return"Z"in Br?(Br.H+=Br.Z/100|0,Br.M+=Br.Z%100,n(Br)):t(Br)}}function tn(Kr,Lt,Ht,Br){for(var Vn=0,nn=Lt.length,Dn=Ht.length,At,Wa;Vn=Dn)return-1;if(At=Lt.charCodeAt(Vn++),At===37){if(At=Lt.charAt(Vn++),Wa=Ct[At in o?Lt.charAt(Vn++):At],!Wa||(Br=Wa(Kr,Ht,Br))<0)return-1}else if(At!=Ht.charCodeAt(Br++))return-1}return Br}function un(Kr,Lt,Ht){var Br=Rt.exec(Lt.slice(Ht));return Br?(Kr.p=St[Br[0].toLowerCase()],Ht+Br[0].length):-1}function da(Kr,Lt,Ht){var Br=$n.exec(Lt.slice(Ht));return Br?(Kr.w=Xt[Br[0].toLowerCase()],Ht+Br[0].length):-1}function Sn(Kr,Lt,Ht){var Br=hn.exec(Lt.slice(Ht));return Br?(Kr.w=Fn[Br[0].toLowerCase()],Ht+Br[0].length):-1}function Na(Kr,Lt,Ht){var Br=Kt.exec(Lt.slice(Ht));return Br?(Kr.m=aa[Br[0].toLowerCase()],Ht+Br[0].length):-1}function pa(Kr,Lt,Ht){var Br=cn.exec(Lt.slice(Ht));return Br?(Kr.m=sn[Br[0].toLowerCase()],Ht+Br[0].length):-1}function wn(Kr,Lt,Ht){return tn(Kr,ke,Lt,Ht)}function It(Kr,Lt,Ht){return tn(Kr,$e,Lt,Ht)}function In(Kr,Lt,Ht){return tn(Kr,We,Lt,Ht)}function gi(Kr){return Hr[Kr.getDay()]}function io(Kr){return Vr[Kr.getDay()]}function mi(Kr){return xt[Kr.getMonth()]}function ms(Kr){return lt[Kr.getMonth()]}function El(Kr){return qr[+(Kr.getHours()>=12)]}function Bo(Kr){return 1+~~(Kr.getMonth()/3)}function ys(Kr){return Hr[Kr.getUTCDay()]}function Oo(Kr){return Vr[Kr.getUTCDay()]}function Hn(Kr){return xt[Kr.getUTCMonth()]}function yi(Kr){return lt[Kr.getUTCMonth()]}function Uo(Kr){return qr[+(Kr.getUTCHours()>=12)]}function bi(Kr){return 1+~~(Kr.getUTCMonth()/3)}return{format:function(Kr){var Lt=dn(Kr+="",rt);return Lt.toString=function(){return Kr},Lt},parse:function(Kr){var Lt=pn(Kr+="",!1);return Lt.toString=function(){return Kr},Lt},utcFormat:function(Kr){var Lt=dn(Kr+="",Qt);return Lt.toString=function(){return Kr},Lt},utcParse:function(Kr){var Lt=pn(Kr+="",!0);return Lt.toString=function(){return Kr},Lt}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(_e,ke,$e){var We=_e<0?"-":"",qr=(We?-_e:_e)+"",Vr=qr.length;return We+(Vr<$e?new Array($e-Vr+1).join(ke)+qr:qr)}function v(_e){return _e.replace(u,"\\$&")}function h(_e){return new RegExp("^(?:"+_e.map(v).join("|")+")","i")}function d(_e){for(var ke={},$e=-1,We=_e.length;++$e68?1900:2e3),$e+We[0].length):-1}function A(_e,ke,$e){var We=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ke.slice($e,$e+6));return We?(_e.Z=We[1]?0:-(We[2]+(We[3]||"00")),$e+We[0].length):-1}function k(_e,ke,$e){var We=l.exec(ke.slice($e,$e+1));return We?(_e.q=We[0]*3-3,$e+We[0].length):-1}function M(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.m=We[0]-1,$e+We[0].length):-1}function D(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.d=+We[0],$e+We[0].length):-1}function z(_e,ke,$e){var We=l.exec(ke.slice($e,$e+3));return We?(_e.m=0,_e.d=+We[0],$e+We[0].length):-1}function F(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.H=+We[0],$e+We[0].length):-1}function H(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.M=+We[0],$e+We[0].length):-1}function Y(_e,ke,$e){var We=l.exec(ke.slice($e,$e+2));return We?(_e.S=+We[0],$e+We[0].length):-1}function O(_e,ke,$e){var We=l.exec(ke.slice($e,$e+3));return We?(_e.L=+We[0],$e+We[0].length):-1}function X(_e,ke,$e){var We=l.exec(ke.slice($e,$e+6));return We?(_e.L=Math.floor(We[0]/1e3),$e+We[0].length):-1}function V(_e,ke,$e){var We=s.exec(ke.slice($e,$e+1));return We?$e+We[0].length:-1}function ee(_e,ke,$e){var We=l.exec(ke.slice($e));return We?(_e.Q=+We[0],$e+We[0].length):-1}function te(_e,ke,$e){var We=l.exec(ke.slice($e));return We?(_e.s=+We[0],$e+We[0].length):-1}function K(_e,ke){return f(_e.getDate(),ke,2)}function re(_e,ke){return f(_e.getHours(),ke,2)}function fe(_e,ke){return f(_e.getHours()%12||12,ke,2)}function de(_e,ke){return f(1+r.timeDay.count(r.timeYear(_e),_e),ke,3)}function qe(_e,ke){return f(_e.getMilliseconds(),ke,3)}function Be(_e,ke){return qe(_e,ke)+"000"}function Ne(_e,ke){return f(_e.getMonth()+1,ke,2)}function Ie(_e,ke){return f(_e.getMinutes(),ke,2)}function Se(_e,ke){return f(_e.getSeconds(),ke,2)}function Xe(_e){var ke=_e.getDay();return ke===0?7:ke}function se(_e,ke){return f(r.timeSunday.count(r.timeYear(_e)-1,_e),ke,2)}function be(_e,ke){var $e=_e.getDay();return _e=$e>=4||$e===0?r.timeThursday(_e):r.timeThursday.ceil(_e),f(r.timeThursday.count(r.timeYear(_e),_e)+(r.timeYear(_e).getDay()===4),ke,2)}function Te(_e){return _e.getDay()}function pe(_e,ke){return f(r.timeMonday.count(r.timeYear(_e)-1,_e),ke,2)}function W(_e,ke){return f(_e.getFullYear()%100,ke,2)}function Q(_e,ke){return f(_e.getFullYear()%1e4,ke,4)}function $(_e){var ke=_e.getTimezoneOffset();return(ke>0?"-":(ke*=-1,"+"))+f(ke/60|0,"0",2)+f(ke%60,"0",2)}function Me(_e,ke){return f(_e.getUTCDate(),ke,2)}function Fe(_e,ke){return f(_e.getUTCHours(),ke,2)}function Oe(_e,ke){return f(_e.getUTCHours()%12||12,ke,2)}function fr(_e,ke){return f(1+r.utcDay.count(r.utcYear(_e),_e),ke,3)}function nr(_e,ke){return f(_e.getUTCMilliseconds(),ke,3)}function Ze(_e,ke){return nr(_e,ke)+"000"}function ar(_e,ke){return f(_e.getUTCMonth()+1,ke,2)}function lr(_e,ke){return f(_e.getUTCMinutes(),ke,2)}function ir(_e,ke){return f(_e.getUTCSeconds(),ke,2)}function rr(_e){var ke=_e.getUTCDay();return ke===0?7:ke}function Cr(_e,ke){return f(r.utcSunday.count(r.utcYear(_e)-1,_e),ke,2)}function yr(_e,ke){var $e=_e.getUTCDay();return _e=$e>=4||$e===0?r.utcThursday(_e):r.utcThursday.ceil(_e),f(r.utcThursday.count(r.utcYear(_e),_e)+(r.utcYear(_e).getUTCDay()===4),ke,2)}function Ae(_e){return _e.getUTCDay()}function Ve(_e,ke){return f(r.utcMonday.count(r.utcYear(_e)-1,_e),ke,2)}function je(_e,ke){return f(_e.getUTCFullYear()%100,ke,2)}function zr(_e,ke){return f(_e.getUTCFullYear()%1e4,ke,4)}function kr(){return"+0000"}function er(){return"%"}function Ke(_e){return+_e}function mr(_e){return Math.floor(+_e/1e3)}var Mr;gr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function gr(_e){return Mr=i(_e),e.timeFormat=Mr.format,e.timeParse=Mr.parse,e.utcFormat=Mr.utcFormat,e.utcParse=Mr.utcParse,Mr}var dr="%Y-%m-%dT%H:%M:%S.%LZ";function Tr(_e){return _e.toISOString()}var Pr=Date.prototype.toISOString?Tr:e.utcFormat(dr);function Ur(_e){var ke=new Date(_e);return isNaN(ke)?null:ke}var sr=+new Date("2000-01-01T00:00:00.000Z")?Ur:e.utcParse(dr);e.isoFormat=Pr,e.isoParse=sr,e.timeFormatDefaultLocale=gr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var wy=ne((rd,Z_)=>{(function(e,r){typeof rd=="object"&&typeof Z_!="undefined"?r(rd):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(rd,function(e){"use strict";function r(M){return Math.abs(M=Math.round(M))>=1e21?M.toLocaleString("en").replace(/,/g,""):M.toString(10)}function t(M,D){if((z=(M=D?M.toExponential(D-1):M.toExponential()).indexOf("e"))<0)return null;var z,F=M.slice(0,z);return[F.length>1?F[0]+F.slice(2):F,+M.slice(z+1)]}function n(M){return M=t(Math.abs(M)),M?M[1]:NaN}function a(M,D){return function(z,F){for(var H=z.length,Y=[],O=0,X=M[0],V=0;H>0&&X>0&&(V+X+1>F&&(X=Math.max(1,F-V)),Y.push(z.substring(H-=X,H+X)),!((V+=X+1)>F));)X=M[O=(O+1)%M.length];return Y.reverse().join(D)}}function i(M){return function(D){return D.replace(/[0-9]/g,function(z){return M[+z]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(D=o.exec(M)))throw new Error("invalid format: "+M);var D;return new s({fill:D[1],align:D[2],sign:D[3],symbol:D[4],zero:D[5],width:D[6],comma:D[7],precision:D[8]&&D[8].slice(1),trim:D[9],type:D[10]})}l.prototype=s.prototype;function s(M){this.fill=M.fill===void 0?" ":M.fill+"",this.align=M.align===void 0?">":M.align+"",this.sign=M.sign===void 0?"-":M.sign+"",this.symbol=M.symbol===void 0?"":M.symbol+"",this.zero=!!M.zero,this.width=M.width===void 0?void 0:+M.width,this.comma=!!M.comma,this.precision=M.precision===void 0?void 0:+M.precision,this.trim=!!M.trim,this.type=M.type===void 0?"":M.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(M){e:for(var D=M.length,z=1,F=-1,H;z0&&(F=0);break}return F>0?M.slice(0,F)+M.slice(H+1):M}var f;function v(M,D){var z=t(M,D);if(!z)return M+"";var F=z[0],H=z[1],Y=H-(f=Math.max(-8,Math.min(8,Math.floor(H/3)))*3)+1,O=F.length;return Y===O?F:Y>O?F+new Array(Y-O+1).join("0"):Y>0?F.slice(0,Y)+"."+F.slice(Y):"0."+new Array(1-Y).join("0")+t(M,Math.max(0,D+Y-1))[0]}function h(M,D){var z=t(M,D);if(!z)return M+"";var F=z[0],H=z[1];return H<0?"0."+new Array(-H).join("0")+F:F.length>H+1?F.slice(0,H+1)+"."+F.slice(H+1):F+new Array(H-F.length+2).join("0")}var d={"%":function(M,D){return(M*100).toFixed(D)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,D){return M.toExponential(D)},f:function(M,D){return M.toFixed(D)},g:function(M,D){return M.toPrecision(D)},o:function(M){return Math.round(M).toString(8)},p:function(M,D){return h(M*100,D)},r:h,s:v,X:function(M){return Math.round(M).toString(16).toUpperCase()},x:function(M){return Math.round(M).toString(16)}};function m(M){return M}var p=Array.prototype.map,y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function _(M){var D=M.grouping===void 0||M.thousands===void 0?m:a(p.call(M.grouping,Number),M.thousands+""),z=M.currency===void 0?"":M.currency[0]+"",F=M.currency===void 0?"":M.currency[1]+"",H=M.decimal===void 0?".":M.decimal+"",Y=M.numerals===void 0?m:i(p.call(M.numerals,String)),O=M.percent===void 0?"%":M.percent+"",X=M.minus===void 0?"-":M.minus+"",V=M.nan===void 0?"NaN":M.nan+"";function ee(K){K=l(K);var re=K.fill,fe=K.align,de=K.sign,qe=K.symbol,Be=K.zero,Ne=K.width,Ie=K.comma,Se=K.precision,Xe=K.trim,se=K.type;se==="n"?(Ie=!0,se="g"):d[se]||(Se===void 0&&(Se=12),Xe=!0,se="g"),(Be||re==="0"&&fe==="=")&&(Be=!0,re="0",fe="=");var be=qe==="$"?z:qe==="#"&&/[boxX]/.test(se)?"0"+se.toLowerCase():"",Te=qe==="$"?F:/[%p]/.test(se)?O:"",pe=d[se],W=/[defgprs%]/.test(se);Se=Se===void 0?6:/[gprs]/.test(se)?Math.max(1,Math.min(21,Se)):Math.max(0,Math.min(20,Se));function Q($){var Me=be,Fe=Te,Oe,fr,nr;if(se==="c")Fe=pe($)+Fe,$="";else{$=+$;var Ze=$<0||1/$<0;if($=isNaN($)?V:pe(Math.abs($),Se),Xe&&($=u($)),Ze&&+$==0&&de!=="+"&&(Ze=!1),Me=(Ze?de==="("?de:X:de==="-"||de==="("?"":de)+Me,Fe=(se==="s"?y[8+f/3]:"")+Fe+(Ze&&de==="("?")":""),W){for(Oe=-1,fr=$.length;++Oenr||nr>57){Fe=(nr===46?H+$.slice(Oe+1):$.slice(Oe))+Fe,$=$.slice(0,Oe);break}}}Ie&&!Be&&($=D($,1/0));var ar=Me.length+$.length+Fe.length,lr=ar>1)+Me+$+Fe+lr.slice(ar);break;default:$=lr+Me+$+Fe;break}return Y($)}return Q.toString=function(){return K+""},Q}function te(K,re){var fe=ee((K=l(K),K.type="f",K)),de=Math.max(-8,Math.min(8,Math.floor(n(re)/3)))*3,qe=Math.pow(10,-de),Be=y[8+de/3];return function(Ne){return fe(qe*Ne)+Be}}return{format:ee,formatPrefix:te}}var S;x({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function x(M){return S=_(M),e.format=S.format,e.formatPrefix=S.formatPrefix,S}function b(M){return Math.max(0,-n(Math.abs(M)))}function A(M,D){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(D)/3)))*3-n(Math.abs(M)))}function k(M,D){return M=Math.abs(M),D=Math.abs(D)-M,Math.max(0,n(D)-n(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=x,e.formatLocale=_,e.formatSpecifier=l,e.precisionFixed=b,e.precisionPrefix=A,e.precisionRound=k,Object.defineProperty(e,"__esModule",{value:!0})})});var j_=ne((Voe,X_)=>{"use strict";X_.exports=function(e){for(var r=e.length,t,n=0;n13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var Bt=ne((Woe,J_)=>{"use strict";var ZI=j_();J_.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&ZI(t))return!1}else if(r!=="number")return!1;return e-e<1}});var En=ne((Zoe,$_)=>{"use strict";$_.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var My=ne((td,K_)=>{(function(e,r){typeof td=="object"&&typeof K_!="undefined"?r(td):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(td,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],f+=r[(l[s]&3)<<4|l[s+1]>>4],f+=r[(l[s+1]&15)<<2|l[s+2]>>6],f+=r[l[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(o){var l=o.length*.75,s=o.length,u,f=0,v,h,d,m;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var p=new ArrayBuffer(l),y=new Uint8Array(p);for(u=0;u>4,y[f++]=(h&15)<<4|d>>2,y[f++]=(d&3)<<6|m&63;return p};e.decode=i,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var Gs=ne((Xoe,Q_)=>{"use strict";Q_.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var Ji=ne(fl=>{"use strict";var XI=My().decode,jI=Gs(),Ay=Array.isArray,JI=ArrayBuffer,$I=DataView;function e6(e){return JI.isView(e)&&!(e instanceof $I)}fl.isTypedArray=e6;function nd(e){return Ay(e)||e6(e)}fl.isArrayOrTypedArray=nd;function KI(e){return!nd(e[0])}fl.isArray1D=KI;fl.ensureArray=function(e,r){return Ay(e)||(e=[]),e.length=r,e};var Ta={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Ta.uint8c=Ta.u1c;Ta.uint8=Ta.u1;Ta.int8=Ta.i1;Ta.uint16=Ta.u2;Ta.int16=Ta.i2;Ta.uint32=Ta.u4;Ta.int32=Ta.i4;Ta.float32=Ta.f4;Ta.float64=Ta.f8;function Ty(e){return e.constructor===ArrayBuffer}fl.isArrayBuffer=Ty;fl.decodeTypedArraySpec=function(e){var r=[],t=QI(e),n=t.dtype,a=Ta[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var i=a.BYTES_PER_ELEMENT,o=t.bdata;Ty(o)||(o=XI(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,u,f,v=+l[0],h=i*v,d=0;if(s===1)r=new a(o);else if(s===2)for(u=+l[1],f=0;f{"use strict";var t6=Bt(),Sy=Ji().isArrayOrTypedArray;o6.exports=function(r,t){if(t6(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var n=t.split("."),a,i,o,l;for(l=0;l{"use strict";var y0=$v(),aH=/^\w*$/,iH=0,l6=1,ad=2,s6=3,jf=4;u6.exports=function(r,t,n,a){n=n||"name",a=a||"value";var i,o,l,s={};t&&t.length?(l=y0(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|ad,v.set(h,null);if(f){for(i=d;i{"use strict";var oH=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,lH=/^[^\.\[\]]+$/;c6.exports=function(e,r){for(;r;){var t=e.match(oH);if(t)e=t[1];else if(e.match(lH))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var id=ne((Qoe,h6)=>{"use strict";var sH=Bt();h6.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var n=Math.log(Math.min(t[0],t[1]))/Math.LN10;return sH(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var g6=ne((ele,p6)=>{"use strict";var d6=Ji().isArrayOrTypedArray,Kv=Gs();p6.exports=function e(r,t){for(var n in t){var a=t[n],i=r[n];if(i!==a)if(n.charAt(0)==="_"||typeof a=="function"){if(n in r)continue;r[n]=a}else if(d6(a)&&d6(i)&&Kv(a[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(a.length,i.length),l=0;l{"use strict";function uH(e,r){var t=e%r;return t<0?t+r:t}function fH(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}m6.exports={mod:uH,modHalf:fH}});var Jl=ne((tle,od)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,i=e.min,o=e.max,l=e.random;function s(W,Q){if(W=W||"",Q=Q||{},W instanceof s)return W;if(!(this instanceof s))return new s(W,Q);var $=u(W);this._originalInput=W,this._r=$.r,this._g=$.g,this._b=$.b,this._a=$.a,this._roundA=a(100*this._a)/100,this._format=Q.format||$.format,this._gradientType=Q.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=$.ok,this._tc_id=n++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var W=this.toRgb();return(W.r*299+W.g*587+W.b*114)/1e3},getLuminance:function(){var W=this.toRgb(),Q,$,Me,Fe,Oe,fr;return Q=W.r/255,$=W.g/255,Me=W.b/255,Q<=.03928?Fe=Q/12.92:Fe=e.pow((Q+.055)/1.055,2.4),$<=.03928?Oe=$/12.92:Oe=e.pow(($+.055)/1.055,2.4),Me<=.03928?fr=Me/12.92:fr=e.pow((Me+.055)/1.055,2.4),.2126*Fe+.7152*Oe+.0722*fr},setAlpha:function(W){return this._a=K(W),this._roundA=a(100*this._a)/100,this},toHsv:function(){var W=d(this._r,this._g,this._b);return{h:W.h*360,s:W.s,v:W.v,a:this._a}},toHsvString:function(){var W=d(this._r,this._g,this._b),Q=a(W.h*360),$=a(W.s*100),Me=a(W.v*100);return this._a==1?"hsv("+Q+", "+$+"%, "+Me+"%)":"hsva("+Q+", "+$+"%, "+Me+"%, "+this._roundA+")"},toHsl:function(){var W=v(this._r,this._g,this._b);return{h:W.h*360,s:W.s,l:W.l,a:this._a}},toHslString:function(){var W=v(this._r,this._g,this._b),Q=a(W.h*360),$=a(W.s*100),Me=a(W.l*100);return this._a==1?"hsl("+Q+", "+$+"%, "+Me+"%)":"hsla("+Q+", "+$+"%, "+Me+"%, "+this._roundA+")"},toHex:function(W){return p(this._r,this._g,this._b,W)},toHexString:function(W){return"#"+this.toHex(W)},toHex8:function(W){return y(this._r,this._g,this._b,this._a,W)},toHex8String:function(W){return"#"+this.toHex8(W)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(re(this._r,255)*100)+"%",g:a(re(this._g,255)*100)+"%",b:a(re(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(re(this._r,255)*100)+"%, "+a(re(this._g,255)*100)+"%, "+a(re(this._b,255)*100)+"%)":"rgba("+a(re(this._r,255)*100)+"%, "+a(re(this._g,255)*100)+"%, "+a(re(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:ee[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(W){var Q="#"+_(this._r,this._g,this._b,this._a),$=Q,Me=this._gradientType?"GradientType = 1, ":"";if(W){var Fe=s(W);$="#"+_(Fe._r,Fe._g,Fe._b,Fe._a)}return"progid:DXImageTransform.Microsoft.gradient("+Me+"startColorstr="+Q+",endColorstr="+$+")"},toString:function(W){var Q=!!W;W=W||this._format;var $=!1,Me=this._a<1&&this._a>=0,Fe=!Q&&Me&&(W==="hex"||W==="hex6"||W==="hex3"||W==="hex4"||W==="hex8"||W==="name");return Fe?W==="name"&&this._a===0?this.toName():this.toRgbString():(W==="rgb"&&($=this.toRgbString()),W==="prgb"&&($=this.toPercentageRgbString()),(W==="hex"||W==="hex6")&&($=this.toHexString()),W==="hex3"&&($=this.toHexString(!0)),W==="hex4"&&($=this.toHex8String(!0)),W==="hex8"&&($=this.toHex8String()),W==="name"&&($=this.toName()),W==="hsl"&&($=this.toHslString()),W==="hsv"&&($=this.toHsvString()),$||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(W,Q){var $=W.apply(null,[this].concat([].slice.call(Q)));return this._r=$._r,this._g=$._g,this._b=$._b,this.setAlpha($._a),this},lighten:function(){return this._applyModification(A,arguments)},brighten:function(){return this._applyModification(k,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(S,arguments)},saturate:function(){return this._applyModification(x,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(D,arguments)},_applyCombination:function(W,Q){return W.apply(null,[this].concat([].slice.call(Q)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(z,arguments)},monochromatic:function(){return this._applyCombination(X,arguments)},splitcomplement:function(){return this._applyCombination(Y,arguments)},triad:function(){return this._applyCombination(F,arguments)},tetrad:function(){return this._applyCombination(H,arguments)}},s.fromRatio=function(W,Q){if(typeof W=="object"){var $={};for(var Me in W)W.hasOwnProperty(Me)&&(Me==="a"?$[Me]=W[Me]:$[Me]=Ie(W[Me]));W=$}return s(W,Q)};function u(W){var Q={r:0,g:0,b:0},$=1,Me=null,Fe=null,Oe=null,fr=!1,nr=!1;return typeof W=="string"&&(W=Te(W)),typeof W=="object"&&(be(W.r)&&be(W.g)&&be(W.b)?(Q=f(W.r,W.g,W.b),fr=!0,nr=String(W.r).substr(-1)==="%"?"prgb":"rgb"):be(W.h)&&be(W.s)&&be(W.v)?(Me=Ie(W.s),Fe=Ie(W.v),Q=m(W.h,Me,Fe),fr=!0,nr="hsv"):be(W.h)&&be(W.s)&&be(W.l)&&(Me=Ie(W.s),Oe=Ie(W.l),Q=h(W.h,Me,Oe),fr=!0,nr="hsl"),W.hasOwnProperty("a")&&($=W.a)),$=K($),{ok:fr,format:W.format||nr,r:i(255,o(Q.r,0)),g:i(255,o(Q.g,0)),b:i(255,o(Q.b,0)),a:$}}function f(W,Q,$){return{r:re(W,255)*255,g:re(Q,255)*255,b:re($,255)*255}}function v(W,Q,$){W=re(W,255),Q=re(Q,255),$=re($,255);var Me=o(W,Q,$),Fe=i(W,Q,$),Oe,fr,nr=(Me+Fe)/2;if(Me==Fe)Oe=fr=0;else{var Ze=Me-Fe;switch(fr=nr>.5?Ze/(2-Me-Fe):Ze/(Me+Fe),Me){case W:Oe=(Q-$)/Ze+(Q<$?6:0);break;case Q:Oe=($-W)/Ze+2;break;case $:Oe=(W-Q)/Ze+4;break}Oe/=6}return{h:Oe,s:fr,l:nr}}function h(W,Q,$){var Me,Fe,Oe;W=re(W,360),Q=re(Q,100),$=re($,100);function fr(ar,lr,ir){return ir<0&&(ir+=1),ir>1&&(ir-=1),ir<1/6?ar+(lr-ar)*6*ir:ir<1/2?lr:ir<2/3?ar+(lr-ar)*(2/3-ir)*6:ar}if(Q===0)Me=Fe=Oe=$;else{var nr=$<.5?$*(1+Q):$+Q-$*Q,Ze=2*$-nr;Me=fr(Ze,nr,W+1/3),Fe=fr(Ze,nr,W),Oe=fr(Ze,nr,W-1/3)}return{r:Me*255,g:Fe*255,b:Oe*255}}function d(W,Q,$){W=re(W,255),Q=re(Q,255),$=re($,255);var Me=o(W,Q,$),Fe=i(W,Q,$),Oe,fr,nr=Me,Ze=Me-Fe;if(fr=Me===0?0:Ze/Me,Me==Fe)Oe=0;else{switch(Me){case W:Oe=(Q-$)/Ze+(Q<$?6:0);break;case Q:Oe=($-W)/Ze+2;break;case $:Oe=(W-Q)/Ze+4;break}Oe/=6}return{h:Oe,s:fr,v:nr}}function m(W,Q,$){W=re(W,360)*6,Q=re(Q,100),$=re($,100);var Me=e.floor(W),Fe=W-Me,Oe=$*(1-Q),fr=$*(1-Fe*Q),nr=$*(1-(1-Fe)*Q),Ze=Me%6,ar=[$,fr,Oe,Oe,nr,$][Ze],lr=[nr,$,$,fr,Oe,Oe][Ze],ir=[Oe,Oe,nr,$,$,fr][Ze];return{r:ar*255,g:lr*255,b:ir*255}}function p(W,Q,$,Me){var Fe=[Ne(a(W).toString(16)),Ne(a(Q).toString(16)),Ne(a($).toString(16))];return Me&&Fe[0].charAt(0)==Fe[0].charAt(1)&&Fe[1].charAt(0)==Fe[1].charAt(1)&&Fe[2].charAt(0)==Fe[2].charAt(1)?Fe[0].charAt(0)+Fe[1].charAt(0)+Fe[2].charAt(0):Fe.join("")}function y(W,Q,$,Me,Fe){var Oe=[Ne(a(W).toString(16)),Ne(a(Q).toString(16)),Ne(a($).toString(16)),Ne(Se(Me))];return Fe&&Oe[0].charAt(0)==Oe[0].charAt(1)&&Oe[1].charAt(0)==Oe[1].charAt(1)&&Oe[2].charAt(0)==Oe[2].charAt(1)&&Oe[3].charAt(0)==Oe[3].charAt(1)?Oe[0].charAt(0)+Oe[1].charAt(0)+Oe[2].charAt(0)+Oe[3].charAt(0):Oe.join("")}function _(W,Q,$,Me){var Fe=[Ne(Se(Me)),Ne(a(W).toString(16)),Ne(a(Q).toString(16)),Ne(a($).toString(16))];return Fe.join("")}s.equals=function(W,Q){return!W||!Q?!1:s(W).toRgbString()==s(Q).toRgbString()},s.random=function(){return s.fromRatio({r:l(),g:l(),b:l()})};function S(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.s-=Q/100,$.s=fe($.s),s($)}function x(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.s+=Q/100,$.s=fe($.s),s($)}function b(W){return s(W).desaturate(100)}function A(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.l+=Q/100,$.l=fe($.l),s($)}function k(W,Q){Q=Q===0?0:Q||10;var $=s(W).toRgb();return $.r=o(0,i(255,$.r-a(255*-(Q/100)))),$.g=o(0,i(255,$.g-a(255*-(Q/100)))),$.b=o(0,i(255,$.b-a(255*-(Q/100)))),s($)}function M(W,Q){Q=Q===0?0:Q||10;var $=s(W).toHsl();return $.l-=Q/100,$.l=fe($.l),s($)}function D(W,Q){var $=s(W).toHsl(),Me=($.h+Q)%360;return $.h=Me<0?360+Me:Me,s($)}function z(W){var Q=s(W).toHsl();return Q.h=(Q.h+180)%360,s(Q)}function F(W){var Q=s(W).toHsl(),$=Q.h;return[s(W),s({h:($+120)%360,s:Q.s,l:Q.l}),s({h:($+240)%360,s:Q.s,l:Q.l})]}function H(W){var Q=s(W).toHsl(),$=Q.h;return[s(W),s({h:($+90)%360,s:Q.s,l:Q.l}),s({h:($+180)%360,s:Q.s,l:Q.l}),s({h:($+270)%360,s:Q.s,l:Q.l})]}function Y(W){var Q=s(W).toHsl(),$=Q.h;return[s(W),s({h:($+72)%360,s:Q.s,l:Q.l}),s({h:($+216)%360,s:Q.s,l:Q.l})]}function O(W,Q,$){Q=Q||6,$=$||30;var Me=s(W).toHsl(),Fe=360/$,Oe=[s(W)];for(Me.h=(Me.h-(Fe*Q>>1)+720)%360;--Q;)Me.h=(Me.h+Fe)%360,Oe.push(s(Me));return Oe}function X(W,Q){Q=Q||6;for(var $=s(W).toHsv(),Me=$.h,Fe=$.s,Oe=$.v,fr=[],nr=1/Q;Q--;)fr.push(s({h:Me,s:Fe,v:Oe})),Oe=(Oe+nr)%1;return fr}s.mix=function(W,Q,$){$=$===0?0:$||50;var Me=s(W).toRgb(),Fe=s(Q).toRgb(),Oe=$/100,fr={r:(Fe.r-Me.r)*Oe+Me.r,g:(Fe.g-Me.g)*Oe+Me.g,b:(Fe.b-Me.b)*Oe+Me.b,a:(Fe.a-Me.a)*Oe+Me.a};return s(fr)},s.readability=function(W,Q){var $=s(W),Me=s(Q);return(e.max($.getLuminance(),Me.getLuminance())+.05)/(e.min($.getLuminance(),Me.getLuminance())+.05)},s.isReadable=function(W,Q,$){var Me=s.readability(W,Q),Fe,Oe;switch(Oe=!1,Fe=pe($),Fe.level+Fe.size){case"AAsmall":case"AAAlarge":Oe=Me>=4.5;break;case"AAlarge":Oe=Me>=3;break;case"AAAsmall":Oe=Me>=7;break}return Oe},s.mostReadable=function(W,Q,$){var Me=null,Fe=0,Oe,fr,nr,Ze;$=$||{},fr=$.includeFallbackColors,nr=$.level,Ze=$.size;for(var ar=0;arFe&&(Fe=Oe,Me=s(Q[ar]));return s.isReadable(W,Me,{level:nr,size:Ze})||!fr?Me:($.includeFallbackColors=!1,s.mostReadable(W,["#fff","#000"],$))};var V=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},ee=s.hexNames=te(V);function te(W){var Q={};for(var $ in W)W.hasOwnProperty($)&&(Q[W[$]]=$);return Q}function K(W){return W=parseFloat(W),(isNaN(W)||W<0||W>1)&&(W=1),W}function re(W,Q){qe(W)&&(W="100%");var $=Be(W);return W=i(Q,o(0,parseFloat(W))),$&&(W=parseInt(W*Q,10)/100),e.abs(W-Q)<1e-6?1:W%Q/parseFloat(Q)}function fe(W){return i(1,o(0,W))}function de(W){return parseInt(W,16)}function qe(W){return typeof W=="string"&&W.indexOf(".")!=-1&&parseFloat(W)===1}function Be(W){return typeof W=="string"&&W.indexOf("%")!=-1}function Ne(W){return W.length==1?"0"+W:""+W}function Ie(W){return W<=1&&(W=W*100+"%"),W}function Se(W){return e.round(parseFloat(W)*255).toString(16)}function Xe(W){return de(W)/255}var se=function(){var W="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",$="(?:"+Q+")|(?:"+W+")",Me="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?",Fe="[\\s|\\(]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")[,|\\s]+("+$+")\\s*\\)?";return{CSS_UNIT:new RegExp($),rgb:new RegExp("rgb"+Me),rgba:new RegExp("rgba"+Fe),hsl:new RegExp("hsl"+Me),hsla:new RegExp("hsla"+Fe),hsv:new RegExp("hsv"+Me),hsva:new RegExp("hsva"+Fe),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function be(W){return!!se.CSS_UNIT.exec(W)}function Te(W){W=W.replace(r,"").replace(t,"").toLowerCase();var Q=!1;if(V[W])W=V[W],Q=!0;else if(W=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var $;return($=se.rgb.exec(W))?{r:$[1],g:$[2],b:$[3]}:($=se.rgba.exec(W))?{r:$[1],g:$[2],b:$[3],a:$[4]}:($=se.hsl.exec(W))?{h:$[1],s:$[2],l:$[3]}:($=se.hsla.exec(W))?{h:$[1],s:$[2],l:$[3],a:$[4]}:($=se.hsv.exec(W))?{h:$[1],s:$[2],v:$[3]}:($=se.hsva.exec(W))?{h:$[1],s:$[2],v:$[3],a:$[4]}:($=se.hex8.exec(W))?{r:de($[1]),g:de($[2]),b:de($[3]),a:Xe($[4]),format:Q?"name":"hex8"}:($=se.hex6.exec(W))?{r:de($[1]),g:de($[2]),b:de($[3]),format:Q?"name":"hex"}:($=se.hex4.exec(W))?{r:de($[1]+""+$[1]),g:de($[2]+""+$[2]),b:de($[3]+""+$[3]),a:Xe($[4]+""+$[4]),format:Q?"name":"hex8"}:($=se.hex3.exec(W))?{r:de($[1]+""+$[1]),g:de($[2]+""+$[2]),b:de($[3]+""+$[3]),format:Q?"name":"hex"}:!1}function pe(W){var Q,$;return W=W||{level:"AA",size:"small"},Q=(W.level||"AA").toUpperCase(),$=(W.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA"&&(Q="AA"),$!=="small"&&$!=="large"&&($="small"),{level:Q,size:$}}typeof od!="undefined"&&od.exports?od.exports=s:window.tinycolor=s})(Math)});var la=ne(r1=>{"use strict";var y6=Gs(),Qv=Array.isArray;function cH(e,r){var t,n;for(t=0;t{"use strict";b6.exports=function(e){var r=e.variantValues,t=e.editType,n=e.colorEditType;n===void 0&&(n=t);var a={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(a.valType="enumerated",a.values=a.extras,a.extras=void 0,a.min=void 0,a.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:n},weight:a,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var t1=ne((ile,_6)=>{"use strict";_6.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var _0=ne((ole,M6)=>{"use strict";var x6=t1(),w6=$a(),Cy=w6({editType:"none"});Cy.family.dflt=x6.HOVERFONT;Cy.size.dflt=x6.HOVERFONTSIZE;M6.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Cy,grouptitlefont:w6({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var ud=ne((lle,A6)=>{"use strict";var vH=$a(),ld=_0().hoverlabel,sd=la().extendFlat;A6.exports={hoverlabel:{bgcolor:sd({},ld.bgcolor,{arrayOk:!0}),bordercolor:sd({},ld.bordercolor,{arrayOk:!0}),font:vH({arrayOk:!0,editType:"none"}),align:sd({},ld.align,{arrayOk:!0}),namelength:sd({},ld.namelength,{arrayOk:!0}),editType:"none"}}});var bo=ne((sle,T6)=>{"use strict";var hH=$a(),dH=ud();T6.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:hH({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:dH.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var Jf=ne((ule,C6)=>{"use strict";var pH=Jl(),fd={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},k6=fd.RdBu;function gH(e,r){if(r||(r=k6),!e)return r;function t(){try{e=fd[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),S6(e)?e:r}function S6(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";$f.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];$f.defaultLine="#444";$f.lightLine="#eee";$f.background="#fff";$f.borderLine="#BEC8D9";$f.lightFraction=100*10/11});var zt=ne((cle,L6)=>{"use strict";var Li=Jl(),yH=Bt(),bH=Ji().isTypedArray,ya=L6.exports={},cd=cl();ya.defaults=cd.defaults;var _H=ya.defaultLine=cd.defaultLine;ya.lightLine=cd.lightLine;var qy=ya.background=cd.background;ya.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};ya.rgb=function(e){return ya.tinyRGB(Li(e))};ya.opacity=function(e){return e?Li(e).getAlpha():0};ya.addOpacity=function(e,r){var t=Li(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};ya.combine=function(e,r){var t=Li(e).toRgb();if(t.a===1)return Li(e).toRgbString();var n=Li(r||qy).toRgb(),a=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},i={r:a.r*(1-t.a)+t.r*t.a,g:a.g*(1-t.a)+t.g*t.a,b:a.b*(1-t.a)+t.b*t.a};return Li(i).toRgbString()};ya.interpolate=function(e,r,t){var n=Li(e).toRgb(),a=Li(r).toRgb(),i={r:t*n.r+(1-t)*a.r,g:t*n.g+(1-t)*a.g,b:t*n.b+(1-t)*a.b};return Li(i).toRgbString()};ya.contrast=function(e,r,t){var n=Li(e);n.getAlpha()!==1&&(n=Li(ya.combine(e,qy)));var a=n.isDark()?r?n.lighten(r):qy:t?n.darken(t):_H;return a.toString()};ya.stroke=function(e,r){var t=Li(r);e.style({stroke:ya.tinyRGB(t),"stroke-opacity":t.getAlpha()})};ya.fill=function(e,r){var t=Li(r);e.style({fill:ya.tinyRGB(t),"fill-opacity":t.getAlpha()})};ya.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,n,a,i;for(t=0;t=0)))return e;if(i===3)n[i]>1&&(n[i]=1);else if(n[i]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return a?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var vd=ne((vle,q6)=>{"use strict";q6.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var x0=ne(D6=>{"use strict";D6.counter=function(e,r,t,n){var a=(r||"")+(t?"":"$"),i=n===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+a):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+a)}});var z6=ne(qi=>{"use strict";var Dy=Bt(),E6=Jl(),P6=la().extendFlat,xH=bo(),wH=Jf(),MH=zt(),AH=vd().DESELECTDIM,w0=$v(),R6=x0().counter,TH=b0().modHalf,$l=Ji().isArrayOrTypedArray,Du=Ji().isTypedArraySpec,Eu=Ji().decodeTypedArraySpec;qi.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set($l(e)?e:Du(e)?Eu(e):t)}},enumerated:{coerceFunction:function(e,r,t,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,n=0;nn.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}Du(e)&&(e=Eu(e)),e%1||!Dy(e)||n.min!==void 0&&en.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,n){if(typeof e!="string"){var a=typeof e=="number";n.strict===!0||!a?r.set(t):r.set(String(e))}else n.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Du(e)&&(e=Eu(e)),E6(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return E6(a).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(n)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(wH.get(e,t))}},angle:{coerceFunction:function(e,r,t){Du(e)&&(e=Eu(e)),e==="auto"?r.set("auto"):Dy(e)?r.set(TH(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||R6(t);if(typeof e=="string"&&a.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!R6(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var a=e.split("+"),i=0;i{"use strict";var N6={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},F6={};function I6(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),I6(n,r[t]))}}I6(N6,F6);H6.exports={configAttributes:N6,dfltConfig:F6}});var Py=ne((gle,B6)=>{"use strict";var Ey=kt(),kH=Bt(),n1=[];B6.exports=function(e,r){if(n1.indexOf(e)!==-1)return;n1.push(e);var t=1e3;kH(r)?t=r:r==="long"&&(t=3e3);var n=Ey.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(n1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=n1.indexOf(l);s!==-1&&n1.splice(s,1),Ey.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=Ey.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),u=o.split(//g),f=0;f{"use strict";var M0=Kf().dfltConfig,Ry=Py(),zy=O6.exports={};zy.log=function(){var e;if(M0.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};zy.warn=function(){var e;if(M0.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};zy.error=function(){var e;if(M0.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var dd=ne((yle,U6)=>{"use strict";U6.exports=function(){}});var Ny=ne((ble,Y6)=>{"use strict";Y6.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{G6.exports=SH;function SH(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Z6=ne((xle,W6)=>{W6.exports=CH;function CH(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var j6=ne((wle,X6)=>{X6.exports=LH;function LH(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var Fy=ne((Mle,J6)=>{J6.exports=qH;function qH(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var K6=ne((Ale,$6)=>{$6.exports=DH;function DH(e,r){if(e===r){var t=r[1],n=r[2],a=r[3],i=r[6],o=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=n,e[9]=i,e[11]=r[14],e[12]=a,e[13]=o,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var ex=ne((Tle,Q6)=>{Q6.exports=EH;function EH(e,r){var t=r[0],n=r[1],a=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],p=r[13],y=r[14],_=r[15],S=t*l-n*o,x=t*s-a*o,b=t*u-i*o,A=n*s-a*l,k=n*u-i*l,M=a*u-i*s,D=f*p-v*m,z=f*y-h*m,F=f*_-d*m,H=v*y-h*p,Y=v*_-d*p,O=h*_-d*y,X=S*O-x*Y+b*H+A*F-k*z+M*D;return X?(X=1/X,e[0]=(l*O-s*Y+u*H)*X,e[1]=(a*Y-n*O-i*H)*X,e[2]=(p*M-y*k+_*A)*X,e[3]=(h*k-v*M-d*A)*X,e[4]=(s*F-o*O-u*z)*X,e[5]=(t*O-a*F+i*z)*X,e[6]=(y*b-m*M-_*x)*X,e[7]=(f*M-h*b+d*x)*X,e[8]=(o*Y-l*F+u*D)*X,e[9]=(n*F-t*Y-i*D)*X,e[10]=(m*k-p*b+_*S)*X,e[11]=(v*b-f*k-d*S)*X,e[12]=(l*z-o*H-s*D)*X,e[13]=(t*H-n*z+a*D)*X,e[14]=(p*x-m*A-y*S)*X,e[15]=(f*A-v*x+h*S)*X,e):null}});var tx=ne((kle,rx)=>{rx.exports=PH;function PH(e,r){var t=r[0],n=r[1],a=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],v=r[9],h=r[10],d=r[11],m=r[12],p=r[13],y=r[14],_=r[15];return e[0]=l*(h*_-d*y)-v*(s*_-u*y)+p*(s*d-u*h),e[1]=-(n*(h*_-d*y)-v*(a*_-i*y)+p*(a*d-i*h)),e[2]=n*(s*_-u*y)-l*(a*_-i*y)+p*(a*u-i*s),e[3]=-(n*(s*d-u*h)-l*(a*d-i*h)+v*(a*u-i*s)),e[4]=-(o*(h*_-d*y)-f*(s*_-u*y)+m*(s*d-u*h)),e[5]=t*(h*_-d*y)-f*(a*_-i*y)+m*(a*d-i*h),e[6]=-(t*(s*_-u*y)-o*(a*_-i*y)+m*(a*u-i*s)),e[7]=t*(s*d-u*h)-o*(a*d-i*h)+f*(a*u-i*s),e[8]=o*(v*_-d*p)-f*(l*_-u*p)+m*(l*d-u*v),e[9]=-(t*(v*_-d*p)-f*(n*_-i*p)+m*(n*d-i*v)),e[10]=t*(l*_-u*p)-o*(n*_-i*p)+m*(n*u-i*l),e[11]=-(t*(l*d-u*v)-o*(n*d-i*v)+f*(n*u-i*l)),e[12]=-(o*(v*y-h*p)-f*(l*y-s*p)+m*(l*h-s*v)),e[13]=t*(v*y-h*p)-f*(n*y-a*p)+m*(n*h-a*v),e[14]=-(t*(l*y-s*p)-o*(n*y-a*p)+m*(n*s-a*l)),e[15]=t*(l*h-s*v)-o*(n*h-a*v)+f*(n*s-a*l),e}});var ax=ne((Sle,nx)=>{nx.exports=RH;function RH(e){var r=e[0],t=e[1],n=e[2],a=e[3],i=e[4],o=e[5],l=e[6],s=e[7],u=e[8],f=e[9],v=e[10],h=e[11],d=e[12],m=e[13],p=e[14],y=e[15],_=r*o-t*i,S=r*l-n*i,x=r*s-a*i,b=t*l-n*o,A=t*s-a*o,k=n*s-a*l,M=u*m-f*d,D=u*p-v*d,z=u*y-h*d,F=f*p-v*m,H=f*y-h*m,Y=v*y-h*p;return _*Y-S*H+x*F+b*z-A*D+k*M}});var ox=ne((Cle,ix)=>{ix.exports=zH;function zH(e,r,t){var n=r[0],a=r[1],i=r[2],o=r[3],l=r[4],s=r[5],u=r[6],f=r[7],v=r[8],h=r[9],d=r[10],m=r[11],p=r[12],y=r[13],_=r[14],S=r[15],x=t[0],b=t[1],A=t[2],k=t[3];return e[0]=x*n+b*l+A*v+k*p,e[1]=x*a+b*s+A*h+k*y,e[2]=x*i+b*u+A*d+k*_,e[3]=x*o+b*f+A*m+k*S,x=t[4],b=t[5],A=t[6],k=t[7],e[4]=x*n+b*l+A*v+k*p,e[5]=x*a+b*s+A*h+k*y,e[6]=x*i+b*u+A*d+k*_,e[7]=x*o+b*f+A*m+k*S,x=t[8],b=t[9],A=t[10],k=t[11],e[8]=x*n+b*l+A*v+k*p,e[9]=x*a+b*s+A*h+k*y,e[10]=x*i+b*u+A*d+k*_,e[11]=x*o+b*f+A*m+k*S,x=t[12],b=t[13],A=t[14],k=t[15],e[12]=x*n+b*l+A*v+k*p,e[13]=x*a+b*s+A*h+k*y,e[14]=x*i+b*u+A*d+k*_,e[15]=x*o+b*f+A*m+k*S,e}});var sx=ne((Lle,lx)=>{lx.exports=NH;function NH(e,r,t){var n=t[0],a=t[1],i=t[2],o,l,s,u,f,v,h,d,m,p,y,_;return r===e?(e[12]=r[0]*n+r[4]*a+r[8]*i+r[12],e[13]=r[1]*n+r[5]*a+r[9]*i+r[13],e[14]=r[2]*n+r[6]*a+r[10]*i+r[14],e[15]=r[3]*n+r[7]*a+r[11]*i+r[15]):(o=r[0],l=r[1],s=r[2],u=r[3],f=r[4],v=r[5],h=r[6],d=r[7],m=r[8],p=r[9],y=r[10],_=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=u,e[4]=f,e[5]=v,e[6]=h,e[7]=d,e[8]=m,e[9]=p,e[10]=y,e[11]=_,e[12]=o*n+f*a+m*i+r[12],e[13]=l*n+v*a+p*i+r[13],e[14]=s*n+h*a+y*i+r[14],e[15]=u*n+d*a+_*i+r[15]),e}});var fx=ne((qle,ux)=>{ux.exports=FH;function FH(e,r,t){var n=t[0],a=t[1],i=t[2];return e[0]=r[0]*n,e[1]=r[1]*n,e[2]=r[2]*n,e[3]=r[3]*n,e[4]=r[4]*a,e[5]=r[5]*a,e[6]=r[6]*a,e[7]=r[7]*a,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var vx=ne((Dle,cx)=>{cx.exports=IH;function IH(e,r,t,n){var a=n[0],i=n[1],o=n[2],l=Math.sqrt(a*a+i*i+o*o),s,u,f,v,h,d,m,p,y,_,S,x,b,A,k,M,D,z,F,H,Y,O,X,V;return Math.abs(l)<1e-6?null:(l=1/l,a*=l,i*=l,o*=l,s=Math.sin(t),u=Math.cos(t),f=1-u,v=r[0],h=r[1],d=r[2],m=r[3],p=r[4],y=r[5],_=r[6],S=r[7],x=r[8],b=r[9],A=r[10],k=r[11],M=a*a*f+u,D=i*a*f+o*s,z=o*a*f-i*s,F=a*i*f-o*s,H=i*i*f+u,Y=o*i*f+a*s,O=a*o*f+i*s,X=i*o*f-a*s,V=o*o*f+u,e[0]=v*M+p*D+x*z,e[1]=h*M+y*D+b*z,e[2]=d*M+_*D+A*z,e[3]=m*M+S*D+k*z,e[4]=v*F+p*H+x*Y,e[5]=h*F+y*H+b*Y,e[6]=d*F+_*H+A*Y,e[7]=m*F+S*H+k*Y,e[8]=v*O+p*X+x*V,e[9]=h*O+y*X+b*V,e[10]=d*O+_*X+A*V,e[11]=m*O+S*X+k*V,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var dx=ne((Ele,hx)=>{hx.exports=HH;function HH(e,r,t){var n=Math.sin(t),a=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*a+u*n,e[5]=o*a+f*n,e[6]=l*a+v*n,e[7]=s*a+h*n,e[8]=u*a-i*n,e[9]=f*a-o*n,e[10]=v*a-l*n,e[11]=h*a-s*n,e}});var gx=ne((Ple,px)=>{px.exports=BH;function BH(e,r,t){var n=Math.sin(t),a=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[8],f=r[9],v=r[10],h=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*a-u*n,e[1]=o*a-f*n,e[2]=l*a-v*n,e[3]=s*a-h*n,e[8]=i*n+u*a,e[9]=o*n+f*a,e[10]=l*n+v*a,e[11]=s*n+h*a,e}});var yx=ne((Rle,mx)=>{mx.exports=OH;function OH(e,r,t){var n=Math.sin(t),a=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[4],f=r[5],v=r[6],h=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*a+u*n,e[1]=o*a+f*n,e[2]=l*a+v*n,e[3]=s*a+h*n,e[4]=u*a-i*n,e[5]=f*a-o*n,e[6]=v*a-l*n,e[7]=h*a-s*n,e}});var _x=ne((zle,bx)=>{bx.exports=UH;function UH(e,r,t){var n,a,i,o=t[0],l=t[1],s=t[2],u=Math.sqrt(o*o+l*l+s*s);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,l*=u,s*=u,n=Math.sin(r),a=Math.cos(r),i=1-a,e[0]=o*o*i+a,e[1]=l*o*i+s*n,e[2]=s*o*i-l*n,e[3]=0,e[4]=o*l*i-s*n,e[5]=l*l*i+a,e[6]=s*l*i+o*n,e[7]=0,e[8]=o*s*i+l*n,e[9]=l*s*i-o*n,e[10]=s*s*i+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var wx=ne((Nle,xx)=>{xx.exports=YH;function YH(e,r,t){var n=r[0],a=r[1],i=r[2],o=r[3],l=n+n,s=a+a,u=i+i,f=n*l,v=n*s,h=n*u,d=a*s,m=a*u,p=i*u,y=o*l,_=o*s,S=o*u;return e[0]=1-(d+p),e[1]=v+S,e[2]=h-_,e[3]=0,e[4]=v-S,e[5]=1-(f+p),e[6]=m+y,e[7]=0,e[8]=h+_,e[9]=m-y,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Ax=ne((Fle,Mx)=>{Mx.exports=GH;function GH(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var kx=ne((Ile,Tx)=>{Tx.exports=VH;function VH(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var Cx=ne((Hle,Sx)=>{Sx.exports=WH;function WH(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var qx=ne((Ble,Lx)=>{Lx.exports=ZH;function ZH(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Ex=ne((Ole,Dx)=>{Dx.exports=XH;function XH(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Iy=ne((Ule,Px)=>{Px.exports=jH;function jH(e,r){var t=r[0],n=r[1],a=r[2],i=r[3],o=t+t,l=n+n,s=a+a,u=t*o,f=n*o,v=n*l,h=a*o,d=a*l,m=a*s,p=i*o,y=i*l,_=i*s;return e[0]=1-v-m,e[1]=f+_,e[2]=h-y,e[3]=0,e[4]=f-_,e[5]=1-u-m,e[6]=d+p,e[7]=0,e[8]=h+y,e[9]=d-p,e[10]=1-u-v,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var zx=ne((Yle,Rx)=>{Rx.exports=JH;function JH(e,r,t,n,a,i,o){var l=1/(t-r),s=1/(a-n),u=1/(i-o);return e[0]=i*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(a+n)*s,e[10]=(o+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*u,e[15]=0,e}});var Fx=ne((Gle,Nx)=>{Nx.exports=$H;function $H(e,r,t,n,a){var i=1/Math.tan(r/2),o=1/(n-a);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(a+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*n*o,e[15]=0,e}});var Hx=ne((Vle,Ix)=>{Ix.exports=KH;function KH(e,r,t,n){var a=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),o=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),s=2/(o+l),u=2/(a+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(a-i)*u*.5,e[10]=n/(t-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*t/(t-n),e[15]=0,e}});var Ox=ne((Wle,Bx)=>{Bx.exports=QH;function QH(e,r,t,n,a,i,o){var l=1/(r-t),s=1/(n-a),u=1/(i-o);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*l,e[13]=(a+n)*s,e[14]=(o+i)*u,e[15]=1,e}});var Yx=ne((Zle,Ux)=>{var eB=Fy();Ux.exports=rB;function rB(e,r,t,n){var a,i,o,l,s,u,f,v,h,d,m=r[0],p=r[1],y=r[2],_=n[0],S=n[1],x=n[2],b=t[0],A=t[1],k=t[2];return Math.abs(m-b)<1e-6&&Math.abs(p-A)<1e-6&&Math.abs(y-k)<1e-6?eB(e):(f=m-b,v=p-A,h=y-k,d=1/Math.sqrt(f*f+v*v+h*h),f*=d,v*=d,h*=d,a=S*h-x*v,i=x*f-_*h,o=_*v-S*f,d=Math.sqrt(a*a+i*i+o*o),d?(d=1/d,a*=d,i*=d,o*=d):(a=0,i=0,o=0),l=v*o-h*i,s=h*a-f*o,u=f*i-v*a,d=Math.sqrt(l*l+s*s+u*u),d?(d=1/d,l*=d,s*=d,u*=d):(l=0,s=0,u=0),e[0]=a,e[1]=l,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=v,e[7]=0,e[8]=o,e[9]=u,e[10]=h,e[11]=0,e[12]=-(a*m+i*p+o*y),e[13]=-(l*m+s*p+u*y),e[14]=-(f*m+v*p+h*y),e[15]=1,e)}});var Vx=ne((Xle,Gx)=>{Gx.exports=tB;function tB(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Hy=ne((jle,Wx)=>{Wx.exports={create:V6(),clone:Z6(),copy:j6(),identity:Fy(),transpose:K6(),invert:ex(),adjoint:tx(),determinant:ax(),multiply:ox(),translate:sx(),scale:fx(),rotate:vx(),rotateX:dx(),rotateY:gx(),rotateZ:yx(),fromRotation:_x(),fromRotationTranslation:wx(),fromScaling:Ax(),fromTranslation:kx(),fromXRotation:Cx(),fromYRotation:qx(),fromZRotation:Ex(),fromQuat:Iy(),frustum:zx(),perspective:Fx(),perspectiveFromFieldOfView:Hx(),ortho:Ox(),lookAt:Yx(),str:Vx()}});var pd=ne(Xn=>{"use strict";var nB=Hy();Xn.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var aB=kt(),Zx=Pu(),iB=pd(),oB=Hy();function lB(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function sB(e){var r=aB.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function Xx(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function uB(e,r){jx("global",e,r)}function jx(e,r,t){var n="plotly.js-style-"+e,a=document.getElementById(n);if(!(a&&a.matches(".no-inline-styles"))){a||(a=document.createElement("style"),a.setAttribute("id",n),a.appendChild(document.createTextNode("")),document.head.appendChild(a));var i=a.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):Zx.warn("addStyleRule failed"):Zx.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function fB(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&Xx(t)}function cB(e,r,t,n,a,i){var o=n.split(":"),l=a.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[o[0]]=o[1]:f.style[l[0]]=l[1])}),u.setAttribute(s,!0))})}function vB(e){var r=$x(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(n){var a=Jx(n);if(a){var i=iB.convertCssMatrix(a);t=oB.multiply(t,t,i)}}),t}function Jx(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function $x(e){for(var r=[];hB(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function hB(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function dB(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}Kx.exports={getGraphDiv:lB,isPlotDiv:sB,removeElement:Xx,addStyleRule:uB,addRelatedStyleRule:jx,deleteRelatedStyleRule:fB,setStyleOnHover:cB,getFullTransformMatrix:vB,getElementTransformMatrix:Jx,getElementAndAncestors:$x,equalDomRects:dB}});var i1=ne((Kle,Qx)=>{"use strict";Qx.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var _o=ne((Qle,o7)=>{"use strict";var r7=la().extendFlat,pB=Gs(),t7={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},n7={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},gB=t7.flags.slice().concat(["fullReplot"]),mB=n7.flags.slice().concat("layoutReplot");o7.exports={traces:t7,layout:n7,traceFlags:function(){return e7(gB)},layoutFlags:function(){return e7(mB)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";By.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};By.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Oy=ne((rse,l7)=>{"use strict";l7.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Ru=ne(gd=>{"use strict";var s7=Oy(),tse=s7.FORMAT_LINK,nse=s7.DATE_FORMAT_LINK;function Uy(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var n=[],a=0;a{"use strict";function zu(e,r){return r?r.d2l(e):e}function u7(e,r){return r?r.l2d(e):e}function yB(e){return e.x0}function bB(e){return e.x1}function _B(e){return e.y0}function xB(e){return e.y1}function f7(e){return e.x0shift||0}function c7(e){return e.x1shift||0}function v7(e){return e.y0shift||0}function h7(e){return e.y1shift||0}function md(e,r){return zu(e.x1,r)+c7(e)-zu(e.x0,r)-f7(e)}function yd(e,r,t){return zu(e.y1,t)+h7(e)-zu(e.y0,t)-v7(e)}function wB(e,r){return Math.abs(md(e,r))}function MB(e,r,t){return Math.abs(yd(e,r,t))}function AB(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(md(e,r),2)+Math.pow(yd(e,r,t),2))}function TB(e,r){return u7((zu(e.x1,r)+c7(e)+zu(e.x0,r)+f7(e))/2,r)}function kB(e,r,t){return u7((zu(e.y1,t)+h7(e)+zu(e.y0,t)+v7(e))/2,t)}function SB(e,r,t){return e.type!=="line"?void 0:yd(e,r,t)/md(e,r)}d7.exports={x0:yB,x1:bB,y0:_B,y1:xB,slope:SB,dx:md,dy:yd,width:wB,height:MB,length:AB,xcenter:TB,ycenter:kB}});var m7=ne((ose,g7)=>{"use strict";var CB=_o().overrideAll,Qf=bo(),p7=$a(),LB=Kl().dash,Nu=la().extendFlat,qB=Ru().shapeTexttemplateAttrs,DB=bd();g7.exports=CB({newshape:{visible:Nu({},Qf.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Nu({},Qf.legend,{}),legendgroup:Nu({},Qf.legendgroup,{}),legendgrouptitle:{text:Nu({},Qf.legendgrouptitle.text,{}),font:p7({})},legendrank:Nu({},Qf.legendrank,{}),legendwidth:Nu({},Qf.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Nu({},LB,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Nu({},Qf.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:qB({newshape:!0},{keys:Object.keys(DB)}),font:p7({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var b7=ne((lse,y7)=>{"use strict";var EB=Kl().dash,PB=la().extendFlat;y7.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:PB({},EB,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var _d=ne((sse,_7)=>{"use strict";_7.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var A0=ne((use,A7)=>{"use strict";var Yy=$a(),RB=i1(),xd=cl(),x7=m7(),w7=b7(),zB=_d(),M7=la().extendFlat,wd=Yy({editType:"calc"});wd.family.dflt='"Open Sans", verdana, arial, sans-serif';wd.size.dflt=12;wd.color.dflt=xd.defaultLine;A7.exports={font:wd,title:{text:{valType:"string",editType:"layoutstyle"},font:Yy({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Yy({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:M7(zB({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:xd.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:xd.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:xd.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:x7.newshape,activeshape:x7.activeshape,newselection:w7.newselection,activeselection:w7.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:M7({},RB.transition,{editType:"none"})}});var T7=O_(()=>{});var NB={};var k7=O_(()=>{T7()});var dt=ne(Dt=>{"use strict";var T0=Pu(),S7=dd(),C7=Ny(),FB=Gs(),IB=a1().addStyleRule,L7=la(),HB=bo(),BB=A0(),OB=L7.extendFlat,Gy=L7.extendDeepAll;Dt.modules={};Dt.allCategories={};Dt.allTypes=[];Dt.subplotsRegistry={};Dt.componentsRegistry={};Dt.layoutArrayContainers=[];Dt.layoutArrayRegexes=[];Dt.traceLayoutAttributes={};Dt.localeRegistry={};Dt.apiMethodRegistry={};Dt.collectableSubplotTypes=null;Dt.register=function(r){if(Dt.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var ZB=m0().timeFormat,B7=Bt(),Vy=Pu(),Iu=b0().mod,C0=En(),xo=C0.BADNUM,Di=C0.ONEDAY,o1=C0.ONEHOUR,Fu=C0.ONEMIN,S0=C0.ONESEC,l1=C0.EPOCHJD,Vs=dt(),R7=m0().utcFormat,XB=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,jB=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,z7=new Date().getFullYear()-70;function Ws(e){return e&&Vs.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}jn.dateTick0=function(e,r){var t=JB(e,!!r);if(r<2)return t;var n=jn.dateTime2ms(t,e);return n+=Di*(r-1),jn.ms2DateTime(n,0,e)};function JB(e,r){return Ws(e)?r?Vs.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Vs.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}jn.dfltRange=function(e){return Ws(e)?Vs.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};jn.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Ad,Td;jn.dateTime2ms=function(e,r){if(jn.isJSDate(e)){var t=e.getTimezoneOffset()*Fu,n=(e.getUTCMinutes()-e.getMinutes())*Fu+(e.getUTCSeconds()-e.getSeconds())*S0+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var a=3*Fu;t=t-a/2+Iu(n-t+a/2,a)}return e=Number(e)-t,e>=Ad&&e<=Td?e:xo}if(typeof e!="string"&&typeof e!="number")return xo;e=String(e);var i=Ws(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.substr(1),r="");var l=i&&r.substr(0,7)==="chinese",s=e.match(l?jB:XB);if(!s)return xo;var u=s[1],f=s[3]||"1",v=Number(s[5]||1),h=Number(s[7]||0),d=Number(s[9]||0),m=Number(s[11]||0);if(i){if(u.length===2)return xo;u=Number(u);var p;try{var y=Vs.getComponentMethod("calendars","getCal")(r);if(l){var _=f.charAt(f.length-1)==="i";f=parseInt(f,10),p=y.newDate(u,y.toMonthIndex(u,f,_),v)}else p=y.newDate(u,Number(f),v)}catch(x){return xo}return p?(p.toJD()-l1)*Di+h*o1+d*Fu+m*S0:xo}u.length===2?u=(Number(u)+2e3-z7)%100+z7:u=Number(u),f-=1;var S=new Date(Date.UTC(2e3,f,v,h,d));return S.setUTCFullYear(u),S.getUTCMonth()!==f||S.getUTCDate()!==v?xo:S.getTime()+m*S0};Ad=jn.MIN_MS=jn.dateTime2ms("-9999");Td=jn.MAX_MS=jn.dateTime2ms("9999-12-31 23:59:59.9999");jn.isDateTime=function(e,r){return jn.dateTime2ms(e,r)!==xo};function k0(e,r){return String(e+Math.pow(10,r)).substr(1)}var Md=90*Di,N7=3*o1,F7=5*Fu;jn.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Ad&&e<=Td))return xo;r||(r=0);var n=Math.floor(Iu(e+.05,1)*10),a=Math.round(e-n/10),i,o,l,s,u,f;if(Ws(t)){var v=Math.floor(a/Di)+l1,h=Math.floor(Iu(e,Di));try{i=Vs.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(d){i=R7("G%Y-%m-%d")(new Date(a))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;o=r=Ad+Di&&e<=Td-Di))return xo;var r=Math.floor(Iu(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=ZB("%Y-%m-%d")(t),a=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return O7(n,a,i,o,l)};function O7(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+k0(r,2)+":"+k0(t,2),(n||a)&&(e+=":"+k0(n,2),a))){for(var i=4;a%10===0;)i-=1,a/=10;e+="."+k0(a,i)}return e}jn.cleanDate=function(e,r,t){if(e===xo)return r;if(jn.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ws(t))return Vy.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=jn.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!jn.isDateTime(e,t))return Vy.error("unrecognized date",e),r;return e};var $B=/%\d?f/g,KB=/%h/g,QB={1:"1",2:"1",3:"2",4:"2"};function I7(e,r,t,n){e=e.replace($B,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return l});var a=new Date(Math.floor(r+.05));if(e=e.replace(KB,function(){return QB[t("%q")(a)]}),Ws(n))try{e=Vs.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(i){return"Invalid"}return t(e)(a)}var eO=[59,59.9,59.99,59.999,59.9999];function rO(e,r){var t=Iu(e+.05,Di),n=k0(Math.floor(t/o1),2)+":"+k0(Iu(Math.floor(t/Fu),60),2);if(r!=="M"){B7(r)||(r=0);var a=Math.min(Iu(e/S0,60),eO[r]),i=(100+a).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+i}return n}jn.formatDate=function(e,r,t,n,a,i){if(a=Ws(a)&&a,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-gl2d.js b/dist/plotly-gl2d.js index a59671bfaf9..d62d4afcf44 100644 --- a/dist/plotly-gl2d.js +++ b/dist/plotly-gl2d.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl2d) v3.0.3 +* plotly.js (gl2d) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -52,7 +52,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-gl2d.min.js b/dist/plotly-gl2d.min.js index ece27c2c0b4..b2c03524844 100644 --- a/dist/plotly-gl2d.min.js +++ b/dist/plotly-gl2d.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl2d - minified) v3.0.3 +* plotly.js (gl2d - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Fne=Object.create;var Oy=Object.defineProperty;var Rne=Object.getOwnPropertyDescriptor;var Pne=Object.getOwnPropertyNames;var Nne=Object.getPrototypeOf,Ine=Object.prototype.hasOwnProperty;var Qv=(e,r)=>()=>(e&&(r=e(e=0)),r);var R=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),One=(e,r)=>{for(var t in r)Oy(e,t,{get:r[t],enumerable:!0})},hM=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Pne(r))!Ine.call(e,n)&&n!==t&&Oy(e,n,{get:()=>r[n],enumerable:!(a=Rne(r,n))||a.enumerable});return e};var zne=(e,r,t)=>(t=e!=null?Fne(Nne(e)):{},hM(r||!e||!e.__esModule?Oy(t,"default",{value:e,enumerable:!0}):t,e)),dM=e=>hM(Oy({},"__esModule",{value:!0}),e);var zy=R(pM=>{"use strict";pM.version="3.0.3"});var yM=R((mM,By)=>{(function(r,t,a){t[r]=t[r]||a(),typeof By!="undefined"&&By.exports&&(By.exports=t[r])})("Promise",typeof window!="undefined"?window:mM,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,A,x,T){return Object.defineProperty(_,A,{value:x,writable:!0,configurable:T!==!1})}}catch(b){r=function(A,x,T){return A[x]=T,A}}a=function(){var _,A,x;function T(S,M){this.fn=S,this.self=M,this.next=void 0}return{add:function(M,k){x=new T(M,k),A?A.next=x:_=x,A=x,x=void 0},drain:function(){var M=_;for(_=A=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(b,_){a.add(b,_),t||(t=i(a.drain))}function l(b){var _,A=typeof b;return b!=null&&(A=="object"||A=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&o(s,A))}catch(x){c.call(new d(A),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&o(s,_))}function v(b,_,A,x){for(var T=0;T<_.length;T++)(function(M){b.resolve(_[M]).then(function(D){A(M,D)},x)})(T)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function g(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,T){var S={success:typeof x=="function"?x:!0,failure:typeof T=="function"?T:!1};return S.promise=new this.constructor(function(k,D){if(typeof k!="function"||typeof D!="function")throw TypeError("Not a function");S.resolve=k,S.reject=D}),_.chain.push(S),_.state!==0&&o(s,_),S.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(A){c.call(_,A)}}var m=r({},"constructor",g,!1);return g.prototype=m,r(m,"__NPO__",0,!1),r(g,"resolve",function(_){var A=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");T(_)})}),r(g,"reject",function(_){return new this(function(x,T){if(typeof x!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(g,"all",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):_.length===0?A.resolve([]):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");var M=_.length,k=Array(M),D=0;v(A,_,function(N,q){k[N]=q,++D===M&&T(k)},S)})}),r(g,"race",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");v(A,_,function(k,D){T(D)},S)})}),g})});var ta=R((ZSe,Uy)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(y){for(var w=y.length,C=new Array(w);w--;)C[w]=y[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(y,w){l.call(this,y,w+"")},o.setAttributeNS=function(y,w,C){s.call(this,y,w,C+"")},u.setProperty=function(y,w,C){f.call(this,y,w+"",C)}}e.ascending=c;function c(h,y){return hy?1:h>=y?0:NaN}e.descending=function(h,y){return yh?1:y>=h?0:NaN},e.min=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wL&&(E=L)}else{for(;++w=L){E=L;break}for(;++wL&&(E=L)}return E},e.max=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wE&&(E=L)}else{for(;++w=L){E=L;break}for(;++wE&&(E=L)}return E},e.extent=function(h,y){var w=-1,C=h.length,E,L,I;if(arguments.length===1){for(;++w=L){E=I=L;break}for(;++wL&&(E=L),I=L){E=I=L;break}for(;++wL&&(E=L),I1)return I/(z-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)<0?C=L+1:E=L}return C},right:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)>0?E=L:C=L+1}return C}}}var g=p(c);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(h){return p(h.length===1?function(y,w){return c(h(y),w)}:h)},e.shuffle=function(h,y,w){(C=arguments.length)<3&&(w=h.length,C<2&&(y=0));for(var C=w-y,E,L;C;)L=Math.random()*C--|0,E=h[C+y],h[C+y]=h[L+y],h[L+y]=E;return h},e.permute=function(h,y){for(var w=y.length,C=new Array(w);w--;)C[w]=h[y[w]];return C},e.pairs=function(h){for(var y=0,w=h.length-1,C,E=h[0],L=new Array(w<0?0:w);y=0;)for(I=h[y],w=I.length;--w>=0;)L[--E]=I[w];return L};var b=Math.abs;e.range=function(h,y,w){if(arguments.length<3&&(w=1,arguments.length<2&&(y=h,h=0)),(y-h)/w===1/0)throw new Error("infinite range");var C=[],E=_(b(w)),L=-1,I;if(h*=E,y*=E,w*=E,w<0)for(;(I=h+w*++L)>y;)C.push(I/E);else for(;(I=h+w*++L)=y.length)return E?E.call(h,z):C?z.sort(C):z;for(var J=-1,K=z.length,ee=y[X++],Me,qe,ne,he=new x,we;++J=y.length)return F;var X=[],J=w[z++];return F.forEach(function(K,ee){X.push({key:K,values:I(ee,z)})}),J?X.sort(function(K,ee){return J(K.key,ee.key)}):X}return h.map=function(F,z){return L(z,F,0)},h.entries=function(F){return I(L(e.map,F,0),0)},h.key=function(F){return y.push(F),h},h.sortKeys=function(F){return w[y.length-1]=F,h},h.sortValues=function(F){return C=F,h},h.rollup=function(F){return E=F,h},h},e.set=function(h){var y=new U;if(h)for(var w=0,C=h.length;w=0&&(C=h.slice(w+1),h=h.slice(0,w)),h)return arguments.length<2?this[h].on(C):this[h].on(C,y);if(arguments.length===2){if(y==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(C,null);return this}};function Q(h){var y=[],w=new x;function C(){for(var E=y,L=-1,I=E.length,F;++L=0&&(w=h.slice(0,y))!=="xmlns"&&(h=h.slice(y+1)),Te.hasOwnProperty(w)?{space:Te[w],local:h}:h}},Ce.attr=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node();return h=e.ns.qualify(h),h.local?w.getAttributeNS(h.space,h.local):w.getAttribute(h)}for(y in h)this.each(Pe(y,h[y]));return this}return this.each(Pe(h,y))};function Pe(h,y){h=e.ns.qualify(h);function w(){this.removeAttribute(h)}function C(){this.removeAttributeNS(h.space,h.local)}function E(){this.setAttribute(h,y)}function L(){this.setAttributeNS(h.space,h.local,y)}function I(){var z=y.apply(this,arguments);z==null?this.removeAttribute(h):this.setAttribute(h,z)}function F(){var z=y.apply(this,arguments);z==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,z)}return y==null?h.local?C:w:typeof y=="function"?h.local?F:I:h.local?L:E}function Ne(h){return h.trim().replace(/\s+/g," ")}Ce.classed=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node(),C=(h=Qe(h)).length,E=-1;if(y=w.classList){for(;++E=0;)(L=w[C])&&(E&&E!==L.nextSibling&&E.parentNode.insertBefore(L,E),E=L);return this},Ce.sort=function(h){h=Oe.apply(this,arguments);for(var y=-1,w=this.length;++y=y&&(y=E+1);!(z=I[y])&&++y0&&(h=h.slice(0,E));var I=pr.get(h);I&&(h=I,L=mr);function F(){var J=this[C];J&&(this.removeEventListener(h,J,J.$),delete this[C])}function z(){var J=L(y,t(arguments));F.call(this),this.addEventListener(h,this[C]=J,J.$=w),J._=y}function X(){var J=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),K;for(var ee in this)if(K=ee.match(J)){var Me=this[ee];this.removeEventListener(K[1],Me,Me.$),delete this[ee]}}return E?y?z:F:y?V:X}var pr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&pr.forEach(function(h){"on"+h in a&&pr.remove(h)});function Tr(h,y){return function(w){var C=e.event;e.event=w,y[0]=this.__data__;try{h.apply(this,y)}finally{e.event=C}}}function mr(h,y){var w=Tr(h,y);return function(C){var E=this,L=C.relatedTarget;(!L||L!==E&&!(L.compareDocumentPosition(E)&8))&&w.call(E,C)}}var vr,Cr=0;function Ir(h){var y=".dragsuppress-"+ ++Cr,w="click"+y,C=e.select(i(h)).on("touchmove"+y,ve).on("dragstart"+y,ve).on("selectstart"+y,ve);if(vr==null&&(vr="onselectstart"in h?!1:H(h.style,"userSelect")),vr){var E=n(h).style,L=E[vr];E[vr]="none"}return function(I){if(C.on(y,null),vr&&(E[vr]=L),I){var F=function(){C.on(w,null)};C.on(w,function(){ve(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Ze(h,xe())};var Gr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ze(h,y){y.changedTouches&&(y=y.changedTouches[0]);var w=h.ownerSVGElement||h;if(w.createSVGPoint){var C=w.createSVGPoint();if(Gr<0){var E=i(h);if(E.scrollX||E.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=w[0][0].getScreenCTM();Gr=!(L.f||L.e),w.remove()}}return Gr?(C.x=y.pageX,C.y=y.pageY):(C.x=y.clientX,C.y=y.clientY),C=C.matrixTransform(h.getScreenCTM().inverse()),[C.x,C.y]}var I=h.getBoundingClientRect();return[y.clientX-I.left-h.clientLeft,y.clientY-I.top-h.clientTop]}e.touch=function(h,y,w){if(arguments.length<3&&(w=y,y=xe().changedTouches),y){for(var C=0,E=y.length,L;C0?1:h<0?-1:0}function aa(h,y,w){return(y[0]-h[0])*(w[1]-h[1])-(y[1]-h[1])*(w[0]-h[0])}function en(h){return h>1?0:h<-1?Ie:Math.acos(h)}function Ln(h){return h>1?$r:h<-1?-$r:Math.asin(h)}function si(h){return((h=Math.exp(h))-1/h)/2}function Dn(h){return((h=Math.exp(h))+1/h)/2}function Vi(h){return((h=Math.exp(2*h))-1)/(h+1)}function Bn(h){return(h=Math.sin(h/2))*h}var qn=Math.SQRT2,yi=2,_t=4;e.interpolateZoom=function(h,y){var w=h[0],C=h[1],E=h[2],L=y[0],I=y[1],F=y[2],z=L-w,X=I-C,J=z*z+X*X,K,ee;if(J0&&(zr=zr.transition().duration(I)),zr.call(Re.event)}function it(){he&&he.domain(ne.range().map(function(zr){return(zr-h.x)/h.k}).map(ne.invert)),Fe&&Fe.domain(we.range().map(function(zr){return(zr-h.y)/h.k}).map(we.invert))}function ot(zr){F++||zr({type:"zoomstart"})}function qt(zr){it(),zr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function ct(zr){--F||(zr({type:"zoomend"}),w=null)}function kt(){var zr=this,Ft=qe.of(zr,arguments),Ut=0,ua=e.select(i(zr)).on(X,Hn).on(J,Kn),Ba=me(e.mouse(zr)),cn=Ir(zr);Xv.call(zr),ot(Ft);function Hn(){Ut=1,Pr(e.mouse(zr),Ba),qt(Ft)}function Kn(){ua.on(X,null).on(J,null),cn(Ut),ct(Ft)}}function ha(){var zr=this,Ft=qe.of(zr,arguments),Ut={},ua=0,Ba,cn=".zoom-"+e.event.changedTouches[0].identifier,Hn="touchmove"+cn,Kn="touchend"+cn,gi=[],G=e.select(zr),ie=Ir(zr);We(),ot(Ft),G.on(z,null).on(ee,We);function ue(){var $e=e.touches(zr);return Ba=h.k,$e.forEach(function(br){br.identifier in Ut&&(Ut[br.identifier]=me(br))}),$e}function We(){var $e=e.event.target;e.select($e).on(Hn,Ke).on(Kn,ar),gi.push($e);for(var br=e.event.changedTouches,Dr=0,qr=br.length;Dr1){var ft=Fr[0],Zr=Fr[1],hr=ft[0]-Zr[0],ze=ft[1]-Zr[1];ua=hr*hr+ze*ze}}function Ke(){var $e=e.touches(zr),br,Dr,qr,Fr;Xv.call(zr);for(var xt=0,ft=$e.length;xt1?1:y,w=w<0?0:w>1?1:w,E=w<=.5?w*(1+y):w+y-w*y,C=2*w-E;function L(F){return F>360?F-=360:F<0&&(F+=360),F<60?C+(E-C)*F/60:F<180?E:F<240?C+(E-C)*(240-F)/60:C}function I(F){return Math.round(L(F)*255)}return new ui(I(h+120),I(h),I(h-120))}e.hcl=on;function on(h,y,w){return this instanceof on?(this.h=+h,this.c=+y,void(this.l=+w)):arguments.length<2?h instanceof on?new on(h.h,h.c,h.l):h instanceof xn?As(h.l,h.a,h.b):As((h=jr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new on(h,y,w)}var Yi=on.prototype=new Xa;Yi.brighter=function(h){return new on(this.h,this.c,Math.min(100,this.l+Aa*(arguments.length?h:1)))},Yi.darker=function(h){return new on(this.h,this.c,Math.max(0,this.l-Aa*(arguments.length?h:1)))},Yi.rgb=function(){return Wi(this.h,this.c,this.l).rgb()};function Wi(h,y,w){return isNaN(h)&&(h=0),isNaN(y)&&(y=0),new xn(w,Math.cos(h*=St)*y,Math.sin(h)*y)}e.lab=xn;function xn(h,y,w){return this instanceof xn?(this.l=+h,this.a=+y,void(this.b=+w)):arguments.length<2?h instanceof xn?new xn(h.l,h.a,h.b):h instanceof on?Wi(h.h,h.c,h.l):jr((h=ui(h)).r,h.g,h.b):new xn(h,y,w)}var Aa=18,Un=.95047,_s=1,ws=1.08883,Bl=xn.prototype=new Xa;Bl.brighter=function(h){return new xn(Math.min(100,this.l+Aa*(arguments.length?h:1)),this.a,this.b)},Bl.darker=function(h){return new xn(Math.max(0,this.l-Aa*(arguments.length?h:1)),this.a,this.b)},Bl.rgb=function(){return _v(this.l,this.a,this.b)};function _v(h,y,w){var C=(h+16)/116,E=C+y/500,L=C-w/200;return E=Bf(E)*Un,C=Bf(C)*_s,L=Bf(L)*ws,new ui(ol(3.2404542*E-1.5371385*C-.4985314*L),ol(-.969266*E+1.8760108*C+.041556*L),ol(.0556434*E-.2040259*C+1.0572252*L))}function As(h,y,w){return h>0?new on(Math.atan2(w,y)*ea,Math.sqrt(y*y+w*w),h):new on(NaN,NaN,h)}function Bf(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function Uf(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function ol(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=ui;function ui(h,y,w){return this instanceof ui?(this.r=~~h,this.g=~~y,void(this.b=~~w)):arguments.length<2?h instanceof ui?new ui(h.r,h.g,h.b):jt(""+h,ui,rn):new ui(h,y,w)}function ll(h){return new ui(h>>16,h>>8&255,h&255)}function Ts(h){return ll(h)+""}var go=ui.prototype=new Xa;go.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var y=this.r,w=this.g,C=this.b,E=30;return!y&&!w&&!C?new ui(E,E,E):(y&&y>4,C=C>>4|C,E=z&240,E=E>>4|E,L=z&15,L=L<<4|L):h.length===7&&(C=(z&16711680)>>16,E=(z&65280)>>8,L=z&255)),y(C,E,L))}function va(h,y,w){var C=Math.min(h/=255,y/=255,w/=255),E=Math.max(h,y,w),L=E-C,I,F,z=(E+C)/2;return L?(F=z<.5?L/(E+C):L/(2-E-C),h==E?I=(y-w)/L+(y0&&z<1?0:I),new Sa(I,F,z)}function jr(h,y,w){h=Gn(h),y=Gn(y),w=Gn(w);var C=Uf((.4124564*h+.3575761*y+.1804375*w)/Un),E=Uf((.2126729*h+.7151522*y+.072175*w)/_s),L=Uf((.0193339*h+.119192*y+.9503041*w)/ws);return xn(116*E-16,500*(C-E),200*(E-L))}function Gn(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Ea(h){var y=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(y*2.55):y}var Fn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Fn.forEach(function(h,y){Fn.set(h,ll(y))});function Vt(h){return typeof h=="function"?h:function(){return h}}e.functor=Vt,e.xhr=bo($);function bo(h){return function(y,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Ul(y,w,h,C)}}function Ul(h,y,w,C){var E={},L=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,z=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=X:F.onreadystatechange=function(){F.readyState>3&&X()};function X(){var J=F.status,K;if(!J&&P5(F)||J>=200&&J<300||J===304){try{K=w.call(E,F)}catch(ee){L.error.call(E,ee);return}L.load.call(E,K)}else L.error.call(E,F)}return F.onprogress=function(J){var K=e.event;e.event=J;try{L.progress.call(E,F)}finally{e.event=K}},E.header=function(J,K){return J=(J+"").toLowerCase(),arguments.length<2?I[J]:(K==null?delete I[J]:I[J]=K+"",E)},E.mimeType=function(J){return arguments.length?(y=J==null?null:J+"",E):y},E.responseType=function(J){return arguments.length?(z=J,E):z},E.response=function(J){return w=J,E},["get","post"].forEach(function(J){E[J]=function(){return E.send.apply(E,[J].concat(t(arguments)))}}),E.send=function(J,K,ee){if(arguments.length===2&&typeof K=="function"&&(ee=K,K=null),F.open(J,h,!0),y!=null&&!("accept"in I)&&(I.accept=y+",*/*"),F.setRequestHeader)for(var Me in I)F.setRequestHeader(Me,I[Me]);return y!=null&&F.overrideMimeType&&F.overrideMimeType(y),z!=null&&(F.responseType=z),ee!=null&&E.on("error",ee).on("load",function(qe){ee(null,qe)}),L.beforesend.call(E,F),F.send(K==null?null:K),E},E.abort=function(){return F.abort(),E},e.rebind(E,L,"on"),C==null?E:E.get(Gl(C))}function Gl(h){return h.length===1?function(y,w){h(y==null?w:null)}:h}function P5(h){var y=h.responseType;return y&&y!=="text"?h.response:h.responseText}e.dsv=function(h,y){var w=new RegExp('["'+h+` +"use strict";var Plotly=(()=>{var Fne=Object.create;var Oy=Object.defineProperty;var Rne=Object.getOwnPropertyDescriptor;var Pne=Object.getOwnPropertyNames;var Nne=Object.getPrototypeOf,Ine=Object.prototype.hasOwnProperty;var Qv=(e,r)=>()=>(e&&(r=e(e=0)),r);var R=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),One=(e,r)=>{for(var t in r)Oy(e,t,{get:r[t],enumerable:!0})},hM=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Pne(r))!Ine.call(e,n)&&n!==t&&Oy(e,n,{get:()=>r[n],enumerable:!(a=Rne(r,n))||a.enumerable});return e};var zne=(e,r,t)=>(t=e!=null?Fne(Nne(e)):{},hM(r||!e||!e.__esModule?Oy(t,"default",{value:e,enumerable:!0}):t,e)),dM=e=>hM(Oy({},"__esModule",{value:!0}),e);var zy=R(pM=>{"use strict";pM.version="3.0.2"});var yM=R((mM,By)=>{(function(r,t,a){t[r]=t[r]||a(),typeof By!="undefined"&&By.exports&&(By.exports=t[r])})("Promise",typeof window!="undefined"?window:mM,function(){"use strict";var r,t,a,n=Object.prototype.toString,i=typeof setImmediate!="undefined"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(_,A,x,T){return Object.defineProperty(_,A,{value:x,writable:!0,configurable:T!==!1})}}catch(b){r=function(A,x,T){return A[x]=T,A}}a=function(){var _,A,x;function T(S,M){this.fn=S,this.self=M,this.next=void 0}return{add:function(M,k){x=new T(M,k),A?A.next=x:_=x,A=x,x=void 0},drain:function(){var M=_;for(_=A=t=void 0;M;)M.fn.call(M.self),M=M.next}}}();function o(b,_){a.add(b,_),t||(t=i(a.drain))}function l(b){var _,A=typeof b;return b!=null&&(A=="object"||A=="function")&&(_=b.then),typeof _=="function"?_:!1}function s(){for(var b=0;b0&&o(s,A))}catch(x){c.call(new d(A),x)}}}function c(b){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=b,_.state=2,_.chain.length>0&&o(s,_))}function v(b,_,A,x){for(var T=0;T<_.length;T++)(function(M){b.resolve(_[M]).then(function(D){A(M,D)},x)})(T)}function d(b){this.def=b,this.triggered=!1}function p(b){this.promise=b,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function g(b){if(typeof b!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new p(this);this.then=function(x,T){var S={success:typeof x=="function"?x:!0,failure:typeof T=="function"?T:!1};return S.promise=new this.constructor(function(k,D){if(typeof k!="function"||typeof D!="function")throw TypeError("Not a function");S.resolve=k,S.reject=D}),_.chain.push(S),_.state!==0&&o(s,_),S.promise},this.catch=function(x){return this.then(void 0,x)};try{b.call(void 0,function(x){f.call(_,x)},function(x){c.call(_,x)})}catch(A){c.call(_,A)}}var m=r({},"constructor",g,!1);return g.prototype=m,r(m,"__NPO__",0,!1),r(g,"resolve",function(_){var A=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");T(_)})}),r(g,"reject",function(_){return new this(function(x,T){if(typeof x!="function"||typeof T!="function")throw TypeError("Not a function");T(_)})}),r(g,"all",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):_.length===0?A.resolve([]):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");var M=_.length,k=Array(M),D=0;v(A,_,function(N,q){k[N]=q,++D===M&&T(k)},S)})}),r(g,"race",function(_){var A=this;return n.call(_)!="[object Array]"?A.reject(TypeError("Not an array")):new A(function(T,S){if(typeof T!="function"||typeof S!="function")throw TypeError("Not a function");v(A,_,function(k,D){T(D)},S)})}),g})});var ta=R((ZSe,Uy)=>{(function(){var e={version:"3.8.2"},r=[].slice,t=function(h){return r.call(h)},a=self.document;function n(h){return h&&(h.ownerDocument||h.document||h).documentElement}function i(h){return h&&(h.ownerDocument&&h.ownerDocument.defaultView||h.document&&h||h.defaultView)}if(a)try{t(a.documentElement.childNodes)[0].nodeType}catch(h){t=function(y){for(var w=y.length,C=new Array(w);w--;)C[w]=y[w];return C}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(h){var o=this.Element.prototype,l=o.setAttribute,s=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,f=u.setProperty;o.setAttribute=function(y,w){l.call(this,y,w+"")},o.setAttributeNS=function(y,w,C){s.call(this,y,w,C+"")},u.setProperty=function(y,w,C){f.call(this,y,w+"",C)}}e.ascending=c;function c(h,y){return hy?1:h>=y?0:NaN}e.descending=function(h,y){return yh?1:y>=h?0:NaN},e.min=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wL&&(E=L)}else{for(;++w=L){E=L;break}for(;++wL&&(E=L)}return E},e.max=function(h,y){var w=-1,C=h.length,E,L;if(arguments.length===1){for(;++w=L){E=L;break}for(;++wE&&(E=L)}else{for(;++w=L){E=L;break}for(;++wE&&(E=L)}return E},e.extent=function(h,y){var w=-1,C=h.length,E,L,I;if(arguments.length===1){for(;++w=L){E=I=L;break}for(;++wL&&(E=L),I=L){E=I=L;break}for(;++wL&&(E=L),I1)return I/(z-1)},e.deviation=function(){var h=e.variance.apply(this,arguments);return h&&Math.sqrt(h)};function p(h){return{left:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)<0?C=L+1:E=L}return C},right:function(y,w,C,E){for(arguments.length<3&&(C=0),arguments.length<4&&(E=y.length);C>>1;h(y[L],w)>0?E=L:C=L+1}return C}}}var g=p(c);e.bisectLeft=g.left,e.bisect=e.bisectRight=g.right,e.bisector=function(h){return p(h.length===1?function(y,w){return c(h(y),w)}:h)},e.shuffle=function(h,y,w){(C=arguments.length)<3&&(w=h.length,C<2&&(y=0));for(var C=w-y,E,L;C;)L=Math.random()*C--|0,E=h[C+y],h[C+y]=h[L+y],h[L+y]=E;return h},e.permute=function(h,y){for(var w=y.length,C=new Array(w);w--;)C[w]=h[y[w]];return C},e.pairs=function(h){for(var y=0,w=h.length-1,C,E=h[0],L=new Array(w<0?0:w);y=0;)for(I=h[y],w=I.length;--w>=0;)L[--E]=I[w];return L};var b=Math.abs;e.range=function(h,y,w){if(arguments.length<3&&(w=1,arguments.length<2&&(y=h,h=0)),(y-h)/w===1/0)throw new Error("infinite range");var C=[],E=_(b(w)),L=-1,I;if(h*=E,y*=E,w*=E,w<0)for(;(I=h+w*++L)>y;)C.push(I/E);else for(;(I=h+w*++L)=y.length)return E?E.call(h,z):C?z.sort(C):z;for(var J=-1,K=z.length,ee=y[X++],Me,qe,ne,he=new x,we;++J=y.length)return F;var X=[],J=w[z++];return F.forEach(function(K,ee){X.push({key:K,values:I(ee,z)})}),J?X.sort(function(K,ee){return J(K.key,ee.key)}):X}return h.map=function(F,z){return L(z,F,0)},h.entries=function(F){return I(L(e.map,F,0),0)},h.key=function(F){return y.push(F),h},h.sortKeys=function(F){return w[y.length-1]=F,h},h.sortValues=function(F){return C=F,h},h.rollup=function(F){return E=F,h},h},e.set=function(h){var y=new U;if(h)for(var w=0,C=h.length;w=0&&(C=h.slice(w+1),h=h.slice(0,w)),h)return arguments.length<2?this[h].on(C):this[h].on(C,y);if(arguments.length===2){if(y==null)for(h in this)this.hasOwnProperty(h)&&this[h].on(C,null);return this}};function Q(h){var y=[],w=new x;function C(){for(var E=y,L=-1,I=E.length,F;++L=0&&(w=h.slice(0,y))!=="xmlns"&&(h=h.slice(y+1)),Te.hasOwnProperty(w)?{space:Te[w],local:h}:h}},Ce.attr=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node();return h=e.ns.qualify(h),h.local?w.getAttributeNS(h.space,h.local):w.getAttribute(h)}for(y in h)this.each(Pe(y,h[y]));return this}return this.each(Pe(h,y))};function Pe(h,y){h=e.ns.qualify(h);function w(){this.removeAttribute(h)}function C(){this.removeAttributeNS(h.space,h.local)}function E(){this.setAttribute(h,y)}function L(){this.setAttributeNS(h.space,h.local,y)}function I(){var z=y.apply(this,arguments);z==null?this.removeAttribute(h):this.setAttribute(h,z)}function F(){var z=y.apply(this,arguments);z==null?this.removeAttributeNS(h.space,h.local):this.setAttributeNS(h.space,h.local,z)}return y==null?h.local?C:w:typeof y=="function"?h.local?F:I:h.local?L:E}function Ne(h){return h.trim().replace(/\s+/g," ")}Ce.classed=function(h,y){if(arguments.length<2){if(typeof h=="string"){var w=this.node(),C=(h=Qe(h)).length,E=-1;if(y=w.classList){for(;++E=0;)(L=w[C])&&(E&&E!==L.nextSibling&&E.parentNode.insertBefore(L,E),E=L);return this},Ce.sort=function(h){h=Oe.apply(this,arguments);for(var y=-1,w=this.length;++y=y&&(y=E+1);!(z=I[y])&&++y0&&(h=h.slice(0,E));var I=pr.get(h);I&&(h=I,L=mr);function F(){var J=this[C];J&&(this.removeEventListener(h,J,J.$),delete this[C])}function z(){var J=L(y,t(arguments));F.call(this),this.addEventListener(h,this[C]=J,J.$=w),J._=y}function X(){var J=new RegExp("^__on([^.]+)"+e.requote(h)+"$"),K;for(var ee in this)if(K=ee.match(J)){var Me=this[ee];this.removeEventListener(K[1],Me,Me.$),delete this[ee]}}return E?y?z:F:y?V:X}var pr=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});a&&pr.forEach(function(h){"on"+h in a&&pr.remove(h)});function Tr(h,y){return function(w){var C=e.event;e.event=w,y[0]=this.__data__;try{h.apply(this,y)}finally{e.event=C}}}function mr(h,y){var w=Tr(h,y);return function(C){var E=this,L=C.relatedTarget;(!L||L!==E&&!(L.compareDocumentPosition(E)&8))&&w.call(E,C)}}var vr,Cr=0;function Ir(h){var y=".dragsuppress-"+ ++Cr,w="click"+y,C=e.select(i(h)).on("touchmove"+y,ve).on("dragstart"+y,ve).on("selectstart"+y,ve);if(vr==null&&(vr="onselectstart"in h?!1:H(h.style,"userSelect")),vr){var E=n(h).style,L=E[vr];E[vr]="none"}return function(I){if(C.on(y,null),vr&&(E[vr]=L),I){var F=function(){C.on(w,null)};C.on(w,function(){ve(),F()},!0),setTimeout(F,0)}}}e.mouse=function(h){return Ze(h,xe())};var Gr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Ze(h,y){y.changedTouches&&(y=y.changedTouches[0]);var w=h.ownerSVGElement||h;if(w.createSVGPoint){var C=w.createSVGPoint();if(Gr<0){var E=i(h);if(E.scrollX||E.scrollY){w=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var L=w[0][0].getScreenCTM();Gr=!(L.f||L.e),w.remove()}}return Gr?(C.x=y.pageX,C.y=y.pageY):(C.x=y.clientX,C.y=y.clientY),C=C.matrixTransform(h.getScreenCTM().inverse()),[C.x,C.y]}var I=h.getBoundingClientRect();return[y.clientX-I.left-h.clientLeft,y.clientY-I.top-h.clientTop]}e.touch=function(h,y,w){if(arguments.length<3&&(w=y,y=xe().changedTouches),y){for(var C=0,E=y.length,L;C0?1:h<0?-1:0}function aa(h,y,w){return(y[0]-h[0])*(w[1]-h[1])-(y[1]-h[1])*(w[0]-h[0])}function en(h){return h>1?0:h<-1?Ie:Math.acos(h)}function Ln(h){return h>1?$r:h<-1?-$r:Math.asin(h)}function si(h){return((h=Math.exp(h))-1/h)/2}function Dn(h){return((h=Math.exp(h))+1/h)/2}function Vi(h){return((h=Math.exp(2*h))-1)/(h+1)}function Bn(h){return(h=Math.sin(h/2))*h}var qn=Math.SQRT2,yi=2,_t=4;e.interpolateZoom=function(h,y){var w=h[0],C=h[1],E=h[2],L=y[0],I=y[1],F=y[2],z=L-w,X=I-C,J=z*z+X*X,K,ee;if(J0&&(zr=zr.transition().duration(I)),zr.call(Re.event)}function it(){he&&he.domain(ne.range().map(function(zr){return(zr-h.x)/h.k}).map(ne.invert)),Fe&&Fe.domain(we.range().map(function(zr){return(zr-h.y)/h.k}).map(we.invert))}function ot(zr){F++||zr({type:"zoomstart"})}function qt(zr){it(),zr({type:"zoom",scale:h.k,translate:[h.x,h.y]})}function ct(zr){--F||(zr({type:"zoomend"}),w=null)}function kt(){var zr=this,Ft=qe.of(zr,arguments),Ut=0,ua=e.select(i(zr)).on(X,Hn).on(J,Kn),Ba=me(e.mouse(zr)),cn=Ir(zr);Xv.call(zr),ot(Ft);function Hn(){Ut=1,Pr(e.mouse(zr),Ba),qt(Ft)}function Kn(){ua.on(X,null).on(J,null),cn(Ut),ct(Ft)}}function ha(){var zr=this,Ft=qe.of(zr,arguments),Ut={},ua=0,Ba,cn=".zoom-"+e.event.changedTouches[0].identifier,Hn="touchmove"+cn,Kn="touchend"+cn,gi=[],G=e.select(zr),ie=Ir(zr);We(),ot(Ft),G.on(z,null).on(ee,We);function ue(){var $e=e.touches(zr);return Ba=h.k,$e.forEach(function(br){br.identifier in Ut&&(Ut[br.identifier]=me(br))}),$e}function We(){var $e=e.event.target;e.select($e).on(Hn,Ke).on(Kn,ar),gi.push($e);for(var br=e.event.changedTouches,Dr=0,qr=br.length;Dr1){var ft=Fr[0],Zr=Fr[1],hr=ft[0]-Zr[0],ze=ft[1]-Zr[1];ua=hr*hr+ze*ze}}function Ke(){var $e=e.touches(zr),br,Dr,qr,Fr;Xv.call(zr);for(var xt=0,ft=$e.length;xt1?1:y,w=w<0?0:w>1?1:w,E=w<=.5?w*(1+y):w+y-w*y,C=2*w-E;function L(F){return F>360?F-=360:F<0&&(F+=360),F<60?C+(E-C)*F/60:F<180?E:F<240?C+(E-C)*(240-F)/60:C}function I(F){return Math.round(L(F)*255)}return new ui(I(h+120),I(h),I(h-120))}e.hcl=on;function on(h,y,w){return this instanceof on?(this.h=+h,this.c=+y,void(this.l=+w)):arguments.length<2?h instanceof on?new on(h.h,h.c,h.l):h instanceof xn?As(h.l,h.a,h.b):As((h=jr((h=e.rgb(h)).r,h.g,h.b)).l,h.a,h.b):new on(h,y,w)}var Yi=on.prototype=new Xa;Yi.brighter=function(h){return new on(this.h,this.c,Math.min(100,this.l+Aa*(arguments.length?h:1)))},Yi.darker=function(h){return new on(this.h,this.c,Math.max(0,this.l-Aa*(arguments.length?h:1)))},Yi.rgb=function(){return Wi(this.h,this.c,this.l).rgb()};function Wi(h,y,w){return isNaN(h)&&(h=0),isNaN(y)&&(y=0),new xn(w,Math.cos(h*=St)*y,Math.sin(h)*y)}e.lab=xn;function xn(h,y,w){return this instanceof xn?(this.l=+h,this.a=+y,void(this.b=+w)):arguments.length<2?h instanceof xn?new xn(h.l,h.a,h.b):h instanceof on?Wi(h.h,h.c,h.l):jr((h=ui(h)).r,h.g,h.b):new xn(h,y,w)}var Aa=18,Un=.95047,_s=1,ws=1.08883,Bl=xn.prototype=new Xa;Bl.brighter=function(h){return new xn(Math.min(100,this.l+Aa*(arguments.length?h:1)),this.a,this.b)},Bl.darker=function(h){return new xn(Math.max(0,this.l-Aa*(arguments.length?h:1)),this.a,this.b)},Bl.rgb=function(){return _v(this.l,this.a,this.b)};function _v(h,y,w){var C=(h+16)/116,E=C+y/500,L=C-w/200;return E=Bf(E)*Un,C=Bf(C)*_s,L=Bf(L)*ws,new ui(ol(3.2404542*E-1.5371385*C-.4985314*L),ol(-.969266*E+1.8760108*C+.041556*L),ol(.0556434*E-.2040259*C+1.0572252*L))}function As(h,y,w){return h>0?new on(Math.atan2(w,y)*ea,Math.sqrt(y*y+w*w),h):new on(NaN,NaN,h)}function Bf(h){return h>.206893034?h*h*h:(h-4/29)/7.787037}function Uf(h){return h>.008856?Math.pow(h,1/3):7.787037*h+4/29}function ol(h){return Math.round(255*(h<=.00304?12.92*h:1.055*Math.pow(h,1/2.4)-.055))}e.rgb=ui;function ui(h,y,w){return this instanceof ui?(this.r=~~h,this.g=~~y,void(this.b=~~w)):arguments.length<2?h instanceof ui?new ui(h.r,h.g,h.b):jt(""+h,ui,rn):new ui(h,y,w)}function ll(h){return new ui(h>>16,h>>8&255,h&255)}function Ts(h){return ll(h)+""}var go=ui.prototype=new Xa;go.brighter=function(h){h=Math.pow(.7,arguments.length?h:1);var y=this.r,w=this.g,C=this.b,E=30;return!y&&!w&&!C?new ui(E,E,E):(y&&y>4,C=C>>4|C,E=z&240,E=E>>4|E,L=z&15,L=L<<4|L):h.length===7&&(C=(z&16711680)>>16,E=(z&65280)>>8,L=z&255)),y(C,E,L))}function va(h,y,w){var C=Math.min(h/=255,y/=255,w/=255),E=Math.max(h,y,w),L=E-C,I,F,z=(E+C)/2;return L?(F=z<.5?L/(E+C):L/(2-E-C),h==E?I=(y-w)/L+(y0&&z<1?0:I),new Sa(I,F,z)}function jr(h,y,w){h=Gn(h),y=Gn(y),w=Gn(w);var C=Uf((.4124564*h+.3575761*y+.1804375*w)/Un),E=Uf((.2126729*h+.7151522*y+.072175*w)/_s),L=Uf((.0193339*h+.119192*y+.9503041*w)/ws);return xn(116*E-16,500*(C-E),200*(E-L))}function Gn(h){return(h/=255)<=.04045?h/12.92:Math.pow((h+.055)/1.055,2.4)}function Ea(h){var y=parseFloat(h);return h.charAt(h.length-1)==="%"?Math.round(y*2.55):y}var Fn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Fn.forEach(function(h,y){Fn.set(h,ll(y))});function Vt(h){return typeof h=="function"?h:function(){return h}}e.functor=Vt,e.xhr=bo($);function bo(h){return function(y,w,C){return arguments.length===2&&typeof w=="function"&&(C=w,w=null),Ul(y,w,h,C)}}function Ul(h,y,w,C){var E={},L=e.dispatch("beforesend","progress","load","error"),I={},F=new XMLHttpRequest,z=null;self.XDomainRequest&&!("withCredentials"in F)&&/^(http(s)?:)?\/\//.test(h)&&(F=new XDomainRequest),"onload"in F?F.onload=F.onerror=X:F.onreadystatechange=function(){F.readyState>3&&X()};function X(){var J=F.status,K;if(!J&&P5(F)||J>=200&&J<300||J===304){try{K=w.call(E,F)}catch(ee){L.error.call(E,ee);return}L.load.call(E,K)}else L.error.call(E,F)}return F.onprogress=function(J){var K=e.event;e.event=J;try{L.progress.call(E,F)}finally{e.event=K}},E.header=function(J,K){return J=(J+"").toLowerCase(),arguments.length<2?I[J]:(K==null?delete I[J]:I[J]=K+"",E)},E.mimeType=function(J){return arguments.length?(y=J==null?null:J+"",E):y},E.responseType=function(J){return arguments.length?(z=J,E):z},E.response=function(J){return w=J,E},["get","post"].forEach(function(J){E[J]=function(){return E.send.apply(E,[J].concat(t(arguments)))}}),E.send=function(J,K,ee){if(arguments.length===2&&typeof K=="function"&&(ee=K,K=null),F.open(J,h,!0),y!=null&&!("accept"in I)&&(I.accept=y+",*/*"),F.setRequestHeader)for(var Me in I)F.setRequestHeader(Me,I[Me]);return y!=null&&F.overrideMimeType&&F.overrideMimeType(y),z!=null&&(F.responseType=z),ee!=null&&E.on("error",ee).on("load",function(qe){ee(null,qe)}),L.beforesend.call(E,F),F.send(K==null?null:K),E},E.abort=function(){return F.abort(),E},e.rebind(E,L,"on"),C==null?E:E.get(Gl(C))}function Gl(h){return h.length===1?function(y,w){h(y==null?w:null)}:h}function P5(h){var y=h.responseType;return y&&y!=="text"?h.response:h.responseText}e.dsv=function(h,y){var w=new RegExp('["'+h+` ]`),C=h.charCodeAt(0);function E(X,J,K){arguments.length<3&&(K=J,J=null);var ee=Ul(X,y,J==null?L:I(J),K);return ee.row=function(Me){return arguments.length?ee.response((J=Me)==null?L:I(Me)):J},ee}function L(X){return E.parse(X.responseText)}function I(X){return function(J){return E.parse(J.responseText,X)}}E.parse=function(X,J){var K;return E.parseRows(X,function(ee,Me){if(K)return K(ee,Me-1);var qe=function(ne){for(var he={},we=ee.length,Fe=0;Fe=qe)return ee;if(Fe)return Fe=!1,K;var cr=ne;if(X.charCodeAt(cr)===34){for(var Mr=cr;Mr++24?(isFinite(y)&&(clearTimeout(Do),Do=setTimeout(ks,y)),Ms=0):(Ms=1,wv(ks))}e.timer.flush=function(){Gf(),ad()};function Gf(){for(var h=Date.now(),y=Pi;y;)h>=y.t&&y.c(h-y.t)&&(y.c=null),y=y.n;return h}function ad(){for(var h,y=Pi,w=1/0;y;)y.c?(y.t=0;--F)ne.push(E[X[K[F]][2]]);for(F=+Me;F1&&aa(h[w[C-2]],h[w[C-1]],h[E])<=0;)--C;w[C++]=E}return w.slice(0,C)}function N5(h,y){return h[0]-y[0]||h[1]-y[1]}e.geom.polygon=function(h){return re(h,Av),h};var Av=e.geom.polygon.prototype=[];Av.area=function(){for(var h=-1,y=this.length,w,C=this[y-1],E=0;++hye)F=F.L;else if(I=y-Bm(F,w),I>ye){if(!F.R){C=F;break}F=F.R}else{L>-ye?(C=F.P,E=F):I>-ye?(C=F,E=F.N):C=E=F;break}var z=id(h);if(xo.insert(C,z),!(!C&&!E)){if(C===E){mu(C),E=id(C.site),xo.insert(z,E),z.edge=E.edge=Wf(C.site,z.site),qo(C),qo(E);return}if(!E){z.edge=Wf(C.site,z.site);return}mu(C),mu(E);var X=C.site,J=X.x,K=X.y,ee=h.x-J,Me=h.y-K,qe=E.site,ne=qe.x-J,he=qe.y-K,we=2*(ee*he-Me*ne),Fe=ee*ee+Me*Me,Re=ne*ne+he*he,me={x:(he*Fe-Me*Re)/we+J,y:(ee*Re-ne*Fe)/we+K};yu(E.edge,X,qe,me),z.edge=Wf(X,h,null,me),E.edge=Wf(h,qe,null,me),qo(C),qo(E)}}function od(h,y){var w=h.site,C=w.x,E=w.y,L=E-y;if(!L)return C;var I=h.P;if(!I)return-1/0;w=I.site;var F=w.x,z=w.y,X=z-y;if(!X)return F;var J=F-C,K=1/L-1/X,ee=J/X;return K?(-ee+Math.sqrt(ee*ee-2*K*(J*J/(-2*X)-z+X/2+E-L/2)))/K+C:(C+F)/2}function Bm(h,y){var w=h.N;if(w)return od(w,y);var C=h.site;return C.y===y?C.x:1/0}function ld(h){this.site=h,this.edges=[]}ld.prototype.prepare=function(){for(var h=this.edges,y=h.length,w;y--;)w=h[y].edge,(!w.b||!w.a)&&h.splice(y,1);return h.sort(kv),h.length};function pu(h){for(var y=h[0][0],w=h[1][0],C=h[0][1],E=h[1][1],L,I,F,z,X=sl,J=X.length,K,ee,Me,qe,ne,he;J--;)if(K=X[J],!(!K||!K.prepare()))for(Me=K.edges,qe=Me.length,ee=0;eeye||b(z-I)>ye)&&(Me.splice(ee,0,new Cv(z5(K.site,he,b(F-y)ye?{x:y,y:b(L-y)ye?{x:b(I-E)ye?{x:w,y:b(L-w)ye?{x:b(I-C)=-Ge)){var ee=z*z+X*X,Me=J*J+he*he,qe=(he*ee-X*Me)/K,ne=(z*Me-J*ee)/K,he=ne+F,we=Mv.pop()||new sd;we.arc=h,we.site=E,we.x=qe+I,we.y=he+Math.sqrt(qe*qe+ne*ne),we.cy=he,h.circle=we;for(var Fe=null,Re=Cs._;Re;)if(we.y0)){if(ne/=Me,Me<0){if(ne0){if(ne>ee)return;ne>K&&(K=ne)}if(ne=w-F,!(!Me&&ne<0)){if(ne/=Me,Me<0){if(ne>ee)return;ne>K&&(K=ne)}else if(Me>0){if(ne0)){if(ne/=qe,qe<0){if(ne0){if(ne>ee)return;ne>K&&(K=ne)}if(ne=C-z,!(!qe&&ne<0)){if(ne/=qe,qe<0){if(ne>ee)return;ne>K&&(K=ne)}else if(qe>0){if(ne0&&(E.a={x:F+K*Me,y:z+K*qe}),ee<1&&(E.b={x:F+ee*Me,y:z+ee*qe}),E}}}}}}function O5(h){for(var y=Vl,w=I5(h[0][0],h[0][1],h[1][0],h[1][1]),C=y.length,E;C--;)E=y[C],(!ud(E,h)||!w(E)||b(E.a.x-E.b.x)=L)return;if(J>ee){if(!C)C={x:qe,y:I};else if(C.y>=F)return;w={x:qe,y:F}}else{if(!C)C={x:qe,y:F};else if(C.y1)if(J>ee){if(!C)C={x:(I-we)/he,y:I};else if(C.y>=F)return;w={x:(F-we)/he,y:F}}else{if(!C)C={x:(F-we)/he,y:F};else if(C.y=L)return;w={x:L,y:he*L+we}}else{if(!C)C={x:L,y:he*L+we};else if(C.x=J&&we.x<=ee&&we.y>=K&&we.y<=Me?[[J,Me],[ee,Me],[ee,K],[J,K]]:[];Fe.point=z[ne]}),X}function F(z){return z.map(function(X,J){return{x:Math.round(C(X,J)/ye)*ye,y:Math.round(E(X,J)/ye)*ye,i:J}})}return I.links=function(z){return bu(F(z)).edges.filter(function(X){return X.l&&X.r}).map(function(X){return{source:z[X.l.i],target:z[X.r.i]}})},I.triangles=function(z){var X=[];return bu(F(z)).cells.forEach(function(J,K){for(var ee=J.site,Me=J.edges.sort(kv),qe=-1,ne=Me.length,he,we,Fe=Me[ne-1].edge,Re=Fe.l===ee?Fe.r:Fe.l;++qeRe&&(Re=J.x),J.y>me&&(me=J.y),Me.push(J.x),qe.push(J.y);else for(ne=0;neRe&&(Re=cr),Mr>me&&(me=Mr),Me.push(cr),qe.push(Mr)}var Pr=Re-we,Yr=me-Fe;Pr>Yr?me=Fe+Pr:Re=we+Yr;function it(ct,kt,ha,an,_a,zr,Ft,Ut){if(!(isNaN(ha)||isNaN(an)))if(ct.leaf){var ua=ct.x,Ba=ct.y;if(ua!=null)if(b(ua-ha)+b(Ba-an)<.01)ot(ct,kt,ha,an,_a,zr,Ft,Ut);else{var cn=ct.point;ct.x=ct.y=ct.point=null,ot(ct,cn,ua,Ba,_a,zr,Ft,Ut),ot(ct,kt,ha,an,_a,zr,Ft,Ut)}else ct.x=ha,ct.y=an,ct.point=kt}else ot(ct,kt,ha,an,_a,zr,Ft,Ut)}function ot(ct,kt,ha,an,_a,zr,Ft,Ut){var ua=(_a+Ft)*.5,Ba=(zr+Ut)*.5,cn=ha>=ua,Hn=an>=Ba,Kn=Hn<<1|cn;ct.leaf=!1,ct=ct.nodes[Kn]||(ct.nodes[Kn]=Hm()),cn?_a=ua:Ft=ua,Hn?zr=Ba:Ut=Ba,it(ct,kt,ha,an,_a,zr,Ft,Ut)}var qt=Hm();if(qt.add=function(ct){it(qt,ct,+K(ct,++ne),+ee(ct,ne),we,Fe,Re,me)},qt.visit=function(ct){Zf(ct,qt,we,Fe,Re,me)},qt.find=function(ct){return Vm(qt,ct[0],ct[1],we,Fe,Re,me)},ne=-1,y==null){for(;++neL||ee>I||Me=cr,Yr=w>=Mr,it=Yr<<1|Pr,ot=it+4;itw&&(L=y.slice(w,L),F[I]?F[I]+=L:F[++I]=L),(C=C[0])===(E=E[0])?F[I]?F[I]+=E:F[++I]=E:(F[++I]=null,z.push({i:I,x:ji(C,E)})),w=Lv.lastIndex;return w=0&&!(C=e.interpolators[w](h,y)););return C}e.interpolators=[function(h,y){var w=typeof y;return(w==="string"?Fn.has(y.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(y)?Ls:Xi:y instanceof Xa?Ls:Array.isArray(y)?Jf:w==="object"&&isNaN(y)?Ym:ji)(h,y)}],e.interpolateArray=Jf;function Jf(h,y){var w=[],C=[],E=h.length,L=y.length,I=Math.min(h.length,y.length),F;for(F=0;F=0?h.slice(0,y):h,C=y>=0?h.slice(y+1):"in";return w=Wm.get(w)||fd,C=jm.get(C)||$,V5(C(w.apply(null,r.call(arguments,1))))};function V5(h){return function(y){return y<=0?0:y>=1?1:h(y)}}function Ds(h){return function(y){return 1-h(1-y)}}function Rn(h){return function(y){return .5*(y<.5?h(2*y):2-h(2-2*y))}}function Xm(h){return h*h}function Zm(h){return h*h*h}function qs(h){if(h<=0)return 0;if(h>=1)return 1;var y=h*h,w=y*h;return 4*(h<.5?w:3*(h-y)+w-.75)}function Jm(h){return function(y){return Math.pow(y,h)}}function $m(h){return 1-Math.cos(h*$r)}function Y5(h){return Math.pow(2,10*(h-1))}function W5(h){return 1-Math.sqrt(1-h*h)}function j5(h,y){var w;return arguments.length<2&&(y=.45),arguments.length?w=y/Wr*Math.asin(1/h):(h=1,w=y/4),function(C){return 1+h*Math.pow(2,-10*C)*Math.sin((C-w)*Wr/y)}}function X5(h){return h||(h=1.70158),function(y){return y*y*((h+1)*y-h)}}function cd(h){return h<1/2.75?7.5625*h*h:h<2/2.75?7.5625*(h-=1.5/2.75)*h+.75:h<2.5/2.75?7.5625*(h-=2.25/2.75)*h+.9375:7.5625*(h-=2.625/2.75)*h+.984375}e.interpolateHcl=Qm;function Qm(h,y){h=e.hcl(h),y=e.hcl(y);var w=h.h,C=h.c,E=h.l,L=y.h-w,I=y.c-C,F=y.l-E;return isNaN(I)&&(I=0,C=isNaN(C)?y.c:C),isNaN(L)?(L=0,w=isNaN(w)?y.h:w):L>180?L-=360:L<-180&&(L+=360),function(z){return Wi(w+L*z,C+I*z,E+F*z)+""}}e.interpolateHsl=Z5;function Z5(h,y){h=e.hsl(h),y=e.hsl(y);var w=h.h,C=h.s,E=h.l,L=y.h-w,I=y.s-C,F=y.l-E;return isNaN(I)&&(I=0,C=isNaN(C)?y.s:C),isNaN(L)?(L=0,w=isNaN(w)?y.h:w):L>180?L-=360:L<-180&&(L+=360),function(z){return rn(w+L*z,C+I*z,E+F*z)+""}}e.interpolateLab=Km;function Km(h,y){h=e.lab(h),y=e.lab(y);var w=h.l,C=h.a,E=h.b,L=y.l-w,I=y.a-C,F=y.b-E;return function(z){return _v(w+L*z,C+I*z,E+F*z)+""}}e.interpolateRound=vd;function vd(h,y){return y-=h,function(w){return Math.round(h+y*w)}}e.transform=function(h){var y=a.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(w){if(w!=null){y.setAttribute("transform",w);var C=y.transform.baseVal.consolidate()}return new ey(C?C.matrix:Dv)})(h)};function ey(h){var y=[h.a,h.b],w=[h.c,h.d],C=ry(y),E=$f(y,w),L=ry(jl(w,y,-E))||0;y[0]*w[1]180?y+=360:y-h>180&&(h+=360),C.push({i:w.push(Fs(w)+"rotate(",null,")")-2,x:ji(h,y)})):y&&w.push(Fs(w)+"rotate("+y+")")}function ny(h,y,w,C){h!==y?C.push({i:w.push(Fs(w)+"skewX(",null,")")-2,x:ji(h,y)}):y&&w.push(Fs(w)+"skewX("+y+")")}function iy(h,y,w,C){if(h[0]!==y[0]||h[1]!==y[1]){var E=w.push(Fs(w)+"scale(",null,",",null,")");C.push({i:E-4,x:ji(h[0],y[0])},{i:E-2,x:ji(h[1],y[1])})}else(y[0]!==1||y[1]!==1)&&w.push(Fs(w)+"scale("+y+")")}function hd(h,y){var w=[],C=[];return h=e.transform(h),y=e.transform(y),ty(h.translate,y.translate,w,C),ay(h.rotate,y.rotate,w,C),ny(h.skew,y.skew,w,C),iy(h.scale,y.scale,w,C),h=y=null,function(E){for(var L=-1,I=C.length,F;++L0?L=me:(w.c=null,w.t=NaN,w=null,y.end({type:"end",alpha:L=0})):me>0&&(y.start({type:"start",alpha:L=me}),w=Ss(h.tick)),h):L},h.start=function(){var me,cr=Me.length,Mr=qe.length,Pr=C[0],Yr=C[1],it,ot;for(me=0;me=0;)L.push(J=X[z]),J.parent=F,J.depth=F.depth+1;w&&(F.value=0),F.children=X}else w&&(F.value=+w.call(C,F,F.depth)||0),delete F.children;return Fo(E,function(K){var ee,Me;h&&(ee=K.children)&&ee.sort(h),w&&(Me=K.parent)&&(Me.value+=K.value)}),I}return C.sort=function(E){return arguments.length?(h=E,C):h},C.children=function(E){return arguments.length?(y=E,C):y},C.value=function(E){return arguments.length?(w=E,C):w},C.revalue=function(E){return w&&(Qf(E,function(L){L.children&&(L.value=0)}),Fo(E,function(L){var I;L.children||(L.value=+w.call(C,L,L.depth)||0),(I=L.parent)&&(I.value+=L.value)})),E},C};function _u(h,y){return e.rebind(h,y,"sort","children","value"),h.nodes=h,h.links=e_,h}function Qf(h,y){for(var w=[h];(h=w.pop())!=null;)if(y(h),(E=h.children)&&(C=E.length))for(var C,E;--C>=0;)w.push(E[C])}function Fo(h,y){for(var w=[h],C=[];(h=w.pop())!=null;)if(C.push(h),(I=h.children)&&(L=I.length))for(var E=-1,L,I;++EE&&(E=F),C.push(F)}for(I=0;IC&&(w=y,C=E);return w}function a_(h){return h.reduce(n_,0)}function n_(h,y){return h+y[1]}e.layout.histogram=function(){var h=!0,y=Number,w=o_,C=i_;function E(L,ee){for(var F=[],z=L.map(y,this),X=w.call(this,z,ee),J=C.call(this,X,z,ee),K,ee=-1,Me=z.length,qe=J.length-1,ne=h?1:1/Me,he;++ee0)for(ee=-1;++ee=X[0]&&he<=X[1]&&(K=F[e.bisect(J,he,1,qe)-1],K.y+=ne,K.push(L[ee]));return F}return E.value=function(L){return arguments.length?(y=L,E):y},E.range=function(L){return arguments.length?(w=Vt(L),E):w},E.bins=function(L){return arguments.length?(C=typeof L=="number"?function(I){return py(I,L)}:Vt(L),E):C},E.frequency=function(L){return arguments.length?(h=!!L,E):h},E};function i_(h,y){return py(h,Math.ceil(Math.log(y.length)/Math.LN2+1))}function py(h,y){for(var w=-1,C=+h[0],E=(h[1]-C)/y,L=[];++w<=y;)L[w]=E*w+C;return L}function o_(h){return[e.min(h),e.max(h)]}e.layout.pack=function(){var h=e.layout.hierarchy().sort(yd),y=0,w=[1,1],C;function E(L,I){var F=h.call(this,L,I),z=F[0],X=w[0],J=w[1],K=C==null?Math.sqrt:typeof C=="function"?C:function(){return C};if(z.x=z.y=0,Fo(z,function(Me){Me.r=+K(Me.value)}),Fo(z,yy),y){var ee=y*(C?1:Math.max(2*z.r/X,2*z.r/J))/2;Fo(z,function(Me){Me.r+=ee}),Fo(z,yy),Fo(z,function(Me){Me.r-=ee})}return gy(z,X/2,J/2,C?1:1/Math.max(2*z.r/X,2*z.r/J)),F}return E.size=function(L){return arguments.length?(w=L,E):w},E.radius=function(L){return arguments.length?(C=L==null||typeof L=="function"?L:+L,E):C},E.padding=function(L){return arguments.length?(y=+L,E):y},_u(E,h)};function yd(h,y){return h.value-y.value}function gd(h,y){var w=h._pack_next;h._pack_next=y,y._pack_prev=h,y._pack_next=w,w._pack_prev=y}function bd(h,y){h._pack_next=y,y._pack_prev=h}function my(h,y){var w=y.x-h.x,C=y.y-h.y,E=h.r+y.r;return .999*E*E>w*w+C*C}function yy(h){if(!(y=h.children)||!(ee=y.length))return;var y,w=1/0,C=-1/0,E=1/0,L=-1/0,I,F,z,X,J,K,ee;function Me(me){w=Math.min(me.x-me.r,w),C=Math.max(me.x+me.r,C),E=Math.min(me.y-me.r,E),L=Math.max(me.y+me.r,L)}if(y.forEach(l_),I=y[0],I.x=-I.r,I.y=0,Me(I),ee>1&&(F=y[1],F.x=F.r,F.y=0,Me(F),ee>2))for(z=y[2],u_(I,F,z),Me(z),gd(I,z),I._pack_prev=z,gd(z,F),F=I._pack_next,X=3;Xhe.x&&(he=cr),cr.depth>we.depth&&(we=cr)});var Fe=y(ne,he)/2-ne.x,Re=w[0]/(he.x+y(he,ne)/2+Fe),me=w[1]/(we.depth||1);Qf(Me,function(cr){cr.x=(cr.x+Fe)*Re,cr.y=cr.depth*me})}return ee}function L(J){for(var K={A:null,children:[J]},ee=[K],Me;(Me=ee.pop())!=null;)for(var qe=Me.children,ne,he=0,we=qe.length;he0&&(f_(wy(ne,J,ee),J,cr),we+=cr,Fe+=cr),Re+=ne.m,we+=Me.m,me+=he.m,Fe+=qe.m;ne&&!_y(qe)&&(qe.t=ne,qe.m+=Re-Fe),Me&&!xy(he)&&(he.t=Me,he.m+=we-me,ee=J)}return ee}function X(J){J.x*=w[0],J.y=J.depth*w[1]}return E.separation=function(J){return arguments.length?(y=J,E):y},E.size=function(J){return arguments.length?(C=(w=J)==null?X:null,E):C?null:w},E.nodeSize=function(J){return arguments.length?(C=(w=J)==null?null:X,E):C?w:null},_u(E,h)};function by(h,y){return h.parent==y.parent?1:2}function xy(h){var y=h.children;return y.length?y[0]:h.t}function _y(h){var y=h.children,w;return(w=y.length)?y[w-1]:h.t}function f_(h,y,w){var C=w/(y.i-h.i);y.c-=C,y.s+=w,h.c+=C,y.z+=w,y.m+=w}function xd(h){for(var y=0,w=0,C=h.children,E=C.length,L;--E>=0;)L=C[E],L.z+=y,L.m+=y,y+=L.s+(w+=L.c)}function wy(h,y,w){return h.a.parent===y.parent?h.a:w}e.layout.cluster=function(){var h=e.layout.hierarchy().sort(null).value(null),y=by,w=[1,1],C=!1;function E(L,I){var F=h.call(this,L,I),z=F[0],X,J=0;Fo(z,function(ne){var he=ne.children;he&&he.length?(ne.x=Ay(he),ne.y=Ro(he)):(ne.x=X?J+=y(ne,X):0,ne.y=0,X=ne)});var K=Ty(z),ee=My(z),Me=K.x-y(K,ee)/2,qe=ee.x+y(ee,K)/2;return Fo(z,C?function(ne){ne.x=(ne.x-z.x)*w[0],ne.y=(z.y-ne.y)*w[1]}:function(ne){ne.x=(ne.x-Me)/(qe-Me)*w[0],ne.y=(1-(z.y?ne.y/z.y:1))*w[1]}),F}return E.separation=function(L){return arguments.length?(y=L,E):y},E.size=function(L){return arguments.length?(C=(w=L)==null,E):C?null:w},E.nodeSize=function(L){return arguments.length?(C=(w=L)!=null,E):C?w:null},_u(E,h)};function Ro(h){return 1+e.max(h,function(y){return y.y})}function Ay(h){return h.reduce(function(y,w){return y+w.x},0)/h.length}function Ty(h){var y=h.children;return y&&y.length?Ty(y[0]):h}function My(h){var y=h.children,w;return y&&(w=y.length)?My(y[w-1]):h}e.layout.treemap=function(){var h=e.layout.hierarchy(),y=Math.round,w=[1,1],C=null,E=_d,L=!1,I,F="squarify",z=.5*(1+Math.sqrt(5));function X(ne,he){for(var we=-1,Fe=ne.length,Re,me;++we0;)Fe.push(me=Re[Yr-1]),Fe.area+=me.area,F!=="squarify"||(Mr=ee(Fe,Pr))<=cr?(Re.pop(),cr=Mr):(Fe.area-=Fe.pop().area,Me(Fe,Pr,we,!1),Pr=Math.min(we.dx,we.dy),Fe.length=Fe.area=0,cr=1/0);Fe.length&&(Me(Fe,Pr,we,!0),Fe.length=Fe.area=0),he.forEach(J)}}function K(ne){var he=ne.children;if(he&&he.length){var we=E(ne),Fe=he.slice(),Re,me=[];for(X(Fe,we.dx*we.dy/ne.value),me.area=0;Re=Fe.pop();)me.push(Re),me.area+=Re.area,Re.z!=null&&(Me(me,Re.z?we.dx:we.dy,we,!Fe.length),me.length=me.area=0);he.forEach(K)}}function ee(ne,he){for(var we=ne.area,Fe,Re=0,me=1/0,cr=-1,Mr=ne.length;++crRe&&(Re=Fe));return we*=we,he*=he,we?Math.max(he*Re*z/we,we/(he*me*z)):1/0}function Me(ne,he,we,Fe){var Re=-1,me=ne.length,cr=we.x,Mr=we.y,Pr=he?y(ne.area/he):0,Yr;if(he==we.dx){for((Fe||Pr>we.dy)&&(Pr=we.dy);++Rewe.dx)&&(Pr=we.dx);++Re1);return h+y*C*Math.sqrt(-2*Math.log(L)/L)}},logNormal:function(){var h=e.random.normal.apply(e,arguments);return function(){return Math.exp(h())}},bates:function(h){var y=e.random.irwinHall(h);return function(){return y()/h}},irwinHall:function(h){return function(){for(var y=0,w=0;w2?Tu:c_,X=C?ly:oy;return E=z(h,y,X,w),L=z(y,h,X,Wl),F}function F(z){return E(z)}return F.invert=function(z){return L(z)},F.domain=function(z){return arguments.length?(h=z.map(Number),I()):h},F.range=function(z){return arguments.length?(y=z,I()):y},F.rangeRound=function(z){return F.range(z).interpolate(vd)},F.clamp=function(z){return arguments.length?(C=z,I()):C},F.interpolate=function(z){return arguments.length?(w=z,I()):w},F.ticks=function(z){return ec(h,z)},F.tickFormat=function(z,X){return d3_scale_linearTickFormat(h,z,X)},F.nice=function(z){return wd(h,z),I()},F.copy=function(){return ky(h,y,w,C)},I()}function Rs(h,y){return e.rebind(h,y,"range","rangeRound","interpolate","clamp")}function wd(h,y){return wu(h,Pn(Xl(h,y)[2])),wu(h,Pn(Xl(h,y)[2])),h}function Xl(h,y){y==null&&(y=10);var w=Pv(h),C=w[1]-w[0],E=Math.pow(10,Math.floor(Math.log(C/y)/Math.LN10)),L=y/C*E;return L<=.15?E*=10:L<=.35?E*=5:L<=.75&&(E*=2),w[0]=Math.ceil(w[0]/E)*E,w[1]=Math.floor(w[1]/E)*E+E*.5,w[2]=E,w}function ec(h,y){return e.range.apply(e,Xl(h,y))}var Ad={s:1,g:1,p:1,r:1,e:1};function Iv(h){return-Math.floor(Math.log(h)/Math.LN10+.01)}function Cy(h,y){var w=Iv(y[2]);return h in Ad?Math.abs(w-Iv(Math.max(b(y[0]),b(y[1]))))+ +(h!=="e"):w-(h==="%")*2}e.scale.log=function(){return Ov(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Ov(h,y,w,C){function E(F){return(w?Math.log(F<0?0:F):-Math.log(F>0?0:-F))/Math.log(y)}function L(F){return w?Math.pow(y,F):-Math.pow(y,-F)}function I(F){return h(E(F))}return I.invert=function(F){return L(h.invert(F))},I.domain=function(F){return arguments.length?(w=F[0]>=0,h.domain((C=F.map(Number)).map(E)),I):C},I.base=function(F){return arguments.length?(y=+F,h.domain(C.map(E)),I):y},I.nice=function(){var F=wu(C.map(E),w?Math:zv);return h.domain(F),C=F.map(L),I},I.ticks=function(){var F=Pv(C),z=[],X=F[0],J=F[1],K=Math.floor(E(X)),ee=Math.ceil(E(J)),Me=y%1?2:y;if(isFinite(ee-K)){if(w){for(;K0;qe--)z.push(L(K)*qe);for(K=0;z[K]J;ee--);z=z.slice(K,ee)}return z},I.copy=function(){return Ov(h.copy(),y,w,C)},Rs(I,h)}var zv={floor:function(h){return-Math.ceil(-h)},ceil:function(h){return-Math.floor(-h)}};e.scale.pow=function(){return Td(e.scale.linear(),1,[0,1])};function Td(h,y,w){var C=rc(y),E=rc(1/y);function L(I){return h(C(I))}return L.invert=function(I){return E(h.invert(I))},L.domain=function(I){return arguments.length?(h.domain((w=I.map(Number)).map(C)),L):w},L.ticks=function(I){return ec(w,I)},L.tickFormat=function(I,F){return d3_scale_linearTickFormat(w,I,F)},L.nice=function(I){return L.domain(wd(w,I))},L.exponent=function(I){return arguments.length?(C=rc(y=I),E=rc(1/y),h.domain(w.map(C)),L):y},L.copy=function(){return Td(h.copy(),y,w)},Rs(L,h)}function rc(h){return function(y){return y<0?-Math.pow(-y,h):Math.pow(y,h)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Md([],{t:"range",a:[[]]})};function Md(h,y){var w,C,E;function L(F){return C[((w.get(F)||(y.t==="range"?w.set(F,h.push(F)):NaN))-1)%C.length]}function I(F,z){return e.range(h.length).map(function(X){return F+z*X})}return L.domain=function(F){if(!arguments.length)return h;h=[],w=new x;for(var z=-1,X=F.length,J;++z0?w[L-1]:h[0],Lee?0:1;if(J=tt)return z(J,qe)+(X?z(X,1-qe):"")+"Z";var ne,he,we,Fe,Re=0,me=0,cr,Mr,Pr,Yr,it,ot,qt,ct,kt=[];if((Fe=(+I.apply(this,arguments)||0)/2)&&(we=C===tc?Math.sqrt(X*X+J*J):+C.apply(this,arguments),qe||(me*=-1),J&&(me=Ln(we/J*Math.sin(Fe))),X&&(Re=Ln(we/X*Math.sin(Fe)))),J){cr=J*Math.cos(K+me),Mr=J*Math.sin(K+me),Pr=J*Math.cos(ee-me),Yr=J*Math.sin(ee-me);var ha=Math.abs(ee-K-2*me)<=Ie?0:1;if(me&&ac(cr,Mr,Pr,Yr)===qe^ha){var an=(K+ee)/2;cr=J*Math.cos(an),Mr=J*Math.sin(an),Pr=Yr=null}}else cr=Mr=0;if(X){it=X*Math.cos(ee-Re),ot=X*Math.sin(ee-Re),qt=X*Math.cos(K+Re),ct=X*Math.sin(K+Re);var _a=Math.abs(K-ee+2*Re)<=Ie?0:1;if(Re&&ac(it,ot,qt,ct)===1-qe^_a){var zr=(K+ee)/2;it=X*Math.cos(zr),ot=X*Math.sin(zr),qt=ct=null}}else it=ot=0;if(Me>ye&&(ne=Math.min(Math.abs(J-X)/2,+w.apply(this,arguments)))>.001){he=X0?0:1}function nc(h,y,w,C,E){var L=h[0]-y[0],I=h[1]-y[1],F=(E?C:-C)/Math.sqrt(L*L+I*I),z=F*I,X=-F*L,J=h[0]+z,K=h[1]+X,ee=y[0]+z,Me=y[1]+X,qe=(J+ee)/2,ne=(K+Me)/2,he=ee-J,we=Me-K,Fe=he*he+we*we,Re=w-C,me=J*Me-ee*K,cr=(we<0?-1:1)*Math.sqrt(Math.max(0,Re*Re*Fe-me*me)),Mr=(me*we-he*cr)/Fe,Pr=(-me*he-we*cr)/Fe,Yr=(me*we+he*cr)/Fe,it=(-me*he+we*cr)/Fe,ot=Mr-qe,qt=Pr-ne,ct=Yr-qe,kt=it-ne;return ot*ot+qt*qt>ct*ct+kt*kt&&(Mr=Yr,Pr=it),[[Mr-z,Pr-X],[Mr*w/Re,Pr*w/Re]]}function Uv(){return!0}function Nd(h){var y=Hl,w=du,C=Uv,E=Ni,L=E.key,I=.7;function F(z){var X=[],J=[],K=-1,ee=z.length,Me,qe=Vt(y),ne=Vt(w);function he(){X.push("M",E(h(J),I))}for(;++K1?h.join("L"):h+"Z"}function Hv(h){return h.join("L")+"Z"}function ic(h){for(var y=0,w=h.length,C=h[0],E=[C[0],",",C[1]];++y1&&E.push("H",C[0]),E.join("")}function Vv(h){for(var y=0,w=h.length,C=h[0],E=[C[0],",",C[1]];++y1){F=y[1],L=h[z],z++,C+="C"+(E[0]+I[0])+","+(E[1]+I[1])+","+(L[0]-F[0])+","+(L[1]-F[1])+","+L[0]+","+L[1];for(var X=2;X9&&(L=w*3/Math.sqrt(L),I[F]=L*C,I[F+1]=L*E));for(F=-1;++F<=z;)L=(h[Math.min(z,F+1)][0]-h[Math.max(0,F-1)][0])/(6*(1+I[F]*I[F])),y.push([L||0,I[F]*L||0]);return y}function qy(h){return h.length<3?Ni(h):h[0]+Ps(h,h_(h))}e.svg.line.radial=function(){var h=Nd(Od);return h.radius=h.x,delete h.x,h.angle=h.y,delete h.y,h};function Od(h){for(var y,w=-1,C=h.length,E,L;++wIe)+",1 "+K}function X(J,K,ee,Me){return"Q 0,0 "+Me}return L.radius=function(J){return arguments.length?(w=Vt(J),L):w},L.source=function(J){return arguments.length?(h=Vt(J),L):h},L.target=function(J){return arguments.length?(y=Vt(J),L):y},L.startAngle=function(J){return arguments.length?(C=Vt(J),L):C},L.endAngle=function(J){return arguments.length?(E=Vt(J),L):E},L};function Bd(h){return h.radius}e.svg.diagonal=function(){var h=Fy,y=Is,w=Ry;function C(E,L){var I=h.call(this,E,L),F=y.call(this,E,L),z=(I.y+F.y)/2,X=[I,{x:I.x,y:z},{x:F.x,y:z},F];return X=X.map(w),"M"+X[0]+"C"+X[1]+" "+X[2]+" "+X[3]}return C.source=function(E){return arguments.length?(h=Vt(E),C):h},C.target=function(E){return arguments.length?(y=Vt(E),C):y},C.projection=function(E){return arguments.length?(w=E,C):w},C};function Ry(h){return[h.x,h.y]}e.svg.diagonal.radial=function(){var h=e.svg.diagonal(),y=Ry,w=h.projection;return h.projection=function(C){return arguments.length?w(d_(y=C)):y},h};function d_(h){return function(){var y=h.apply(this,arguments),w=y[0],C=y[1]-$r;return[w*Math.cos(C),w*Math.sin(C)]}}e.svg.symbol=function(){var h=m_,y=p_;function w(C,E){return(Ny.get(h.call(this,C,E))||Py)(y.call(this,C,E))}return w.type=function(C){return arguments.length?(h=Vt(C),w):h},w.size=function(C){return arguments.length?(y=Vt(C),w):y},w};function p_(){return 64}function m_(){return"circle"}function Py(h){var y=Math.sqrt(h/Ie);return"M0,"+y+"A"+y+","+y+" 0 1,1 0,"+-y+"A"+y+","+y+" 0 1,1 0,"+y+"Z"}var Ny=e.map({circle:Py,cross:function(h){var y=Math.sqrt(h/5)/2;return"M"+-3*y+","+-y+"H"+-y+"V"+-3*y+"H"+y+"V"+-y+"H"+3*y+"V"+y+"H"+y+"V"+3*y+"H"+-y+"V"+y+"H"+-3*y+"Z"},diamond:function(h){var y=Math.sqrt(h/(2*Iy)),w=y*Iy;return"M0,"+-y+"L"+w+",0 0,"+y+" "+-w+",0Z"},square:function(h){var y=Math.sqrt(h)/2;return"M"+-y+","+-y+"L"+y+","+-y+" "+y+","+y+" "+-y+","+y+"Z"},"triangle-down":function(h){var y=Math.sqrt(h/jv),w=y*jv/2;return"M0,"+w+"L"+y+","+-w+" "+-y+","+-w+"Z"},"triangle-up":function(h){var y=Math.sqrt(h/jv),w=y*jv/2;return"M0,"+-w+"L"+y+","+w+" "+-y+","+w+"Z"}});e.svg.symbolTypes=Ny.keys();var jv=Math.sqrt(3),Iy=Math.tan(30*St);Ce.transition=function(h){for(var y=$l||++Zv,w=Jv(h),C=[],E,L,I=Lu||{time:Date.now(),ease:qs,delay:0,duration:250},F=-1,z=this.length;++F0;)K[--Fe].call(h,we);if(he>=1)return I.event&&I.event.end.call(h,h.__data__,y),--L.count?delete L[C]:delete h[w],1}I||(F=E.time,z=Ss(ee,0,F),I=L[C]={tween:new x,time:F,timer:z,delay:E.delay,duration:E.duration,ease:E.ease,index:y},E=null,++L.count)}e.svg.axis=function(){var h=e.scale.linear(),y=$v,w=6,C=6,E=3,L=[10],I=null,F;function z(X){X.each(function(){var J=e.select(this),K=this.__chart__||h,ee=this.__chart__=h.copy(),Me=I==null?ee.ticks?ee.ticks.apply(ee,L):ee.domain():I,qe=F==null?ee.tickFormat?ee.tickFormat.apply(ee,L):$:F,ne=J.selectAll(".tick").data(Me,ee),he=ne.enter().insert("g",".domain").attr("class","tick").style("opacity",ye),we=e.transition(ne.exit()).style("opacity",ye).remove(),Fe=e.transition(ne.order()).style("opacity",1),Re=Math.max(w,0)+E,me,cr=Nv(ee),Mr=J.selectAll(".domain").data([0]),Pr=(Mr.enter().append("path").attr("class","domain"),e.transition(Mr));he.append("line"),he.append("text");var Yr=he.select("line"),it=Fe.select("line"),ot=ne.select("text").text(qe),qt=he.select("text"),ct=Fe.select("text"),kt=y==="top"||y==="left"?-1:1,ha,an,_a,zr;if(y==="bottom"||y==="top"?(me=Vd,ha="x",_a="y",an="x2",zr="y2",ot.attr("dy",kt<0?"0em":".71em").style("text-anchor","middle"),Pr.attr("d","M"+cr[0]+","+kt*C+"V0H"+cr[1]+"V"+kt*C)):(me=Yd,ha="y",_a="x",an="y2",zr="x2",ot.attr("dy",".32em").style("text-anchor",kt<0?"end":"start"),Pr.attr("d","M"+kt*C+","+cr[0]+"H0V"+cr[1]+"H"+kt*C)),Yr.attr(zr,kt*w),qt.attr(_a,kt*Re),it.attr(an,0).attr(zr,kt*w),ct.attr(ha,0).attr(_a,kt*Re),ee.rangeBand){var Ft=ee,Ut=Ft.rangeBand()/2;K=ee=function(ua){return Ft(ua)+Ut}}else K.rangeBand?K=ee:we.call(me,ee,K);he.call(me,K,ee),Fe.call(me,ee,ee)})}return z.scale=function(X){return arguments.length?(h=X,z):h},z.orient=function(X){return arguments.length?(y=X in Hd?X+"":$v,z):y},z.ticks=function(){return arguments.length?(L=t(arguments),z):L},z.tickValues=function(X){return arguments.length?(I=X,z):I},z.tickFormat=function(X){return arguments.length?(F=X,z):F},z.tickSize=function(X){var J=arguments.length;return J?(w=+X,C=+arguments[J-1],z):w},z.innerTickSize=function(X){return arguments.length?(w=+X,z):w},z.outerTickSize=function(X){return arguments.length?(C=+X,z):C},z.tickPadding=function(X){return arguments.length?(E=+X,z):E},z.tickSubdivide=function(){return arguments.length&&z},z};var $v="bottom",Hd={top:1,right:1,bottom:1,left:1};function Vd(h,y,w){h.attr("transform",function(C){var E=y(C);return"translate("+(isFinite(E)?E:w(C))+",0)"})}function Yd(h,y,w){h.attr("transform",function(C){var E=y(C);return"translate(0,"+(isFinite(E)?E:w(C))+")"})}e.svg.brush=function(){var h=se(J,"brushstart","brush","brushend"),y=null,w=null,C=[0,0],E=[0,0],L,I,F=!0,z=!0,X=sc[0];function J(ne){ne.each(function(){var he=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",qe).on("touchstart.brush",qe),we=he.selectAll(".background").data([0]);we.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),he.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Fe=he.selectAll(".resize").data(X,$);Fe.exit().remove(),Fe.enter().append("g").attr("class",function(Mr){return"resize "+Mr}).style("cursor",function(Mr){return Wd[Mr]}).append("rect").attr("x",function(Mr){return/[ew]$/.test(Mr)?-3:null}).attr("y",function(Mr){return/^[ns]/.test(Mr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Fe.style("display",J.empty()?"none":null);var Re=e.transition(he),me=e.transition(we),cr;y&&(cr=Nv(y),me.attr("x",cr[0]).attr("width",cr[1]-cr[0]),ee(Re)),w&&(cr=Nv(w),me.attr("y",cr[0]).attr("height",cr[1]-cr[0]),Me(Re)),K(Re)})}J.event=function(ne){ne.each(function(){var he=h.of(this,arguments),we={x:C,y:E,i:L,j:I},Fe=this.__chart__||we;this.__chart__=we,$l?e.select(this).transition().each("start.brush",function(){L=Fe.i,I=Fe.j,C=Fe.x,E=Fe.y,he({type:"brushstart"})}).tween("brush:brush",function(){var Re=Jf(C,we.x),me=Jf(E,we.y);return L=I=null,function(cr){C=we.x=Re(cr),E=we.y=me(cr),he({type:"brush",mode:"resize"})}}).each("end.brush",function(){L=we.i,I=we.j,he({type:"brush",mode:"resize"}),he({type:"brushend"})}):(he({type:"brushstart"}),he({type:"brush",mode:"resize"}),he({type:"brushend"}))})};function K(ne){ne.selectAll(".resize").attr("transform",function(he){return"translate("+C[+/e$/.test(he)]+","+E[+/^s/.test(he)]+")"})}function ee(ne){ne.select(".extent").attr("x",C[0]),ne.selectAll(".extent,.n>rect,.s>rect").attr("width",C[1]-C[0])}function Me(ne){ne.select(".extent").attr("y",E[0]),ne.selectAll(".extent,.e>rect,.w>rect").attr("height",E[1]-E[0])}function qe(){var ne=this,he=e.select(e.event.target),we=h.of(ne,arguments),Fe=e.select(ne),Re=he.datum(),me=!/^(n|s)$/.test(Re)&&y,cr=!/^(e|w)$/.test(Re)&&w,Mr=he.classed("extent"),Pr=Ir(ne),Yr,it=e.mouse(ne),ot,qt=e.select(i(ne)).on("keydown.brush",ha).on("keyup.brush",an);if(e.event.changedTouches?qt.on("touchmove.brush",_a).on("touchend.brush",Ft):qt.on("mousemove.brush",_a).on("mouseup.brush",Ft),Fe.interrupt().selectAll("*").interrupt(),Mr)it[0]=C[0]-it[0],it[1]=E[0]-it[1];else if(Re){var ct=+/w$/.test(Re),kt=+/^n/.test(Re);ot=[C[1-ct]-it[0],E[1-kt]-it[1]],it[0]=C[ct],it[1]=E[kt]}else e.event.altKey&&(Yr=it.slice());Fe.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",he.style("cursor")),we({type:"brushstart"}),_a();function ha(){e.event.keyCode==32&&(Mr||(Yr=null,it[0]-=C[1],it[1]-=E[1],Mr=2),ve())}function an(){e.event.keyCode==32&&Mr==2&&(it[0]+=C[1],it[1]+=E[1],Mr=0,ve())}function _a(){var Ut=e.mouse(ne),ua=!1;ot&&(Ut[0]+=ot[0],Ut[1]+=ot[1]),Mr||(e.event.altKey?(Yr||(Yr=[(C[0]+C[1])/2,(E[0]+E[1])/2]),it[0]=C[+(Ut[0]{(function(e,r){typeof Gy=="object"&&typeof gM!="undefined"?r(Gy):(e=e||self,r(e.d3=e.d3||{}))})(Gy,function(e){"use strict";var r=new Date,t=new Date;function a(de,Oe,Ue,rt){function Ur(Ye){return de(Ye=arguments.length===0?new Date:new Date(+Ye)),Ye}return Ur.floor=function(Ye){return de(Ye=new Date(+Ye)),Ye},Ur.ceil=function(Ye){return de(Ye=new Date(Ye-1)),Oe(Ye,1),de(Ye),Ye},Ur.round=function(Ye){var Ve=Ur(Ye),pr=Ur.ceil(Ye);return Ye-Ve0))return Tr;do Tr.push(mr=new Date(+Ye)),Oe(Ye,pr),de(Ye);while(mr=Ve)for(;de(Ve),!Ye(Ve);)Ve.setTime(Ve-1)},function(Ve,pr){if(Ve>=Ve)if(pr<0)for(;++pr<=0;)for(;Oe(Ve,-1),!Ye(Ve););else for(;--pr>=0;)for(;Oe(Ve,1),!Ye(Ve););})},Ue&&(Ur.count=function(Ye,Ve){return r.setTime(+Ye),t.setTime(+Ve),de(r),de(t),Math.floor(Ue(r,t))},Ur.every=function(Ye){return Ye=Math.floor(Ye),!isFinite(Ye)||!(Ye>0)?null:Ye>1?Ur.filter(rt?function(Ve){return rt(Ve)%Ye===0}:function(Ve){return Ur.count(0,Ve)%Ye===0}):Ur}),Ur}var n=a(function(){},function(de,Oe){de.setTime(+de+Oe)},function(de,Oe){return Oe-de});n.every=function(de){return de=Math.floor(de),!isFinite(de)||!(de>0)?null:de>1?a(function(Oe){Oe.setTime(Math.floor(Oe/de)*de)},function(Oe,Ue){Oe.setTime(+Oe+Ue*de)},function(Oe,Ue){return(Ue-Oe)/de}):n};var i=n.range,o=1e3,l=6e4,s=36e5,u=864e5,f=6048e5,c=a(function(de){de.setTime(de-de.getMilliseconds())},function(de,Oe){de.setTime(+de+Oe*o)},function(de,Oe){return(Oe-de)/o},function(de){return de.getUTCSeconds()}),v=c.range,d=a(function(de){de.setTime(de-de.getMilliseconds()-de.getSeconds()*o)},function(de,Oe){de.setTime(+de+Oe*l)},function(de,Oe){return(Oe-de)/l},function(de){return de.getMinutes()}),p=d.range,g=a(function(de){de.setTime(de-de.getMilliseconds()-de.getSeconds()*o-de.getMinutes()*l)},function(de,Oe){de.setTime(+de+Oe*s)},function(de,Oe){return(Oe-de)/s},function(de){return de.getHours()}),m=g.range,b=a(function(de){de.setHours(0,0,0,0)},function(de,Oe){de.setDate(de.getDate()+Oe)},function(de,Oe){return(Oe-de-(Oe.getTimezoneOffset()-de.getTimezoneOffset())*l)/u},function(de){return de.getDate()-1}),_=b.range;function A(de){return a(function(Oe){Oe.setDate(Oe.getDate()-(Oe.getDay()+7-de)%7),Oe.setHours(0,0,0,0)},function(Oe,Ue){Oe.setDate(Oe.getDate()+Ue*7)},function(Oe,Ue){return(Ue-Oe-(Ue.getTimezoneOffset()-Oe.getTimezoneOffset())*l)/f})}var x=A(0),T=A(1),S=A(2),M=A(3),k=A(4),D=A(5),P=A(6),N=x.range,q=T.range,O=S.range,U=M.range,$=k.range,W=D.range,H=P.range,B=a(function(de){de.setDate(1),de.setHours(0,0,0,0)},function(de,Oe){de.setMonth(de.getMonth()+Oe)},function(de,Oe){return Oe.getMonth()-de.getMonth()+(Oe.getFullYear()-de.getFullYear())*12},function(de){return de.getMonth()}),V=B.range,j=a(function(de){de.setMonth(0,1),de.setHours(0,0,0,0)},function(de,Oe){de.setFullYear(de.getFullYear()+Oe)},function(de,Oe){return Oe.getFullYear()-de.getFullYear()},function(de){return de.getFullYear()});j.every=function(de){return!isFinite(de=Math.floor(de))||!(de>0)?null:a(function(Oe){Oe.setFullYear(Math.floor(Oe.getFullYear()/de)*de),Oe.setMonth(0,1),Oe.setHours(0,0,0,0)},function(Oe,Ue){Oe.setFullYear(Oe.getFullYear()+Ue*de)})};var Q=j.range,ve=a(function(de){de.setUTCSeconds(0,0)},function(de,Oe){de.setTime(+de+Oe*l)},function(de,Oe){return(Oe-de)/l},function(de){return de.getUTCMinutes()}),xe=ve.range,se=a(function(de){de.setUTCMinutes(0,0,0)},function(de,Oe){de.setTime(+de+Oe*s)},function(de,Oe){return(Oe-de)/s},function(de){return de.getUTCHours()}),be=se.range,re=a(function(de){de.setUTCHours(0,0,0,0)},function(de,Oe){de.setUTCDate(de.getUTCDate()+Oe)},function(de,Oe){return(Oe-de)/u},function(de){return de.getUTCDate()-1}),ke=re.range;function ge(de){return a(function(Oe){Oe.setUTCDate(Oe.getUTCDate()-(Oe.getUTCDay()+7-de)%7),Oe.setUTCHours(0,0,0,0)},function(Oe,Ue){Oe.setUTCDate(Oe.getUTCDate()+Ue*7)},function(Oe,Ue){return(Ue-Oe)/f})}var Ee=ge(0),De=ge(1),Ce=ge(2),Y=ge(3),ae=ge(4),Z=ge(5),Te=ge(6),Pe=Ee.range,Ne=De.range,lr=Ce.range,Qe=Y.range,Je=ae.range,or=Z.range,yr=Te.range,ir=a(function(de){de.setUTCDate(1),de.setUTCHours(0,0,0,0)},function(de,Oe){de.setUTCMonth(de.getUTCMonth()+Oe)},function(de,Oe){return Oe.getUTCMonth()-de.getUTCMonth()+(Oe.getUTCFullYear()-de.getUTCFullYear())*12},function(de){return de.getUTCMonth()}),Xe=ir.range,Lr=a(function(de){de.setUTCMonth(0,1),de.setUTCHours(0,0,0,0)},function(de,Oe){de.setUTCFullYear(de.getUTCFullYear()+Oe)},function(de,Oe){return Oe.getUTCFullYear()-de.getUTCFullYear()},function(de){return de.getUTCFullYear()});Lr.every=function(de){return!isFinite(de=Math.floor(de))||!(de>0)?null:a(function(Oe){Oe.setUTCFullYear(Math.floor(Oe.getUTCFullYear()/de)*de),Oe.setUTCMonth(0,1),Oe.setUTCHours(0,0,0,0)},function(Oe,Ue){Oe.setUTCFullYear(Oe.getUTCFullYear()+Ue*de)})};var Ar=Lr.range;e.timeDay=b,e.timeDays=_,e.timeFriday=D,e.timeFridays=W,e.timeHour=g,e.timeHours=m,e.timeInterval=a,e.timeMillisecond=n,e.timeMilliseconds=i,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=T,e.timeMondays=q,e.timeMonth=B,e.timeMonths=V,e.timeSaturday=P,e.timeSaturdays=H,e.timeSecond=c,e.timeSeconds=v,e.timeSunday=x,e.timeSundays=N,e.timeThursday=k,e.timeThursdays=$,e.timeTuesday=S,e.timeTuesdays=O,e.timeWednesday=M,e.timeWednesdays=U,e.timeWeek=x,e.timeWeeks=N,e.timeYear=j,e.timeYears=Q,e.utcDay=re,e.utcDays=ke,e.utcFriday=Z,e.utcFridays=or,e.utcHour=se,e.utcHours=be,e.utcMillisecond=n,e.utcMilliseconds=i,e.utcMinute=ve,e.utcMinutes=xe,e.utcMonday=De,e.utcMondays=Ne,e.utcMonth=ir,e.utcMonths=Xe,e.utcSaturday=Te,e.utcSaturdays=yr,e.utcSecond=c,e.utcSeconds=v,e.utcSunday=Ee,e.utcSundays=Pe,e.utcThursday=ae,e.utcThursdays=Je,e.utcTuesday=Ce,e.utcTuesdays=lr,e.utcWednesday=Y,e.utcWednesdays=Qe,e.utcWeek=Ee,e.utcWeeks=Pe,e.utcYear=Lr,e.utcYears=Ar,Object.defineProperty(e,"__esModule",{value:!0})})});var Kv=R((Hy,bM)=>{(function(e,r){typeof Hy=="object"&&typeof bM!="undefined"?r(Hy,y_()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(Hy,function(e,r){"use strict";function t(oe){if(0<=oe.y&&oe.y<100){var ye=new Date(-1,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L);return ye.setFullYear(oe.y),ye}return new Date(oe.y,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L)}function a(oe){if(0<=oe.y&&oe.y<100){var ye=new Date(Date.UTC(-1,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L));return ye.setUTCFullYear(oe.y),ye}return new Date(Date.UTC(oe.y,oe.m,oe.d,oe.H,oe.M,oe.S,oe.L))}function n(oe,ye,Ge){return{y:oe,m:ye,d:Ge,H:0,M:0,S:0,L:0}}function i(oe){var ye=oe.dateTime,Ge=oe.date,Ie=oe.time,Wr=oe.periods,tt=oe.days,$r=oe.shortDays,St=oe.months,ea=oe.shortMonths,ma=v(Wr),aa=d(Wr),en=v(tt),Ln=d(tt),si=v($r),Dn=d($r),Vi=v(St),Bn=d(St),qn=v(ea),yi=d(ea),_t={a:_s,A:ws,b:Bl,B:_v,c:null,d:B,e:B,f:xe,H:V,I:j,j:Q,L:ve,m:se,M:be,p:As,q:Bf,Q:Ve,s:pr,S:re,u:ke,U:ge,V:Ee,w:De,W:Ce,x:null,X:null,y:Y,Y:ae,Z,"%":Ye},Ma={a:Uf,A:ol,b:ui,B:ll,c:null,d:Te,e:Te,f:Je,H:Pe,I:Ne,j:lr,L:Qe,m:or,M:yr,p:Ts,q:go,Q:Ve,s:pr,S:ir,u:Xe,U:Lr,V:Ar,w:de,W:Oe,x:null,X:null,y:Ue,Y:rt,Z:Ur,"%":Ye},ra={a:rn,A:on,b:Yi,B:Wi,c:xn,d:k,e:k,f:U,H:P,I:P,j:D,L:O,m:M,M:N,p:La,q:S,Q:W,s:H,S:q,u:g,U:m,V:b,w:p,W:_,x:Aa,X:Un,y:x,Y:A,Z:T,"%":$};_t.x=Ra(Ge,_t),_t.X=Ra(Ie,_t),_t.c=Ra(ye,_t),Ma.x=Ra(Ge,Ma),Ma.X=Ra(Ie,Ma),Ma.c=Ra(ye,Ma);function Ra(yt,jt){return function(va){var jr=[],Gn=-1,Ea=0,Fn=yt.length,Vt,bo,Ul;for(va instanceof Date||(va=new Date(+va));++Gn53)return null;"w"in jr||(jr.w=1),"Z"in jr?(Ea=a(n(jr.y,0,1)),Fn=Ea.getUTCDay(),Ea=Fn>4||Fn===0?r.utcMonday.ceil(Ea):r.utcMonday(Ea),Ea=r.utcDay.offset(Ea,(jr.V-1)*7),jr.y=Ea.getUTCFullYear(),jr.m=Ea.getUTCMonth(),jr.d=Ea.getUTCDate()+(jr.w+6)%7):(Ea=t(n(jr.y,0,1)),Fn=Ea.getDay(),Ea=Fn>4||Fn===0?r.timeMonday.ceil(Ea):r.timeMonday(Ea),Ea=r.timeDay.offset(Ea,(jr.V-1)*7),jr.y=Ea.getFullYear(),jr.m=Ea.getMonth(),jr.d=Ea.getDate()+(jr.w+6)%7)}else("W"in jr||"U"in jr)&&("w"in jr||(jr.w="u"in jr?jr.u%7:"W"in jr?1:0),Fn="Z"in jr?a(n(jr.y,0,1)).getUTCDay():t(n(jr.y,0,1)).getDay(),jr.m=0,jr.d="W"in jr?(jr.w+6)%7+jr.W*7-(Fn+5)%7:jr.w+jr.U*7-(Fn+6)%7);return"Z"in jr?(jr.H+=jr.Z/100|0,jr.M+=jr.Z%100,a(jr)):t(jr)}}function Sa(yt,jt,va,jr){for(var Gn=0,Ea=jt.length,Fn=va.length,Vt,bo;Gn=Fn)return-1;if(Vt=jt.charCodeAt(Gn++),Vt===37){if(Vt=jt.charAt(Gn++),bo=ra[Vt in o?jt.charAt(Gn++):Vt],!bo||(jr=bo(yt,va,jr))<0)return-1}else if(Vt!=va.charCodeAt(jr++))return-1}return jr}function La(yt,jt,va){var jr=ma.exec(jt.slice(va));return jr?(yt.p=aa[jr[0].toLowerCase()],va+jr[0].length):-1}function rn(yt,jt,va){var jr=si.exec(jt.slice(va));return jr?(yt.w=Dn[jr[0].toLowerCase()],va+jr[0].length):-1}function on(yt,jt,va){var jr=en.exec(jt.slice(va));return jr?(yt.w=Ln[jr[0].toLowerCase()],va+jr[0].length):-1}function Yi(yt,jt,va){var jr=qn.exec(jt.slice(va));return jr?(yt.m=yi[jr[0].toLowerCase()],va+jr[0].length):-1}function Wi(yt,jt,va){var jr=Vi.exec(jt.slice(va));return jr?(yt.m=Bn[jr[0].toLowerCase()],va+jr[0].length):-1}function xn(yt,jt,va){return Sa(yt,ye,jt,va)}function Aa(yt,jt,va){return Sa(yt,Ge,jt,va)}function Un(yt,jt,va){return Sa(yt,Ie,jt,va)}function _s(yt){return $r[yt.getDay()]}function ws(yt){return tt[yt.getDay()]}function Bl(yt){return ea[yt.getMonth()]}function _v(yt){return St[yt.getMonth()]}function As(yt){return Wr[+(yt.getHours()>=12)]}function Bf(yt){return 1+~~(yt.getMonth()/3)}function Uf(yt){return $r[yt.getUTCDay()]}function ol(yt){return tt[yt.getUTCDay()]}function ui(yt){return ea[yt.getUTCMonth()]}function ll(yt){return St[yt.getUTCMonth()]}function Ts(yt){return Wr[+(yt.getUTCHours()>=12)]}function go(yt){return 1+~~(yt.getUTCMonth()/3)}return{format:function(yt){var jt=Ra(yt+="",_t);return jt.toString=function(){return yt},jt},parse:function(yt){var jt=Xa(yt+="",!1);return jt.toString=function(){return yt},jt},utcFormat:function(yt){var jt=Ra(yt+="",Ma);return jt.toString=function(){return yt},jt},utcParse:function(yt){var jt=Xa(yt+="",!0);return jt.toString=function(){return yt},jt}}}var o={"-":"",_:" ",0:"0"},l=/^\s*\d+/,s=/^%/,u=/[\\^$*+?|[\]().{}]/g;function f(oe,ye,Ge){var Ie=oe<0?"-":"",Wr=(Ie?-oe:oe)+"",tt=Wr.length;return Ie+(tt68?1900:2e3),Ge+Ie[0].length):-1}function T(oe,ye,Ge){var Ie=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ye.slice(Ge,Ge+6));return Ie?(oe.Z=Ie[1]?0:-(Ie[2]+(Ie[3]||"00")),Ge+Ie[0].length):-1}function S(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+1));return Ie?(oe.q=Ie[0]*3-3,Ge+Ie[0].length):-1}function M(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.m=Ie[0]-1,Ge+Ie[0].length):-1}function k(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.d=+Ie[0],Ge+Ie[0].length):-1}function D(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+3));return Ie?(oe.m=0,oe.d=+Ie[0],Ge+Ie[0].length):-1}function P(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.H=+Ie[0],Ge+Ie[0].length):-1}function N(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.M=+Ie[0],Ge+Ie[0].length):-1}function q(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+2));return Ie?(oe.S=+Ie[0],Ge+Ie[0].length):-1}function O(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+3));return Ie?(oe.L=+Ie[0],Ge+Ie[0].length):-1}function U(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge,Ge+6));return Ie?(oe.L=Math.floor(Ie[0]/1e3),Ge+Ie[0].length):-1}function $(oe,ye,Ge){var Ie=s.exec(ye.slice(Ge,Ge+1));return Ie?Ge+Ie[0].length:-1}function W(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge));return Ie?(oe.Q=+Ie[0],Ge+Ie[0].length):-1}function H(oe,ye,Ge){var Ie=l.exec(ye.slice(Ge));return Ie?(oe.s=+Ie[0],Ge+Ie[0].length):-1}function B(oe,ye){return f(oe.getDate(),ye,2)}function V(oe,ye){return f(oe.getHours(),ye,2)}function j(oe,ye){return f(oe.getHours()%12||12,ye,2)}function Q(oe,ye){return f(1+r.timeDay.count(r.timeYear(oe),oe),ye,3)}function ve(oe,ye){return f(oe.getMilliseconds(),ye,3)}function xe(oe,ye){return ve(oe,ye)+"000"}function se(oe,ye){return f(oe.getMonth()+1,ye,2)}function be(oe,ye){return f(oe.getMinutes(),ye,2)}function re(oe,ye){return f(oe.getSeconds(),ye,2)}function ke(oe){var ye=oe.getDay();return ye===0?7:ye}function ge(oe,ye){return f(r.timeSunday.count(r.timeYear(oe)-1,oe),ye,2)}function Ee(oe,ye){var Ge=oe.getDay();return oe=Ge>=4||Ge===0?r.timeThursday(oe):r.timeThursday.ceil(oe),f(r.timeThursday.count(r.timeYear(oe),oe)+(r.timeYear(oe).getDay()===4),ye,2)}function De(oe){return oe.getDay()}function Ce(oe,ye){return f(r.timeMonday.count(r.timeYear(oe)-1,oe),ye,2)}function Y(oe,ye){return f(oe.getFullYear()%100,ye,2)}function ae(oe,ye){return f(oe.getFullYear()%1e4,ye,4)}function Z(oe){var ye=oe.getTimezoneOffset();return(ye>0?"-":(ye*=-1,"+"))+f(ye/60|0,"0",2)+f(ye%60,"0",2)}function Te(oe,ye){return f(oe.getUTCDate(),ye,2)}function Pe(oe,ye){return f(oe.getUTCHours(),ye,2)}function Ne(oe,ye){return f(oe.getUTCHours()%12||12,ye,2)}function lr(oe,ye){return f(1+r.utcDay.count(r.utcYear(oe),oe),ye,3)}function Qe(oe,ye){return f(oe.getUTCMilliseconds(),ye,3)}function Je(oe,ye){return Qe(oe,ye)+"000"}function or(oe,ye){return f(oe.getUTCMonth()+1,ye,2)}function yr(oe,ye){return f(oe.getUTCMinutes(),ye,2)}function ir(oe,ye){return f(oe.getUTCSeconds(),ye,2)}function Xe(oe){var ye=oe.getUTCDay();return ye===0?7:ye}function Lr(oe,ye){return f(r.utcSunday.count(r.utcYear(oe)-1,oe),ye,2)}function Ar(oe,ye){var Ge=oe.getUTCDay();return oe=Ge>=4||Ge===0?r.utcThursday(oe):r.utcThursday.ceil(oe),f(r.utcThursday.count(r.utcYear(oe),oe)+(r.utcYear(oe).getUTCDay()===4),ye,2)}function de(oe){return oe.getUTCDay()}function Oe(oe,ye){return f(r.utcMonday.count(r.utcYear(oe)-1,oe),ye,2)}function Ue(oe,ye){return f(oe.getUTCFullYear()%100,ye,2)}function rt(oe,ye){return f(oe.getUTCFullYear()%1e4,ye,4)}function Ur(){return"+0000"}function Ye(){return"%"}function Ve(oe){return+oe}function pr(oe){return Math.floor(+oe/1e3)}var Tr;mr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function mr(oe){return Tr=i(oe),e.timeFormat=Tr.format,e.timeParse=Tr.parse,e.utcFormat=Tr.utcFormat,e.utcParse=Tr.utcParse,Tr}var vr="%Y-%m-%dT%H:%M:%S.%LZ";function Cr(oe){return oe.toISOString()}var Ir=Date.prototype.toISOString?Cr:e.utcFormat(vr);function Gr(oe){var ye=new Date(oe);return isNaN(ye)?null:ye}var Ze=+new Date("2000-01-01T00:00:00.000Z")?Gr:e.utcParse(vr);e.isoFormat=Ir,e.isoParse=Ze,e.timeFormatDefaultLocale=mr,e.timeFormatLocale=i,Object.defineProperty(e,"__esModule",{value:!0})})});var g_=R((Vy,xM)=>{(function(e,r){typeof Vy=="object"&&typeof xM!="undefined"?r(Vy):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(Vy,function(e){"use strict";function r(M){return Math.abs(M=Math.round(M))>=1e21?M.toLocaleString("en").replace(/,/g,""):M.toString(10)}function t(M,k){if((D=(M=k?M.toExponential(k-1):M.toExponential()).indexOf("e"))<0)return null;var D,P=M.slice(0,D);return[P.length>1?P[0]+P.slice(2):P,+M.slice(D+1)]}function a(M){return M=t(Math.abs(M)),M?M[1]:NaN}function n(M,k){return function(D,P){for(var N=D.length,q=[],O=0,U=M[0],$=0;N>0&&U>0&&($+U+1>P&&(U=Math.max(1,P-$)),q.push(D.substring(N-=U,N+U)),!(($+=U+1)>P));)U=M[O=(O+1)%M.length];return q.reverse().join(k)}}function i(M){return function(k){return k.replace(/[0-9]/g,function(D){return M[+D]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(M){if(!(k=o.exec(M)))throw new Error("invalid format: "+M);var k;return new s({fill:k[1],align:k[2],sign:k[3],symbol:k[4],zero:k[5],width:k[6],comma:k[7],precision:k[8]&&k[8].slice(1),trim:k[9],type:k[10]})}l.prototype=s.prototype;function s(M){this.fill=M.fill===void 0?" ":M.fill+"",this.align=M.align===void 0?">":M.align+"",this.sign=M.sign===void 0?"-":M.sign+"",this.symbol=M.symbol===void 0?"":M.symbol+"",this.zero=!!M.zero,this.width=M.width===void 0?void 0:+M.width,this.comma=!!M.comma,this.precision=M.precision===void 0?void 0:+M.precision,this.trim=!!M.trim,this.type=M.type===void 0?"":M.type+""}s.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(M){e:for(var k=M.length,D=1,P=-1,N;D0&&(P=0);break}return P>0?M.slice(0,P)+M.slice(N+1):M}var f;function c(M,k){var D=t(M,k);if(!D)return M+"";var P=D[0],N=D[1],q=N-(f=Math.max(-8,Math.min(8,Math.floor(N/3)))*3)+1,O=P.length;return q===O?P:q>O?P+new Array(q-O+1).join("0"):q>0?P.slice(0,q)+"."+P.slice(q):"0."+new Array(1-q).join("0")+t(M,Math.max(0,k+q-1))[0]}function v(M,k){var D=t(M,k);if(!D)return M+"";var P=D[0],N=D[1];return N<0?"0."+new Array(-N).join("0")+P:P.length>N+1?P.slice(0,N+1)+"."+P.slice(N+1):P+new Array(N-P.length+2).join("0")}var d={"%":function(M,k){return(M*100).toFixed(k)},b:function(M){return Math.round(M).toString(2)},c:function(M){return M+""},d:r,e:function(M,k){return M.toExponential(k)},f:function(M,k){return M.toFixed(k)},g:function(M,k){return M.toPrecision(k)},o:function(M){return Math.round(M).toString(8)},p:function(M,k){return v(M*100,k)},r:v,s:c,X:function(M){return Math.round(M).toString(16).toUpperCase()},x:function(M){return Math.round(M).toString(16)}};function p(M){return M}var g=Array.prototype.map,m=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function b(M){var k=M.grouping===void 0||M.thousands===void 0?p:n(g.call(M.grouping,Number),M.thousands+""),D=M.currency===void 0?"":M.currency[0]+"",P=M.currency===void 0?"":M.currency[1]+"",N=M.decimal===void 0?".":M.decimal+"",q=M.numerals===void 0?p:i(g.call(M.numerals,String)),O=M.percent===void 0?"%":M.percent+"",U=M.minus===void 0?"-":M.minus+"",$=M.nan===void 0?"NaN":M.nan+"";function W(B){B=l(B);var V=B.fill,j=B.align,Q=B.sign,ve=B.symbol,xe=B.zero,se=B.width,be=B.comma,re=B.precision,ke=B.trim,ge=B.type;ge==="n"?(be=!0,ge="g"):d[ge]||(re===void 0&&(re=12),ke=!0,ge="g"),(xe||V==="0"&&j==="=")&&(xe=!0,V="0",j="=");var Ee=ve==="$"?D:ve==="#"&&/[boxX]/.test(ge)?"0"+ge.toLowerCase():"",De=ve==="$"?P:/[%p]/.test(ge)?O:"",Ce=d[ge],Y=/[defgprs%]/.test(ge);re=re===void 0?6:/[gprs]/.test(ge)?Math.max(1,Math.min(21,re)):Math.max(0,Math.min(20,re));function ae(Z){var Te=Ee,Pe=De,Ne,lr,Qe;if(ge==="c")Pe=Ce(Z)+Pe,Z="";else{Z=+Z;var Je=Z<0||1/Z<0;if(Z=isNaN(Z)?$:Ce(Math.abs(Z),re),ke&&(Z=u(Z)),Je&&+Z==0&&Q!=="+"&&(Je=!1),Te=(Je?Q==="("?Q:U:Q==="-"||Q==="("?"":Q)+Te,Pe=(ge==="s"?m[8+f/3]:"")+Pe+(Je&&Q==="("?")":""),Y){for(Ne=-1,lr=Z.length;++NeQe||Qe>57){Pe=(Qe===46?N+Z.slice(Ne+1):Z.slice(Ne))+Pe,Z=Z.slice(0,Ne);break}}}be&&!xe&&(Z=k(Z,1/0));var or=Te.length+Z.length+Pe.length,yr=or>1)+Te+Z+Pe+yr.slice(or);break;default:Z=yr+Te+Z+Pe;break}return q(Z)}return ae.toString=function(){return B+""},ae}function H(B,V){var j=W((B=l(B),B.type="f",B)),Q=Math.max(-8,Math.min(8,Math.floor(a(V)/3)))*3,ve=Math.pow(10,-Q),xe=m[8+Q/3];return function(se){return j(ve*se)+xe}}return{format:W,formatPrefix:H}}var _;A({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function A(M){return _=b(M),e.format=_.format,e.formatPrefix=_.formatPrefix,_}function x(M){return Math.max(0,-a(Math.abs(M)))}function T(M,k){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(a(k)/3)))*3-a(Math.abs(M)))}function S(M,k){return M=Math.abs(M),k=Math.abs(k)-M,Math.max(0,a(k)-a(M))+1}e.FormatSpecifier=s,e.formatDefaultLocale=A,e.formatLocale=b,e.formatSpecifier=l,e.precisionFixed=x,e.precisionPrefix=T,e.precisionRound=S,Object.defineProperty(e,"__esModule",{value:!0})})});var wM=R((JSe,_M)=>{"use strict";_M.exports=function(e){for(var r=e.length,t,a=0;a13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var ia=R(($Se,AM)=>{"use strict";var Bne=wM();AM.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&Bne(t))return!1}else if(r!=="number")return!1;return e-e<1}});var _n=R((QSe,TM)=>{"use strict";TM.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var b_=R((Yy,MM)=>{(function(e,r){typeof Yy=="object"&&typeof MM!="undefined"?r(Yy):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(Yy,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),a=0;a>2],f+=r[(l[s]&3)<<4|l[s+1]>>4],f+=r[(l[s+1]&15)<<2|l[s+2]>>6],f+=r[l[s+2]&63];return u%3===2?f=f.substring(0,f.length-1)+"=":u%3===1&&(f=f.substring(0,f.length-2)+"=="),f},i=function(o){var l=o.length*.75,s=o.length,u,f=0,c,v,d,p;o[o.length-1]==="="&&(l--,o[o.length-2]==="="&&l--);var g=new ArrayBuffer(l),m=new Uint8Array(g);for(u=0;u>4,m[f++]=(v&15)<<4|d>>2,m[f++]=(d&3)<<6|p&63;return g};e.decode=i,e.encode=n,Object.defineProperty(e,"__esModule",{value:!0})})});var Ru=R((KSe,SM)=>{"use strict";SM.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var ro=R(cl=>{"use strict";var Une=b_().decode,Gne=Ru(),x_=Array.isArray,Hne=ArrayBuffer,Vne=DataView;function kM(e){return Hne.isView(e)&&!(e instanceof Vne)}cl.isTypedArray=kM;function Wy(e){return x_(e)||kM(e)}cl.isArrayOrTypedArray=Wy;function Yne(e){return!Wy(e[0])}cl.isArray1D=Yne;cl.ensureArray=function(e,r){return x_(e)||(e=[]),e.length=r,e};var ti={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};ti.uint8c=ti.u1c;ti.uint8=ti.u1;ti.int8=ti.i1;ti.uint16=ti.u2;ti.int16=ti.i2;ti.uint32=ti.u4;ti.int32=ti.i4;ti.float32=ti.f4;ti.float64=ti.f8;function __(e){return e.constructor===ArrayBuffer}cl.isArrayBuffer=__;cl.decodeTypedArraySpec=function(e){var r=[],t=Wne(e),a=t.dtype,n=ti[a];if(!n)throw new Error('Error in dtype: "'+a+'"');var i=n.BYTES_PER_ELEMENT,o=t.bdata;__(o)||(o=Une(o));var l=t.shape===void 0?[o.byteLength/i]:(""+t.shape).split(",");l.reverse();var s=l.length,u,f,c=+l[0],v=i*c,d=0;if(s===1)r=new n(o);else if(s===2)for(u=+l[1],f=0;f{"use strict";var EM=ia(),A_=ro().isArrayOrTypedArray;FM.exports=function(r,t){if(EM(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var a=t.split("."),n,i,o,l;for(l=0;l{"use strict";var e0=jy(),$ne=/^\w*$/,Qne=0,RM=1,Xy=2,PM=3,uc=4;NM.exports=function(r,t,a,n){a=a||"name",n=n||"value";var i,o,l,s={};t&&t.length?(l=e0(r,t),o=l.get()):o=r,t=t||"";var u={};if(o)for(i=0;i2)return s[d]=s[d]|Xy,c.set(v,null);if(f){for(i=d;i{"use strict";var Kne=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,eie=/^[^\.\[\]]+$/;OM.exports=function(e,r){for(;r;){var t=e.match(Kne);if(t)e=t[1];else if(e.match(eie))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var Zy=R((nke,BM)=>{"use strict";var rie=ia();BM.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var a=Math.log(Math.min(t[0],t[1]))/Math.LN10;return rie(a)||(a=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),a}});var HM=R((ike,GM)=>{"use strict";var UM=ro().isArrayOrTypedArray,Jd=Ru();GM.exports=function e(r,t){for(var a in t){var n=t[a],i=r[a];if(i!==n)if(a.charAt(0)==="_"||typeof n=="function"){if(a in r)continue;r[a]=n}else if(UM(n)&&UM(i)&&Jd(n[0])){if(a==="customdata"||a==="ids")continue;for(var o=Math.min(n.length,i.length),l=0;l{"use strict";function tie(e,r){var t=e%r;return t<0?t+r:t}function aie(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}VM.exports={mod:tie,modHalf:aie}});var vl=R((lke,Jy)=>{(function(e){var r=/^\s+/,t=/\s+$/,a=0,n=e.round,i=e.min,o=e.max,l=e.random;function s(Y,ae){if(Y=Y||"",ae=ae||{},Y instanceof s)return Y;if(!(this instanceof s))return new s(Y,ae);var Z=u(Y);this._originalInput=Y,this._r=Z.r,this._g=Z.g,this._b=Z.b,this._a=Z.a,this._roundA=n(100*this._a)/100,this._format=ae.format||Z.format,this._gradientType=ae.gradientType,this._r<1&&(this._r=n(this._r)),this._g<1&&(this._g=n(this._g)),this._b<1&&(this._b=n(this._b)),this._ok=Z.ok,this._tc_id=a++}s.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var Y=this.toRgb();return(Y.r*299+Y.g*587+Y.b*114)/1e3},getLuminance:function(){var Y=this.toRgb(),ae,Z,Te,Pe,Ne,lr;return ae=Y.r/255,Z=Y.g/255,Te=Y.b/255,ae<=.03928?Pe=ae/12.92:Pe=e.pow((ae+.055)/1.055,2.4),Z<=.03928?Ne=Z/12.92:Ne=e.pow((Z+.055)/1.055,2.4),Te<=.03928?lr=Te/12.92:lr=e.pow((Te+.055)/1.055,2.4),.2126*Pe+.7152*Ne+.0722*lr},setAlpha:function(Y){return this._a=B(Y),this._roundA=n(100*this._a)/100,this},toHsv:function(){var Y=d(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,v:Y.v,a:this._a}},toHsvString:function(){var Y=d(this._r,this._g,this._b),ae=n(Y.h*360),Z=n(Y.s*100),Te=n(Y.v*100);return this._a==1?"hsv("+ae+", "+Z+"%, "+Te+"%)":"hsva("+ae+", "+Z+"%, "+Te+"%, "+this._roundA+")"},toHsl:function(){var Y=c(this._r,this._g,this._b);return{h:Y.h*360,s:Y.s,l:Y.l,a:this._a}},toHslString:function(){var Y=c(this._r,this._g,this._b),ae=n(Y.h*360),Z=n(Y.s*100),Te=n(Y.l*100);return this._a==1?"hsl("+ae+", "+Z+"%, "+Te+"%)":"hsla("+ae+", "+Z+"%, "+Te+"%, "+this._roundA+")"},toHex:function(Y){return g(this._r,this._g,this._b,Y)},toHexString:function(Y){return"#"+this.toHex(Y)},toHex8:function(Y){return m(this._r,this._g,this._b,this._a,Y)},toHex8String:function(Y){return"#"+this.toHex8(Y)},toRgb:function(){return{r:n(this._r),g:n(this._g),b:n(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+n(this._r)+", "+n(this._g)+", "+n(this._b)+")":"rgba("+n(this._r)+", "+n(this._g)+", "+n(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:n(V(this._r,255)*100)+"%",g:n(V(this._g,255)*100)+"%",b:n(V(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%)":"rgba("+n(V(this._r,255)*100)+"%, "+n(V(this._g,255)*100)+"%, "+n(V(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:W[g(this._r,this._g,this._b,!0)]||!1},toFilter:function(Y){var ae="#"+b(this._r,this._g,this._b,this._a),Z=ae,Te=this._gradientType?"GradientType = 1, ":"";if(Y){var Pe=s(Y);Z="#"+b(Pe._r,Pe._g,Pe._b,Pe._a)}return"progid:DXImageTransform.Microsoft.gradient("+Te+"startColorstr="+ae+",endColorstr="+Z+")"},toString:function(Y){var ae=!!Y;Y=Y||this._format;var Z=!1,Te=this._a<1&&this._a>=0,Pe=!ae&&Te&&(Y==="hex"||Y==="hex6"||Y==="hex3"||Y==="hex4"||Y==="hex8"||Y==="name");return Pe?Y==="name"&&this._a===0?this.toName():this.toRgbString():(Y==="rgb"&&(Z=this.toRgbString()),Y==="prgb"&&(Z=this.toPercentageRgbString()),(Y==="hex"||Y==="hex6")&&(Z=this.toHexString()),Y==="hex3"&&(Z=this.toHexString(!0)),Y==="hex4"&&(Z=this.toHex8String(!0)),Y==="hex8"&&(Z=this.toHex8String()),Y==="name"&&(Z=this.toName()),Y==="hsl"&&(Z=this.toHslString()),Y==="hsv"&&(Z=this.toHsvString()),Z||this.toHexString())},clone:function(){return s(this.toString())},_applyModification:function(Y,ae){var Z=Y.apply(null,[this].concat([].slice.call(ae)));return this._r=Z._r,this._g=Z._g,this._b=Z._b,this.setAlpha(Z._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(S,arguments)},darken:function(){return this._applyModification(M,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(A,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(k,arguments)},_applyCombination:function(Y,ae){return Y.apply(null,[this].concat([].slice.call(ae)))},analogous:function(){return this._applyCombination(O,arguments)},complement:function(){return this._applyCombination(D,arguments)},monochromatic:function(){return this._applyCombination(U,arguments)},splitcomplement:function(){return this._applyCombination(q,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(N,arguments)}},s.fromRatio=function(Y,ae){if(typeof Y=="object"){var Z={};for(var Te in Y)Y.hasOwnProperty(Te)&&(Te==="a"?Z[Te]=Y[Te]:Z[Te]=be(Y[Te]));Y=Z}return s(Y,ae)};function u(Y){var ae={r:0,g:0,b:0},Z=1,Te=null,Pe=null,Ne=null,lr=!1,Qe=!1;return typeof Y=="string"&&(Y=De(Y)),typeof Y=="object"&&(Ee(Y.r)&&Ee(Y.g)&&Ee(Y.b)?(ae=f(Y.r,Y.g,Y.b),lr=!0,Qe=String(Y.r).substr(-1)==="%"?"prgb":"rgb"):Ee(Y.h)&&Ee(Y.s)&&Ee(Y.v)?(Te=be(Y.s),Pe=be(Y.v),ae=p(Y.h,Te,Pe),lr=!0,Qe="hsv"):Ee(Y.h)&&Ee(Y.s)&&Ee(Y.l)&&(Te=be(Y.s),Ne=be(Y.l),ae=v(Y.h,Te,Ne),lr=!0,Qe="hsl"),Y.hasOwnProperty("a")&&(Z=Y.a)),Z=B(Z),{ok:lr,format:Y.format||Qe,r:i(255,o(ae.r,0)),g:i(255,o(ae.g,0)),b:i(255,o(ae.b,0)),a:Z}}function f(Y,ae,Z){return{r:V(Y,255)*255,g:V(ae,255)*255,b:V(Z,255)*255}}function c(Y,ae,Z){Y=V(Y,255),ae=V(ae,255),Z=V(Z,255);var Te=o(Y,ae,Z),Pe=i(Y,ae,Z),Ne,lr,Qe=(Te+Pe)/2;if(Te==Pe)Ne=lr=0;else{var Je=Te-Pe;switch(lr=Qe>.5?Je/(2-Te-Pe):Je/(Te+Pe),Te){case Y:Ne=(ae-Z)/Je+(ae1&&(ir-=1),ir<1/6?or+(yr-or)*6*ir:ir<1/2?yr:ir<2/3?or+(yr-or)*(2/3-ir)*6:or}if(ae===0)Te=Pe=Ne=Z;else{var Qe=Z<.5?Z*(1+ae):Z+ae-Z*ae,Je=2*Z-Qe;Te=lr(Je,Qe,Y+1/3),Pe=lr(Je,Qe,Y),Ne=lr(Je,Qe,Y-1/3)}return{r:Te*255,g:Pe*255,b:Ne*255}}function d(Y,ae,Z){Y=V(Y,255),ae=V(ae,255),Z=V(Z,255);var Te=o(Y,ae,Z),Pe=i(Y,ae,Z),Ne,lr,Qe=Te,Je=Te-Pe;if(lr=Te===0?0:Je/Te,Te==Pe)Ne=0;else{switch(Te){case Y:Ne=(ae-Z)/Je+(ae>1)+720)%360;--ae;)Te.h=(Te.h+Pe)%360,Ne.push(s(Te));return Ne}function U(Y,ae){ae=ae||6;for(var Z=s(Y).toHsv(),Te=Z.h,Pe=Z.s,Ne=Z.v,lr=[],Qe=1/ae;ae--;)lr.push(s({h:Te,s:Pe,v:Ne})),Ne=(Ne+Qe)%1;return lr}s.mix=function(Y,ae,Z){Z=Z===0?0:Z||50;var Te=s(Y).toRgb(),Pe=s(ae).toRgb(),Ne=Z/100,lr={r:(Pe.r-Te.r)*Ne+Te.r,g:(Pe.g-Te.g)*Ne+Te.g,b:(Pe.b-Te.b)*Ne+Te.b,a:(Pe.a-Te.a)*Ne+Te.a};return s(lr)},s.readability=function(Y,ae){var Z=s(Y),Te=s(ae);return(e.max(Z.getLuminance(),Te.getLuminance())+.05)/(e.min(Z.getLuminance(),Te.getLuminance())+.05)},s.isReadable=function(Y,ae,Z){var Te=s.readability(Y,ae),Pe,Ne;switch(Ne=!1,Pe=Ce(Z),Pe.level+Pe.size){case"AAsmall":case"AAAlarge":Ne=Te>=4.5;break;case"AAlarge":Ne=Te>=3;break;case"AAAsmall":Ne=Te>=7;break}return Ne},s.mostReadable=function(Y,ae,Z){var Te=null,Pe=0,Ne,lr,Qe,Je;Z=Z||{},lr=Z.includeFallbackColors,Qe=Z.level,Je=Z.size;for(var or=0;orPe&&(Pe=Ne,Te=s(ae[or]));return s.isReadable(Y,Te,{level:Qe,size:Je})||!lr?Te:(Z.includeFallbackColors=!1,s.mostReadable(Y,["#fff","#000"],Z))};var $=s.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},W=s.hexNames=H($);function H(Y){var ae={};for(var Z in Y)Y.hasOwnProperty(Z)&&(ae[Y[Z]]=Z);return ae}function B(Y){return Y=parseFloat(Y),(isNaN(Y)||Y<0||Y>1)&&(Y=1),Y}function V(Y,ae){ve(Y)&&(Y="100%");var Z=xe(Y);return Y=i(ae,o(0,parseFloat(Y))),Z&&(Y=parseInt(Y*ae,10)/100),e.abs(Y-ae)<1e-6?1:Y%ae/parseFloat(ae)}function j(Y){return i(1,o(0,Y))}function Q(Y){return parseInt(Y,16)}function ve(Y){return typeof Y=="string"&&Y.indexOf(".")!=-1&&parseFloat(Y)===1}function xe(Y){return typeof Y=="string"&&Y.indexOf("%")!=-1}function se(Y){return Y.length==1?"0"+Y:""+Y}function be(Y){return Y<=1&&(Y=Y*100+"%"),Y}function re(Y){return e.round(parseFloat(Y)*255).toString(16)}function ke(Y){return Q(Y)/255}var ge=function(){var Y="[-\\+]?\\d+%?",ae="[-\\+]?\\d*\\.\\d+%?",Z="(?:"+ae+")|(?:"+Y+")",Te="[\\s|\\(]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")\\s*\\)?",Pe="[\\s|\\(]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")\\s*\\)?";return{CSS_UNIT:new RegExp(Z),rgb:new RegExp("rgb"+Te),rgba:new RegExp("rgba"+Pe),hsl:new RegExp("hsl"+Te),hsla:new RegExp("hsla"+Pe),hsv:new RegExp("hsv"+Te),hsva:new RegExp("hsva"+Pe),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Ee(Y){return!!ge.CSS_UNIT.exec(Y)}function De(Y){Y=Y.replace(r,"").replace(t,"").toLowerCase();var ae=!1;if($[Y])Y=$[Y],ae=!0;else if(Y=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var Z;return(Z=ge.rgb.exec(Y))?{r:Z[1],g:Z[2],b:Z[3]}:(Z=ge.rgba.exec(Y))?{r:Z[1],g:Z[2],b:Z[3],a:Z[4]}:(Z=ge.hsl.exec(Y))?{h:Z[1],s:Z[2],l:Z[3]}:(Z=ge.hsla.exec(Y))?{h:Z[1],s:Z[2],l:Z[3],a:Z[4]}:(Z=ge.hsv.exec(Y))?{h:Z[1],s:Z[2],v:Z[3]}:(Z=ge.hsva.exec(Y))?{h:Z[1],s:Z[2],v:Z[3],a:Z[4]}:(Z=ge.hex8.exec(Y))?{r:Q(Z[1]),g:Q(Z[2]),b:Q(Z[3]),a:ke(Z[4]),format:ae?"name":"hex8"}:(Z=ge.hex6.exec(Y))?{r:Q(Z[1]),g:Q(Z[2]),b:Q(Z[3]),format:ae?"name":"hex"}:(Z=ge.hex4.exec(Y))?{r:Q(Z[1]+""+Z[1]),g:Q(Z[2]+""+Z[2]),b:Q(Z[3]+""+Z[3]),a:ke(Z[4]+""+Z[4]),format:ae?"name":"hex8"}:(Z=ge.hex3.exec(Y))?{r:Q(Z[1]+""+Z[1]),g:Q(Z[2]+""+Z[2]),b:Q(Z[3]+""+Z[3]),format:ae?"name":"hex"}:!1}function Ce(Y){var ae,Z;return Y=Y||{level:"AA",size:"small"},ae=(Y.level||"AA").toUpperCase(),Z=(Y.size||"small").toLowerCase(),ae!=="AA"&&ae!=="AAA"&&(ae="AA"),Z!=="small"&&Z!=="large"&&(Z="small"),{level:ae,size:Z}}typeof Jy!="undefined"&&Jy.exports?Jy.exports=s:window.tinycolor=s})(Math)});var hn=R(Kd=>{"use strict";var YM=Ru(),$d=Array.isArray;function nie(e,r){var t,a;for(t=0;t{"use strict";WM.exports=function(e){var r=e.variantValues,t=e.editType,a=e.colorEditType;a===void 0&&(a=t);var n={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(n.valType="enumerated",n.values=n.extras,n.extras=void 0,n.min=void 0,n.max=void 0);var i={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:a},weight:n,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(i.size.dflt="auto"),e.autoColor&&(i.color.dflt="auto"),e.arrayOk&&(i.family.arrayOk=!0,i.weight.arrayOk=!0,i.style.arrayOk=!0,e.noFontVariant||(i.variant.arrayOk=!0),e.noFontTextcase||(i.textcase.arrayOk=!0),e.noFontLineposition||(i.lineposition.arrayOk=!0),e.noFontShadow||(i.shadow.arrayOk=!0),i.size.arrayOk=!0,i.color.arrayOk=!0),i}});var e1=R((fke,jM)=>{"use strict";jM.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var t0=R((cke,JM)=>{"use strict";var XM=e1(),ZM=ci(),T_=ZM({editType:"none"});T_.family.dflt=XM.HOVERFONT;T_.size.dflt=XM.HOVERFONTSIZE;JM.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:T_,grouptitlefont:ZM({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Ky=R((vke,$M)=>{"use strict";var iie=ci(),$y=t0().hoverlabel,Qy=hn().extendFlat;$M.exports={hoverlabel:{bgcolor:Qy({},$y.bgcolor,{arrayOk:!0}),bordercolor:Qy({},$y.bordercolor,{arrayOk:!0}),font:iie({arrayOk:!0,editType:"none"}),align:Qy({},$y.align,{arrayOk:!0}),namelength:Qy({},$y.namelength,{arrayOk:!0}),editType:"none"}}});var hl=R((hke,QM)=>{"use strict";var oie=ci(),lie=Ky();QM.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:oie({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:lie.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var fc=R((dke,rS)=>{"use strict";var sie=vl(),eg={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},KM=eg.RdBu;function uie(e,r){if(r||(r=KM),!e)return r;function t(){try{e=eg[e]||JSON.parse(e)}catch(a){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),eS(e)?e:r}function eS(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";cc.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];cc.defaultLine="#444";cc.lightLine="#eee";cc.background="#fff";cc.borderLine="#BEC8D9";cc.lightFraction=100*10/11});var Kt=R((mke,tS)=>{"use strict";var to=vl(),cie=ia(),vie=ro().isTypedArray,Wn=tS.exports={},rg=Ql();Wn.defaults=rg.defaults;var hie=Wn.defaultLine=rg.defaultLine;Wn.lightLine=rg.lightLine;var S_=Wn.background=rg.background;Wn.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};Wn.rgb=function(e){return Wn.tinyRGB(to(e))};Wn.opacity=function(e){return e?to(e).getAlpha():0};Wn.addOpacity=function(e,r){var t=to(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};Wn.combine=function(e,r){var t=to(e).toRgb();if(t.a===1)return to(e).toRgbString();var a=to(r||S_).toRgb(),n=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},i={r:n.r*(1-t.a)+t.r*t.a,g:n.g*(1-t.a)+t.g*t.a,b:n.b*(1-t.a)+t.b*t.a};return to(i).toRgbString()};Wn.interpolate=function(e,r,t){var a=to(e).toRgb(),n=to(r).toRgb(),i={r:t*a.r+(1-t)*n.r,g:t*a.g+(1-t)*n.g,b:t*a.b+(1-t)*n.b};return to(i).toRgbString()};Wn.contrast=function(e,r,t){var a=to(e);a.getAlpha()!==1&&(a=to(Wn.combine(e,S_)));var n=a.isDark()?r?a.lighten(r):S_:t?a.darken(t):hie;return n.toString()};Wn.stroke=function(e,r){var t=to(r);e.style({stroke:Wn.tinyRGB(t),"stroke-opacity":t.getAlpha()})};Wn.fill=function(e,r){var t=to(r);e.style({fill:Wn.tinyRGB(t),"fill-opacity":t.getAlpha()})};Wn.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,a,n,i;for(t=0;t=0)))return e;if(i===3)a[i]>1&&(a[i]=1);else if(a[i]>=1)return e}var o=Math.round(a[0]*255)+", "+Math.round(a[1]*255)+", "+Math.round(a[2]*255);return n?"rgba("+o+", "+a[3]+")":"rgb("+o+")"}});var a0=R((yke,aS)=>{"use strict";aS.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n0=R(nS=>{"use strict";nS.counter=function(e,r,t,a){var n=(r||"")+(t?"":"$"),i=a===!1?"":"^";return e==="xy"?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+n):new RegExp(i+e+"([2-9]|[1-9][0-9]+)?"+n)}});var sS=R(ao=>{"use strict";var k_=ia(),iS=vl(),oS=hn().extendFlat,die=hl(),pie=fc(),mie=Kt(),yie=a0().DESELECTDIM,i0=jy(),lS=n0().counter,gie=r0().modHalf,Kl=ro().isArrayOrTypedArray,Pu=ro().isTypedArraySpec,Nu=ro().decodeTypedArraySpec;ao.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Kl(e)?e:Pu(e)?Nu(e):t)}},enumerated:{coerceFunction:function(e,r,t,a){a.coerceNumber&&(e=+e),a.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,a=0;aa.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}Pu(e)&&(e=Nu(e)),e%1||!k_(e)||a.min!==void 0&&ea.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,a){if(typeof e!="string"){var n=typeof e=="number";a.strict===!0||!n?r.set(t):r.set(String(e))}else a.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Pu(e)&&(e=Nu(e)),iS(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function a(n){return iS(n).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(a)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(pie.get(e,t))}},angle:{coerceFunction:function(e,r,t){Pu(e)&&(e=Nu(e)),e==="auto"?r.set("auto"):k_(e)?r.set(gie(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,a){var n=a.regex||lS(t);if(typeof e=="string"&&n.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!lS(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,a){if((a.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var n=e.split("+"),i=0;i{"use strict";var uS={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},fS={};function cS(e,r){for(var t in e){var a=e[t];a.valType?r[t]=a.dflt:(r[t]||(r[t]={}),cS(a,r[t]))}}cS(uS,fS);vS.exports={configAttributes:uS,dfltConfig:fS}});var E_=R((_ke,hS)=>{"use strict";var C_=ta(),bie=ia(),r1=[];hS.exports=function(e,r){if(r1.indexOf(e)!==-1)return;r1.push(e);var t=1e3;bie(r)?t=r:r==="long"&&(t=3e3);var a=C_.select("body").selectAll(".plotly-notifier").data([0]);a.enter().append("div").classed("plotly-notifier",!0);var n=a.selectAll(".notifier-note").data(r1);function i(o){o.duration(700).style("opacity",0).each("end",function(l){var s=r1.indexOf(l);s!==-1&&r1.splice(s,1),C_.select(this).remove()})}n.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var l=C_.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(i)});for(var s=l.append("p"),u=o.split(//g),f=0;f{"use strict";var o0=vc().dfltConfig,L_=E_(),D_=dS.exports={};D_.log=function(){var e;if(o0.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};D_.warn=function(){var e;if(o0.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};D_.error=function(){var e;if(o0.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var ag=R((Ake,pS)=>{"use strict";pS.exports=function(){}});var q_=R((Tke,mS)=>{"use strict";mS.exports=function(r,t){if(t instanceof RegExp){for(var a=t.toString(),n=0;n{yS.exports=xie;function xie(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var xS=R((Ske,bS)=>{bS.exports=_ie;function _ie(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var wS=R((kke,_S)=>{_S.exports=wie;function wie(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var F_=R((Cke,AS)=>{AS.exports=Aie;function Aie(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var MS=R((Eke,TS)=>{TS.exports=Tie;function Tie(e,r){if(e===r){var t=r[1],a=r[2],n=r[3],i=r[6],o=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=a,e[9]=i,e[11]=r[14],e[12]=n,e[13]=o,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var kS=R((Lke,SS)=>{SS.exports=Mie;function Mie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],g=r[13],m=r[14],b=r[15],_=t*l-a*o,A=t*s-n*o,x=t*u-i*o,T=a*s-n*l,S=a*u-i*l,M=n*u-i*s,k=f*g-c*p,D=f*m-v*p,P=f*b-d*p,N=c*m-v*g,q=c*b-d*g,O=v*b-d*m,U=_*O-A*q+x*N+T*P-S*D+M*k;return U?(U=1/U,e[0]=(l*O-s*q+u*N)*U,e[1]=(n*q-a*O-i*N)*U,e[2]=(g*M-m*S+b*T)*U,e[3]=(v*S-c*M-d*T)*U,e[4]=(s*P-o*O-u*D)*U,e[5]=(t*O-n*P+i*D)*U,e[6]=(m*x-p*M-b*A)*U,e[7]=(f*M-v*x+d*A)*U,e[8]=(o*q-l*P+u*k)*U,e[9]=(a*P-t*q-i*k)*U,e[10]=(p*S-g*x+b*_)*U,e[11]=(c*x-f*S-d*_)*U,e[12]=(l*D-o*N-s*k)*U,e[13]=(t*N-a*D+n*k)*U,e[14]=(g*A-p*T-m*_)*U,e[15]=(f*T-c*A+v*_)*U,e):null}});var ES=R((Dke,CS)=>{CS.exports=Sie;function Sie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=r[4],l=r[5],s=r[6],u=r[7],f=r[8],c=r[9],v=r[10],d=r[11],p=r[12],g=r[13],m=r[14],b=r[15];return e[0]=l*(v*b-d*m)-c*(s*b-u*m)+g*(s*d-u*v),e[1]=-(a*(v*b-d*m)-c*(n*b-i*m)+g*(n*d-i*v)),e[2]=a*(s*b-u*m)-l*(n*b-i*m)+g*(n*u-i*s),e[3]=-(a*(s*d-u*v)-l*(n*d-i*v)+c*(n*u-i*s)),e[4]=-(o*(v*b-d*m)-f*(s*b-u*m)+p*(s*d-u*v)),e[5]=t*(v*b-d*m)-f*(n*b-i*m)+p*(n*d-i*v),e[6]=-(t*(s*b-u*m)-o*(n*b-i*m)+p*(n*u-i*s)),e[7]=t*(s*d-u*v)-o*(n*d-i*v)+f*(n*u-i*s),e[8]=o*(c*b-d*g)-f*(l*b-u*g)+p*(l*d-u*c),e[9]=-(t*(c*b-d*g)-f*(a*b-i*g)+p*(a*d-i*c)),e[10]=t*(l*b-u*g)-o*(a*b-i*g)+p*(a*u-i*l),e[11]=-(t*(l*d-u*c)-o*(a*d-i*c)+f*(a*u-i*l)),e[12]=-(o*(c*m-v*g)-f*(l*m-s*g)+p*(l*v-s*c)),e[13]=t*(c*m-v*g)-f*(a*m-n*g)+p*(a*v-n*c),e[14]=-(t*(l*m-s*g)-o*(a*m-n*g)+p*(a*s-n*l)),e[15]=t*(l*v-s*c)-o*(a*v-n*c)+f*(a*s-n*l),e}});var DS=R((qke,LS)=>{LS.exports=kie;function kie(e){var r=e[0],t=e[1],a=e[2],n=e[3],i=e[4],o=e[5],l=e[6],s=e[7],u=e[8],f=e[9],c=e[10],v=e[11],d=e[12],p=e[13],g=e[14],m=e[15],b=r*o-t*i,_=r*l-a*i,A=r*s-n*i,x=t*l-a*o,T=t*s-n*o,S=a*s-n*l,M=u*p-f*d,k=u*g-c*d,D=u*m-v*d,P=f*g-c*p,N=f*m-v*p,q=c*m-v*g;return b*q-_*N+A*P+x*D-T*k+S*M}});var FS=R((Fke,qS)=>{qS.exports=Cie;function Cie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=r[4],s=r[5],u=r[6],f=r[7],c=r[8],v=r[9],d=r[10],p=r[11],g=r[12],m=r[13],b=r[14],_=r[15],A=t[0],x=t[1],T=t[2],S=t[3];return e[0]=A*a+x*l+T*c+S*g,e[1]=A*n+x*s+T*v+S*m,e[2]=A*i+x*u+T*d+S*b,e[3]=A*o+x*f+T*p+S*_,A=t[4],x=t[5],T=t[6],S=t[7],e[4]=A*a+x*l+T*c+S*g,e[5]=A*n+x*s+T*v+S*m,e[6]=A*i+x*u+T*d+S*b,e[7]=A*o+x*f+T*p+S*_,A=t[8],x=t[9],T=t[10],S=t[11],e[8]=A*a+x*l+T*c+S*g,e[9]=A*n+x*s+T*v+S*m,e[10]=A*i+x*u+T*d+S*b,e[11]=A*o+x*f+T*p+S*_,A=t[12],x=t[13],T=t[14],S=t[15],e[12]=A*a+x*l+T*c+S*g,e[13]=A*n+x*s+T*v+S*m,e[14]=A*i+x*u+T*d+S*b,e[15]=A*o+x*f+T*p+S*_,e}});var PS=R((Rke,RS)=>{RS.exports=Eie;function Eie(e,r,t){var a=t[0],n=t[1],i=t[2],o,l,s,u,f,c,v,d,p,g,m,b;return r===e?(e[12]=r[0]*a+r[4]*n+r[8]*i+r[12],e[13]=r[1]*a+r[5]*n+r[9]*i+r[13],e[14]=r[2]*a+r[6]*n+r[10]*i+r[14],e[15]=r[3]*a+r[7]*n+r[11]*i+r[15]):(o=r[0],l=r[1],s=r[2],u=r[3],f=r[4],c=r[5],v=r[6],d=r[7],p=r[8],g=r[9],m=r[10],b=r[11],e[0]=o,e[1]=l,e[2]=s,e[3]=u,e[4]=f,e[5]=c,e[6]=v,e[7]=d,e[8]=p,e[9]=g,e[10]=m,e[11]=b,e[12]=o*a+f*n+p*i+r[12],e[13]=l*a+c*n+g*i+r[13],e[14]=s*a+v*n+m*i+r[14],e[15]=u*a+d*n+b*i+r[15]),e}});var IS=R((Pke,NS)=>{NS.exports=Lie;function Lie(e,r,t){var a=t[0],n=t[1],i=t[2];return e[0]=r[0]*a,e[1]=r[1]*a,e[2]=r[2]*a,e[3]=r[3]*a,e[4]=r[4]*n,e[5]=r[5]*n,e[6]=r[6]*n,e[7]=r[7]*n,e[8]=r[8]*i,e[9]=r[9]*i,e[10]=r[10]*i,e[11]=r[11]*i,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var zS=R((Nke,OS)=>{OS.exports=Die;function Die(e,r,t,a){var n=a[0],i=a[1],o=a[2],l=Math.sqrt(n*n+i*i+o*o),s,u,f,c,v,d,p,g,m,b,_,A,x,T,S,M,k,D,P,N,q,O,U,$;return Math.abs(l)<1e-6?null:(l=1/l,n*=l,i*=l,o*=l,s=Math.sin(t),u=Math.cos(t),f=1-u,c=r[0],v=r[1],d=r[2],p=r[3],g=r[4],m=r[5],b=r[6],_=r[7],A=r[8],x=r[9],T=r[10],S=r[11],M=n*n*f+u,k=i*n*f+o*s,D=o*n*f-i*s,P=n*i*f-o*s,N=i*i*f+u,q=o*i*f+n*s,O=n*o*f+i*s,U=i*o*f-n*s,$=o*o*f+u,e[0]=c*M+g*k+A*D,e[1]=v*M+m*k+x*D,e[2]=d*M+b*k+T*D,e[3]=p*M+_*k+S*D,e[4]=c*P+g*N+A*q,e[5]=v*P+m*N+x*q,e[6]=d*P+b*N+T*q,e[7]=p*P+_*N+S*q,e[8]=c*O+g*U+A*$,e[9]=v*O+m*U+x*$,e[10]=d*O+b*U+T*$,e[11]=p*O+_*U+S*$,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var US=R((Ike,BS)=>{BS.exports=qie;function qie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[4],o=r[5],l=r[6],s=r[7],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=i*n+u*a,e[5]=o*n+f*a,e[6]=l*n+c*a,e[7]=s*n+v*a,e[8]=u*n-i*a,e[9]=f*n-o*a,e[10]=c*n-l*a,e[11]=v*n-s*a,e}});var HS=R((Oke,GS)=>{GS.exports=Fie;function Fie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[8],f=r[9],c=r[10],v=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n-u*a,e[1]=o*n-f*a,e[2]=l*n-c*a,e[3]=s*n-v*a,e[8]=i*a+u*n,e[9]=o*a+f*n,e[10]=l*a+c*n,e[11]=s*a+v*n,e}});var YS=R((zke,VS)=>{VS.exports=Rie;function Rie(e,r,t){var a=Math.sin(t),n=Math.cos(t),i=r[0],o=r[1],l=r[2],s=r[3],u=r[4],f=r[5],c=r[6],v=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=i*n+u*a,e[1]=o*n+f*a,e[2]=l*n+c*a,e[3]=s*n+v*a,e[4]=u*n-i*a,e[5]=f*n-o*a,e[6]=c*n-l*a,e[7]=v*n-s*a,e}});var jS=R((Bke,WS)=>{WS.exports=Pie;function Pie(e,r,t){var a,n,i,o=t[0],l=t[1],s=t[2],u=Math.sqrt(o*o+l*l+s*s);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,l*=u,s*=u,a=Math.sin(r),n=Math.cos(r),i=1-n,e[0]=o*o*i+n,e[1]=l*o*i+s*a,e[2]=s*o*i-l*a,e[3]=0,e[4]=o*l*i-s*a,e[5]=l*l*i+n,e[6]=s*l*i+o*a,e[7]=0,e[8]=o*s*i+l*a,e[9]=l*s*i-o*a,e[10]=s*s*i+n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var ZS=R((Uke,XS)=>{XS.exports=Nie;function Nie(e,r,t){var a=r[0],n=r[1],i=r[2],o=r[3],l=a+a,s=n+n,u=i+i,f=a*l,c=a*s,v=a*u,d=n*s,p=n*u,g=i*u,m=o*l,b=o*s,_=o*u;return e[0]=1-(d+g),e[1]=c+_,e[2]=v-b,e[3]=0,e[4]=c-_,e[5]=1-(f+g),e[6]=p+m,e[7]=0,e[8]=v+b,e[9]=p-m,e[10]=1-(f+d),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var $S=R((Gke,JS)=>{JS.exports=Iie;function Iie(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var KS=R((Hke,QS)=>{QS.exports=Oie;function Oie(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var rk=R((Vke,ek)=>{ek.exports=zie;function zie(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ak=R((Yke,tk)=>{tk.exports=Bie;function Bie(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ik=R((Wke,nk)=>{nk.exports=Uie;function Uie(e,r){var t=Math.sin(r),a=Math.cos(r);return e[0]=a,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var R_=R((jke,ok)=>{ok.exports=Gie;function Gie(e,r){var t=r[0],a=r[1],n=r[2],i=r[3],o=t+t,l=a+a,s=n+n,u=t*o,f=a*o,c=a*l,v=n*o,d=n*l,p=n*s,g=i*o,m=i*l,b=i*s;return e[0]=1-c-p,e[1]=f+b,e[2]=v-m,e[3]=0,e[4]=f-b,e[5]=1-u-p,e[6]=d+g,e[7]=0,e[8]=v+m,e[9]=d-g,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var sk=R((Xke,lk)=>{lk.exports=Hie;function Hie(e,r,t,a,n,i,o){var l=1/(t-r),s=1/(n-a),u=1/(i-o);return e[0]=i*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i*2*s,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(n+a)*s,e[10]=(o+i)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*u,e[15]=0,e}});var fk=R((Zke,uk)=>{uk.exports=Vie;function Vie(e,r,t,a,n){var i=1/Math.tan(r/2),o=1/(a-n);return e[0]=i/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(n+a)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*n*a*o,e[15]=0,e}});var vk=R((Jke,ck)=>{ck.exports=Yie;function Yie(e,r,t,a){var n=Math.tan(r.upDegrees*Math.PI/180),i=Math.tan(r.downDegrees*Math.PI/180),o=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),s=2/(o+l),u=2/(n+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-l)*s*.5),e[9]=(n-i)*u*.5,e[10]=a/(t-a),e[11]=-1,e[12]=0,e[13]=0,e[14]=a*t/(t-a),e[15]=0,e}});var dk=R(($ke,hk)=>{hk.exports=Wie;function Wie(e,r,t,a,n,i,o){var l=1/(r-t),s=1/(a-n),u=1/(i-o);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(r+t)*l,e[13]=(n+a)*s,e[14]=(o+i)*u,e[15]=1,e}});var mk=R((Qke,pk)=>{var jie=F_();pk.exports=Xie;function Xie(e,r,t,a){var n,i,o,l,s,u,f,c,v,d,p=r[0],g=r[1],m=r[2],b=a[0],_=a[1],A=a[2],x=t[0],T=t[1],S=t[2];return Math.abs(p-x)<1e-6&&Math.abs(g-T)<1e-6&&Math.abs(m-S)<1e-6?jie(e):(f=p-x,c=g-T,v=m-S,d=1/Math.sqrt(f*f+c*c+v*v),f*=d,c*=d,v*=d,n=_*v-A*c,i=A*f-b*v,o=b*c-_*f,d=Math.sqrt(n*n+i*i+o*o),d?(d=1/d,n*=d,i*=d,o*=d):(n=0,i=0,o=0),l=c*o-v*i,s=v*n-f*o,u=f*i-c*n,d=Math.sqrt(l*l+s*s+u*u),d?(d=1/d,l*=d,s*=d,u*=d):(l=0,s=0,u=0),e[0]=n,e[1]=l,e[2]=f,e[3]=0,e[4]=i,e[5]=s,e[6]=c,e[7]=0,e[8]=o,e[9]=u,e[10]=v,e[11]=0,e[12]=-(n*p+i*g+o*m),e[13]=-(l*p+s*g+u*m),e[14]=-(f*p+c*g+v*m),e[15]=1,e)}});var gk=R((Kke,yk)=>{yk.exports=Zie;function Zie(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var P_=R((eCe,bk)=>{bk.exports={create:gS(),clone:xS(),copy:wS(),identity:F_(),transpose:MS(),invert:kS(),adjoint:ES(),determinant:DS(),multiply:FS(),translate:PS(),scale:IS(),rotate:zS(),rotateX:US(),rotateY:HS(),rotateZ:YS(),fromRotation:jS(),fromRotationTranslation:ZS(),fromScaling:$S(),fromTranslation:KS(),fromXRotation:rk(),fromYRotation:ak(),fromZRotation:ik(),fromQuat:R_(),frustum:sk(),perspective:fk(),perspectiveFromFieldOfView:vk(),ortho:dk(),lookAt:mk(),str:gk()}});var ng=R(dn=>{"use strict";var Jie=P_();dn.init2dArray=function(e,r){for(var t=new Array(e),a=0;a{"use strict";var $ie=ta(),xk=hc(),Qie=ng(),Kie=P_();function eoe(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function roe(e){var r=$ie.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function _k(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function toe(e,r){wk("global",e,r)}function wk(e,r,t){var a="plotly.js-style-"+e,n=document.getElementById(a);if(!(n&&n.matches(".no-inline-styles"))){n||(n=document.createElement("style"),n.setAttribute("id",a),n.appendChild(document.createTextNode("")),document.head.appendChild(n));var i=n.sheet;i?i.insertRule?i.insertRule(r+"{"+t+"}",0):i.addRule?i.addRule(r,t,0):xk.warn("addStyleRule failed"):xk.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function aoe(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&_k(t)}function noe(e,r,t,a,n,i){var o=a.split(":"),l=n.split(":"),s="data-btn-style-event-added";i||(i=document),i.querySelectorAll(e).forEach(function(u){u.getAttribute(s)||(u.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[o[0]]=o[1]:f.style[l[0]]=l[1])}),u.setAttribute(s,!0))})}function ioe(e){var r=Tk(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(a){var n=Ak(a);if(n){var i=Qie.convertCssMatrix(n);t=Kie.multiply(t,t,i)}}),t}function Ak(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(a){return+a})}function Tk(e){for(var r=[];ooe(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function ooe(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function loe(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}Mk.exports={getGraphDiv:eoe,isPlotDiv:roe,removeElement:_k,addStyleRule:toe,addRelatedStyleRule:wk,deleteRelatedStyleRule:aoe,setStyleOnHover:noe,getFullTransformMatrix:ioe,getElementTransformMatrix:Ak,getElementAndAncestors:Tk,equalDomRects:loe}});var a1=R((aCe,Sk)=>{"use strict";Sk.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var dl=R((nCe,Fk)=>{"use strict";var Ck=hn().extendFlat,soe=Ru(),Ek={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Lk={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},uoe=Ek.flags.slice().concat(["fullReplot"]),foe=Lk.flags.slice().concat("layoutReplot");Fk.exports={traces:Ek,layout:Lk,traceFlags:function(){return kk(uoe)},layoutFlags:function(){return kk(foe)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var a=t.split("+"),n=0;n{"use strict";N_.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};N_.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var I_=R((oCe,Rk)=>{"use strict";Rk.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var l0=R(ig=>{"use strict";var Pk=I_(),lCe=Pk.FORMAT_LINK,sCe=Pk.DATE_FORMAT_LINK;function O_(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var a=[],n=0;n{"use strict";function Ou(e,r){return r?r.d2l(e):e}function Nk(e,r){return r?r.l2d(e):e}function coe(e){return e.x0}function voe(e){return e.x1}function hoe(e){return e.y0}function doe(e){return e.y1}function Ik(e){return e.x0shift||0}function Ok(e){return e.x1shift||0}function zk(e){return e.y0shift||0}function Bk(e){return e.y1shift||0}function og(e,r){return Ou(e.x1,r)+Ok(e)-Ou(e.x0,r)-Ik(e)}function lg(e,r,t){return Ou(e.y1,t)+Bk(e)-Ou(e.y0,t)-zk(e)}function poe(e,r){return Math.abs(og(e,r))}function moe(e,r,t){return Math.abs(lg(e,r,t))}function yoe(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(og(e,r),2)+Math.pow(lg(e,r,t),2))}function goe(e,r){return Nk((Ou(e.x1,r)+Ok(e)+Ou(e.x0,r)+Ik(e))/2,r)}function boe(e,r,t){return Nk((Ou(e.y1,t)+Bk(e)+Ou(e.y0,t)+zk(e))/2,t)}function xoe(e,r,t){return e.type!=="line"?void 0:lg(e,r,t)/og(e,r)}Uk.exports={x0:coe,x1:voe,y0:hoe,y1:doe,slope:xoe,dx:og,dy:lg,width:poe,height:moe,length:yoe,xcenter:goe,ycenter:boe}});var Vk=R((cCe,Hk)=>{"use strict";var _oe=dl().overrideAll,dc=hl(),Gk=ci(),woe=Iu().dash,zu=hn().extendFlat,Aoe=l0().shapeTexttemplateAttrs,Toe=sg();Hk.exports=_oe({newshape:{visible:zu({},dc.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:zu({},dc.legend,{}),legendgroup:zu({},dc.legendgroup,{}),legendgrouptitle:{text:zu({},dc.legendgrouptitle.text,{}),font:Gk({})},legendrank:zu({},dc.legendrank,{}),legendwidth:zu({},dc.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:zu({},woe,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:zu({},dc.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Aoe({newshape:!0},{keys:Object.keys(Toe)}),font:Gk({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Wk=R((vCe,Yk)=>{"use strict";var Moe=Iu().dash,Soe=hn().extendFlat;Yk.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:Soe({},Moe,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var ug=R((hCe,jk)=>{"use strict";jk.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var s0=R((dCe,$k)=>{"use strict";var z_=ci(),koe=a1(),fg=Ql(),Xk=Vk(),Zk=Wk(),Coe=ug(),Jk=hn().extendFlat,cg=z_({editType:"calc"});cg.family.dflt='"Open Sans", verdana, arial, sans-serif';cg.size.dflt=12;cg.color.dflt=fg.defaultLine;$k.exports={font:cg,title:{text:{valType:"string",editType:"layoutstyle"},font:z_({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:z_({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Jk(Coe({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:fg.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:fg.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:fg.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:Xk.newshape,activeshape:Xk.activeshape,newselection:Zk.newselection,activeselection:Zk.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Jk({},koe.transition,{editType:"none"})}});var Qk=Qv(()=>{});var Eoe={};var Kk=Qv(()=>{Qk()});var Ct=R(Xt=>{"use strict";var u0=hc(),eC=ag(),rC=q_(),Loe=Ru(),Doe=t1().addStyleRule,tC=hn(),qoe=hl(),Foe=s0(),Roe=tC.extendFlat,B_=tC.extendDeepAll;Xt.modules={};Xt.allCategories={};Xt.allTypes=[];Xt.subplotsRegistry={};Xt.componentsRegistry={};Xt.layoutArrayContainers=[];Xt.layoutArrayRegexes=[];Xt.traceLayoutAttributes={};Xt.localeRegistry={};Xt.apiMethodRegistry={};Xt.collectableSubplotTypes=null;Xt.register=function(r){if(Xt.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var Boe=Kv().timeFormat,hC=ia(),U_=hc(),Uu=r0().mod,v0=_n(),Io=v0.BADNUM,no=v0.ONEDAY,n1=v0.ONEHOUR,Bu=v0.ONEMIN,c0=v0.ONESEC,i1=v0.EPOCHJD,Bs=Ct(),lC=Kv().utcFormat,Uoe=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Goe=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,sC=new Date().getFullYear()-70;function Us(e){return e&&Bs.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}pn.dateTick0=function(e,r){var t=Hoe(e,!!r);if(r<2)return t;var a=pn.dateTime2ms(t,e);return a+=no*(r-1),pn.ms2DateTime(a,0,e)};function Hoe(e,r){return Us(e)?r?Bs.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Bs.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}pn.dfltRange=function(e){return Us(e)?Bs.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};pn.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var hg,dg;pn.dateTime2ms=function(e,r){if(pn.isJSDate(e)){var t=e.getTimezoneOffset()*Bu,a=(e.getUTCMinutes()-e.getMinutes())*Bu+(e.getUTCSeconds()-e.getSeconds())*c0+(e.getUTCMilliseconds()-e.getMilliseconds());if(a){var n=3*Bu;t=t-n/2+Uu(a-t+n/2,n)}return e=Number(e)-t,e>=hg&&e<=dg?e:Io}if(typeof e!="string"&&typeof e!="number")return Io;e=String(e);var i=Us(r),o=e.charAt(0);i&&(o==="G"||o==="g")&&(e=e.substr(1),r="");var l=i&&r.substr(0,7)==="chinese",s=e.match(l?Goe:Uoe);if(!s)return Io;var u=s[1],f=s[3]||"1",c=Number(s[5]||1),v=Number(s[7]||0),d=Number(s[9]||0),p=Number(s[11]||0);if(i){if(u.length===2)return Io;u=Number(u);var g;try{var m=Bs.getComponentMethod("calendars","getCal")(r);if(l){var b=f.charAt(f.length-1)==="i";f=parseInt(f,10),g=m.newDate(u,m.toMonthIndex(u,f,b),c)}else g=m.newDate(u,Number(f),c)}catch(A){return Io}return g?(g.toJD()-i1)*no+v*n1+d*Bu+p*c0:Io}u.length===2?u=(Number(u)+2e3-sC)%100+sC:u=Number(u),f-=1;var _=new Date(Date.UTC(2e3,f,c,v,d));return _.setUTCFullYear(u),_.getUTCMonth()!==f||_.getUTCDate()!==c?Io:_.getTime()+p*c0};hg=pn.MIN_MS=pn.dateTime2ms("-9999");dg=pn.MAX_MS=pn.dateTime2ms("9999-12-31 23:59:59.9999");pn.isDateTime=function(e,r){return pn.dateTime2ms(e,r)!==Io};function f0(e,r){return String(e+Math.pow(10,r)).substr(1)}var vg=90*no,uC=3*n1,fC=5*Bu;pn.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=hg&&e<=dg))return Io;r||(r=0);var a=Math.floor(Uu(e+.05,1)*10),n=Math.round(e-a/10),i,o,l,s,u,f;if(Us(t)){var c=Math.floor(n/no)+i1,v=Math.floor(Uu(e,no));try{i=Bs.getComponentMethod("calendars","getCal")(t).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){i=lC("G%Y-%m-%d")(new Date(n))}if(i.charAt(0)==="-")for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;o=r=hg+no&&e<=dg-no))return Io;var r=Math.floor(Uu(e+.05,1)*10),t=new Date(Math.round(e-r/10)),a=Boe("%Y-%m-%d")(t),n=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return dC(a,n,i,o,l)};function dC(e,r,t,a,n){if((r||t||a||n)&&(e+=" "+f0(r,2)+":"+f0(t,2),(a||n)&&(e+=":"+f0(a,2),n))){for(var i=4;n%10===0;)i-=1,n/=10;e+="."+f0(n,i)}return e}pn.cleanDate=function(e,r,t){if(e===Io)return r;if(pn.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Us(t))return U_.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=pn.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!pn.isDateTime(e,t))return U_.error("unrecognized date",e),r;return e};var Voe=/%\d?f/g,Yoe=/%h/g,Woe={1:"1",2:"1",3:"2",4:"2"};function cC(e,r,t,a){e=e.replace(Voe,function(i){var o=Math.min(+i.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return l});var n=new Date(Math.floor(r+.05));if(e=e.replace(Yoe,function(){return Woe[t("%q")(n)]}),Us(a))try{e=Bs.getComponentMethod("calendars","worldCalFmt")(e,r,a)}catch(i){return"Invalid"}return t(e)(n)}var joe=[59,59.9,59.99,59.999,59.9999];function Xoe(e,r){var t=Uu(e+.05,no),a=f0(Math.floor(t/n1),2)+":"+f0(Uu(Math.floor(t/Bu),60),2);if(r!=="M"){hC(r)||(r=0);var n=Math.min(Uu(e/c0,60),joe[r]),i=(100+n).toFixed(r).substr(1);r>0&&(i=i.replace(/0+$/,"").replace(/[\.]$/,"")),a+=":"+i}return a}pn.formatDate=function(e,r,t,a,n,i){if(n=Us(n)&&n,!r)if(t==="y")r=i.year;else if(t==="m")r=i.month;else if(t==="d")r=i.dayMonth+` diff --git a/dist/plotly-gl3d.js b/dist/plotly-gl3d.js index 2409210dc80..22de6d06862 100644 --- a/dist/plotly-gl3d.js +++ b/dist/plotly-gl3d.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl3d) v3.0.3 +* plotly.js (gl3d) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-gl3d.min.js b/dist/plotly-gl3d.min.js index 784ded4c3f0..a224550f858 100644 --- a/dist/plotly-gl3d.min.js +++ b/dist/plotly-gl3d.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (gl3d - minified) v3.0.3 +* plotly.js (gl3d - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var ab=Object.defineProperty;var kB=Object.getOwnPropertyDescriptor;var SB=Object.getOwnPropertyNames;var CB=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var pe=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var EB=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of SB(r))!CB.call(e,a)&&a!==t&&ab(e,a,{get:()=>r[a],enumerable:!(n=kB(r,a))||n.enumerable});return e};var LB=e=>EB(ab({},"__esModule",{value:!0}),e);var pc=pe(ob=>{"use strict";ob.version="3.0.3"});var sb=pe((lb,gc)=>{(function(r,t,n){t[r]=t[r]||n(),typeof gc!="undefined"&&gc.exports&&(gc.exports=t[r])})("Promise",typeof window!="undefined"?window:lb,function(){"use strict";var r,t,n,a=Object.prototype.toString,o=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(k,S,x,T){return Object.defineProperty(k,S,{value:x,writable:!0,configurable:T!==!1})}}catch(m){r=function(S,x,T){return S[x]=T,S}}n=function(){var k,S,x;function T(d,_){this.fn=d,this.self=_,this.next=void 0}return{add:function(_,g){x=new T(_,g),S?S.next=x:k=x,S=x,x=void 0},drain:function(){var _=k;for(k=S=t=void 0;_;)_.fn.call(_.self),_=_.next}}}();function i(m,k){n.add(m,k),t||(t=o(n.drain))}function l(m){var k,S=typeof m;return m!=null&&(S=="object"||S=="function")&&(k=m.then),typeof k=="function"?k:!1}function u(){for(var m=0;m0&&i(u,S))}catch(x){v.call(new b(S),x)}}}function v(m){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=m,k.state=2,k.chain.length>0&&i(u,k))}function p(m,k,S,x){for(var T=0;T{(function(){var e={version:"3.8.2"},r=[].slice,t=function(C){return r.call(C)},n=self.document;function a(C){return C&&(C.ownerDocument||C.document||C).documentElement}function o(C){return C&&(C.ownerDocument&&C.ownerDocument.defaultView||C.document&&C||C.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(C){t=function(z){for(var B=z.length,V=new Array(B);B--;)V[B]=z[B];return V}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(C){var i=this.Element.prototype,l=i.setAttribute,u=i.setAttributeNS,s=this.CSSStyleDeclaration.prototype,f=s.setProperty;i.setAttribute=function(z,B){l.call(this,z,B+"")},i.setAttributeNS=function(z,B,V){u.call(this,z,B,V+"")},s.setProperty=function(z,B,V){f.call(this,z,B+"",V)}}e.ascending=v;function v(C,z){return Cz?1:C>=z?0:NaN}e.descending=function(C,z){return zC?1:z>=C?0:NaN},e.min=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BJ&&(W=J)}else{for(;++B=J){W=J;break}for(;++BJ&&(W=J)}return W},e.max=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BW&&(W=J)}else{for(;++B=J){W=J;break}for(;++BW&&(W=J)}return W},e.extent=function(C,z){var B=-1,V=C.length,W,J,le;if(arguments.length===1){for(;++B=J){W=le=J;break}for(;++BJ&&(W=J),le=J){W=le=J;break}for(;++BJ&&(W=J),le1)return le/(fe-1)},e.deviation=function(){var C=e.variance.apply(this,arguments);return C&&Math.sqrt(C)};function y(C){return{left:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)<0?V=J+1:W=J}return V},right:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)>0?W=J:V=J+1}return V}}}var w=y(v);e.bisectLeft=w.left,e.bisect=e.bisectRight=w.right,e.bisector=function(C){return y(C.length===1?function(z,B){return v(C(z),B)}:C)},e.shuffle=function(C,z,B){(V=arguments.length)<3&&(B=C.length,V<2&&(z=0));for(var V=B-z,W,J;V;)J=Math.random()*V--|0,W=C[V+z],C[V+z]=C[J+z],C[J+z]=W;return C},e.permute=function(C,z){for(var B=z.length,V=new Array(B);B--;)V[B]=C[z[B]];return V},e.pairs=function(C){for(var z=0,B=C.length-1,V,W=C[0],J=new Array(B<0?0:B);z=0;)for(le=C[z],B=le.length;--B>=0;)J[--W]=le[B];return J};var m=Math.abs;e.range=function(C,z,B){if(arguments.length<3&&(B=1,arguments.length<2&&(z=C,C=0)),(z-C)/B===1/0)throw new Error("infinite range");var V=[],W=k(m(B)),J=-1,le;if(C*=W,z*=W,B*=W,B<0)for(;(le=C+B*++J)>z;)V.push(le/W);else for(;(le=C+B*++J)=z.length)return W?W.call(C,fe):V?fe.sort(V):fe;for(var _e=-1,Ie=fe.length,Ne=z[xe++],$e,rr,qe,He=new x,Xe;++_e=z.length)return ie;var xe=[],_e=B[fe++];return ie.forEach(function(Ie,Ne){xe.push({key:Ie,values:le(Ne,fe)})}),_e?xe.sort(function(Ie,Ne){return _e(Ie.key,Ne.key)}):xe}return C.map=function(ie,fe){return J(fe,ie,0)},C.entries=function(ie){return le(J(e.map,ie,0),0)},C.key=function(ie){return z.push(ie),C},C.sortKeys=function(ie){return B[z.length-1]=ie,C},C.sortValues=function(ie){return V=ie,C},C.rollup=function(ie){return W=ie,C},C},e.set=function(C){var z=new D;if(C)for(var B=0,V=C.length;B=0&&(V=C.slice(B+1),C=C.slice(0,B)),C)return arguments.length<2?this[C].on(V):this[C].on(V,z);if(arguments.length===2){if(z==null)for(C in this)this.hasOwnProperty(C)&&this[C].on(V,null);return this}};function U(C){var z=[],B=new x;function V(){for(var W=z,J=-1,le=W.length,ie;++J=0&&(B=C.slice(0,z))!=="xmlns"&&(C=C.slice(z+1)),te.hasOwnProperty(B)?{space:te[B],local:C}:C}},ee.attr=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node();return C=e.ns.qualify(C),C.local?B.getAttributeNS(C.space,C.local):B.getAttribute(C)}for(z in C)this.each(ue(z,C[z]));return this}return this.each(ue(C,z))};function ue(C,z){C=e.ns.qualify(C);function B(){this.removeAttribute(C)}function V(){this.removeAttributeNS(C.space,C.local)}function W(){this.setAttribute(C,z)}function J(){this.setAttributeNS(C.space,C.local,z)}function le(){var fe=z.apply(this,arguments);fe==null?this.removeAttribute(C):this.setAttribute(C,fe)}function ie(){var fe=z.apply(this,arguments);fe==null?this.removeAttributeNS(C.space,C.local):this.setAttributeNS(C.space,C.local,fe)}return z==null?C.local?V:B:typeof z=="function"?C.local?ie:le:C.local?J:W}function de(C){return C.trim().replace(/\s+/g," ")}ee.classed=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node(),V=(C=Me(C)).length,W=-1;if(z=B.classList){for(;++W=0;)(J=B[V])&&(W&&W!==J.nextSibling&&W.parentNode.insertBefore(J,W),W=J);return this},ee.sort=function(C){C=Te.apply(this,arguments);for(var z=-1,B=this.length;++z=z&&(z=W+1);!(fe=le[z])&&++z0&&(C=C.slice(0,W));var le=be.get(C);le&&(C=le,J=ze);function ie(){var _e=this[V];_e&&(this.removeEventListener(C,_e,_e.$),delete this[V])}function fe(){var _e=J(z,t(arguments));ie.call(this),this.addEventListener(C,this[V]=_e,_e.$=B),_e._=z}function xe(){var _e=new RegExp("^__on([^.]+)"+e.requote(C)+"$"),Ie;for(var Ne in this)if(Ie=Ne.match(_e)){var $e=this[Ne];this.removeEventListener(Ie[1],$e,$e.$),delete this[Ne]}}return W?z?fe:ie:z?P:xe}var be=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&be.forEach(function(C){"on"+C in n&&be.remove(C)});function Se(C,z){return function(B){var V=e.event;e.event=B,z[0]=this.__data__;try{C.apply(this,z)}finally{e.event=V}}}function ze(C,z){var B=Se(C,z);return function(V){var W=this,J=V.relatedTarget;(!J||J!==W&&!(J.compareDocumentPosition(W)&8))&&B.call(W,V)}}var Fe,Ze=0;function Ye(C){var z=".dragsuppress-"+ ++Ze,B="click"+z,V=e.select(o(C)).on("touchmove"+z,X).on("dragstart"+z,X).on("selectstart"+z,X);if(Fe==null&&(Fe="onselectstart"in C?!1:F(C.style,"userSelect")),Fe){var W=a(C).style,J=W[Fe];W[Fe]="none"}return function(le){if(V.on(z,null),Fe&&(W[Fe]=J),le){var ie=function(){V.on(B,null)};V.on(B,function(){X(),ie()},!0),setTimeout(ie,0)}}}e.mouse=function(C){return We(C,j())};var Ge=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function We(C,z){z.changedTouches&&(z=z.changedTouches[0]);var B=C.ownerSVGElement||C;if(B.createSVGPoint){var V=B.createSVGPoint();if(Ge<0){var W=o(C);if(W.scrollX||W.scrollY){B=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var J=B[0][0].getScreenCTM();Ge=!(J.f||J.e),B.remove()}}return Ge?(V.x=z.pageX,V.y=z.pageY):(V.x=z.clientX,V.y=z.clientY),V=V.matrixTransform(C.getScreenCTM().inverse()),[V.x,V.y]}var le=C.getBoundingClientRect();return[z.clientX-le.left-C.clientLeft,z.clientY-le.top-C.clientTop]}e.touch=function(C,z,B){if(arguments.length<3&&(B=z,z=j().changedTouches),z){for(var V=0,W=z.length,J;V0?1:C<0?-1:0}function je(C,z,B){return(z[0]-C[0])*(B[1]-C[1])-(z[1]-C[1])*(B[0]-C[0])}function nr(C){return C>1?0:C<-1?Ve:Math.acos(C)}function hr(C){return C>1?K:C<-1?-K:Math.asin(C)}function wr(C){return((C=Math.exp(C))-1/C)/2}function Cr(C){return((C=Math.exp(C))+1/C)/2}function Tr(C){return((C=Math.exp(2*C))-1)/(C+1)}function Ar(C){return(C=Math.sin(C/2))*C}var ft=Math.SQRT2,Yr=2,mr=4;e.interpolateZoom=function(C,z){var B=C[0],V=C[1],W=C[2],J=z[0],le=z[1],ie=z[2],fe=J-B,xe=le-V,_e=fe*fe+xe*xe,Ie,Ne;if(_e0&&(vr=vr.transition().duration(le)),vr.call(tr.event)}function br(){He&&He.domain(qe.range().map(function(vr){return(vr-C.x)/C.k}).map(qe.invert)),er&&er.domain(Xe.range().map(function(vr){return(vr-C.y)/C.k}).map(Xe.invert))}function _r(vr){ie++||vr({type:"zoomstart"})}function qr(vr){br(),vr({type:"zoom",scale:C.k,translate:[C.x,C.y]})}function Mr(vr){--ie||(vr({type:"zoomend"}),B=null)}function Pr(){var vr=this,Or=rr.of(vr,arguments),Vr=0,st=e.select(o(vr)).on(xe,bn).on(_e,In),Pt=Ke(e.mouse(vr)),$t=Ye(vr);cc.call(vr),_r(Or);function bn(){Vr=1,yr(e.mouse(vr),Pt),qr(Or)}function In(){st.on(xe,null).on(_e,null),$t(Vr),Mr(Or)}}function lt(){var vr=this,Or=rr.of(vr,arguments),Vr={},st=0,Pt,$t=".zoom-"+e.event.changedTouches[0].identifier,bn="touchmove"+$t,In="touchend"+$t,Gn=[],Nn=e.select(vr),$n=Ye(vr);jn(),_r(Or),Nn.on(fe,null).on(Ne,jn);function An(){var Za=e.touches(vr);return Pt=C.k,Za.forEach(function(_n){_n.identifier in Vr&&(Vr[_n.identifier]=Ke(_n))}),Za}function jn(){var Za=e.event.target;e.select(Za).on(bn,ml).on(In,AB),Gn.push(Za);for(var _n=e.event.changedTouches,Ta=0,Mi=_n.length;Ta1){var xl=Aa[0],_o=Aa[1],dc=xl[0]-_o[0],nb=xl[1]-_o[1];st=dc*dc+nb*nb}}function ml(){var Za=e.touches(vr),_n,Ta,Mi,Aa;cc.call(vr);for(var As=0,xl=Za.length;As1?1:z,B=B<0?0:B>1?1:B,W=B<=.5?B*(1+z):B+z-B*z,V=2*B-W;function J(ie){return ie>360?ie-=360:ie<0&&(ie+=360),ie<60?V+(W-V)*ie/60:ie<180?W:ie<240?V+(W-V)*(240-ie)/60:V}function le(ie){return Math.round(J(ie)*255)}return new nn(le(C+120),le(C),le(C-120))}e.hcl=Lt;function Lt(C,z,B){return this instanceof Lt?(this.h=+C,this.c=+z,void(this.l=+B)):arguments.length<2?C instanceof Lt?new Lt(C.h,C.c,C.l):C instanceof Rt?xi(C.l,C.a,C.b):xi((C=gr((C=e.rgb(C)).r,C.g,C.b)).l,C.a,C.b):new Lt(C,z,B)}var yn=Lt.prototype=new xt;yn.brighter=function(C){return new Lt(this.h,this.c,Math.min(100,this.l+nt*(arguments.length?C:1)))},yn.darker=function(C){return new Lt(this.h,this.c,Math.max(0,this.l-nt*(arguments.length?C:1)))},yn.rgb=function(){return Gt(this.h,this.c,this.l).rgb()};function Gt(C,z,B){return isNaN(C)&&(C=0),isNaN(z)&&(z=0),new Rt(B,Math.cos(C*=ae)*z,Math.sin(C)*z)}e.lab=Rt;function Rt(C,z,B){return this instanceof Rt?(this.l=+C,this.a=+z,void(this.b=+B)):arguments.length<2?C instanceof Rt?new Rt(C.l,C.a,C.b):C instanceof Lt?Gt(C.h,C.c,C.l):gr((C=nn(C)).r,C.g,C.b):new Rt(C,z,B)}var nt=18,Ft=.95047,ha=1,Qn=1.08883,Fn=Rt.prototype=new xt;Fn.brighter=function(C){return new Rt(Math.min(100,this.l+nt*(arguments.length?C:1)),this.a,this.b)},Fn.darker=function(C){return new Rt(Math.max(0,this.l-nt*(arguments.length?C:1)),this.a,this.b)},Fn.rgb=function(){return wa(this.l,this.a,this.b)};function wa(C,z,B){var V=(C+16)/116,W=V+z/500,J=V-B/200;return W=Gi(W)*Ft,V=Gi(V)*ha,J=Gi(J)*Qn,new nn(Wi(3.2404542*W-1.5371385*V-.4985314*J),Wi(-.969266*W+1.8760108*V+.041556*J),Wi(.0556434*W-.2040259*V+1.0572252*J))}function xi(C,z,B){return C>0?new Lt(Math.atan2(B,z)*Re,Math.sqrt(z*z+B*B),C):new Lt(NaN,NaN,C)}function Gi(C){return C>.206893034?C*C*C:(C-4/29)/7.787037}function Yi(C){return C>.008856?Math.pow(C,1/3):7.787037*C+4/29}function Wi(C){return Math.round(255*(C<=.00304?12.92*C:1.055*Math.pow(C,1/2.4)-.055))}e.rgb=nn;function nn(C,z,B){return this instanceof nn?(this.r=~~C,this.g=~~z,void(this.b=~~B)):arguments.length<2?C instanceof nn?new nn(C.r,C.g,C.b):at(""+C,nn,Ot):new nn(C,z,B)}function xo(C){return new nn(C>>16,C>>8&255,C&255)}function bi(C){return xo(C)+""}var _i=nn.prototype=new xt;_i.brighter=function(C){C=Math.pow(.7,arguments.length?C:1);var z=this.r,B=this.g,V=this.b,W=30;return!z&&!B&&!V?new nn(W,W,W):(z&&z>4,V=V>>4|V,W=fe&240,W=W>>4|W,J=fe&15,J=J<<4|J):C.length===7&&(V=(fe&16711680)>>16,W=(fe&65280)>>8,J=fe&255)),z(V,W,J))}function vt(C,z,B){var V=Math.min(C/=255,z/=255,B/=255),W=Math.max(C,z,B),J=W-V,le,ie,fe=(W+V)/2;return J?(ie=fe<.5?J/(W+V):J/(2-W-V),C==W?le=(z-B)/J+(z0&&fe<1?0:le),new zr(le,ie,fe)}function gr(C,z,B){C=mn(C),z=mn(z),B=mn(B);var V=Yi((.4124564*C+.3575761*z+.1804375*B)/Ft),W=Yi((.2126729*C+.7151522*z+.072175*B)/ha),J=Yi((.0193339*C+.119192*z+.9503041*B)/Qn);return Rt(116*W-16,500*(V-W),200*(W-J))}function mn(C){return(C/=255)<=.04045?C/12.92:Math.pow((C+.055)/1.055,2.4)}function bt(C){var z=parseFloat(C);return C.charAt(C.length-1)==="%"?Math.round(z*2.55):z}var xn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});xn.forEach(function(C,z){xn.set(C,xo(z))});function Xr(C){return typeof C=="function"?C:function(){return C}}e.functor=Xr,e.xhr=Wa(N);function Wa(C){return function(z,B,V){return arguments.length===2&&typeof B=="function"&&(V=B,B=null),hl(z,B,C,V)}}function hl(C,z,B,V){var W={},J=e.dispatch("beforesend","progress","load","error"),le={},ie=new XMLHttpRequest,fe=null;self.XDomainRequest&&!("withCredentials"in ie)&&/^(http(s)?:)?\/\//.test(C)&&(ie=new XDomainRequest),"onload"in ie?ie.onload=ie.onerror=xe:ie.onreadystatechange=function(){ie.readyState>3&&xe()};function xe(){var _e=ie.status,Ie;if(!_e&&Sq(ie)||_e>=200&&_e<300||_e===304){try{Ie=B.call(W,ie)}catch(Ne){J.error.call(W,Ne);return}J.load.call(W,Ie)}else J.error.call(W,ie)}return ie.onprogress=function(_e){var Ie=e.event;e.event=_e;try{J.progress.call(W,ie)}finally{e.event=Ie}},W.header=function(_e,Ie){return _e=(_e+"").toLowerCase(),arguments.length<2?le[_e]:(Ie==null?delete le[_e]:le[_e]=Ie+"",W)},W.mimeType=function(_e){return arguments.length?(z=_e==null?null:_e+"",W):z},W.responseType=function(_e){return arguments.length?(fe=_e,W):fe},W.response=function(_e){return B=_e,W},["get","post"].forEach(function(_e){W[_e]=function(){return W.send.apply(W,[_e].concat(t(arguments)))}}),W.send=function(_e,Ie,Ne){if(arguments.length===2&&typeof Ie=="function"&&(Ne=Ie,Ie=null),ie.open(_e,C,!0),z!=null&&!("accept"in le)&&(le.accept=z+",*/*"),ie.setRequestHeader)for(var $e in le)ie.setRequestHeader($e,le[$e]);return z!=null&&ie.overrideMimeType&&ie.overrideMimeType(z),fe!=null&&(ie.responseType=fe),Ne!=null&&W.on("error",Ne).on("load",function(rr){Ne(null,rr)}),J.beforesend.call(W,ie),ie.send(Ie==null?null:Ie),W},W.abort=function(){return ie.abort(),W},e.rebind(W,J,"on"),V==null?W:W.get(kq(V))}function kq(C){return C.length===1?function(z,B){C(z==null?B:null)}:C}function Sq(C){var z=C.responseType;return z&&z!=="text"?C.response:C.responseText}e.dsv=function(C,z){var B=new RegExp('["'+C+` +"use strict";var Plotly=(()=>{var ab=Object.defineProperty;var kB=Object.getOwnPropertyDescriptor;var SB=Object.getOwnPropertyNames;var CB=Object.prototype.hasOwnProperty;var ib=(e,r)=>()=>(e&&(r=e(e=0)),r);var pe=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var EB=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of SB(r))!CB.call(e,a)&&a!==t&&ab(e,a,{get:()=>r[a],enumerable:!(n=kB(r,a))||n.enumerable});return e};var LB=e=>EB(ab({},"__esModule",{value:!0}),e);var pc=pe(ob=>{"use strict";ob.version="3.0.2"});var sb=pe((lb,gc)=>{(function(r,t,n){t[r]=t[r]||n(),typeof gc!="undefined"&&gc.exports&&(gc.exports=t[r])})("Promise",typeof window!="undefined"?window:lb,function(){"use strict";var r,t,n,a=Object.prototype.toString,o=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),r=function(k,S,x,T){return Object.defineProperty(k,S,{value:x,writable:!0,configurable:T!==!1})}}catch(m){r=function(S,x,T){return S[x]=T,S}}n=function(){var k,S,x;function T(d,_){this.fn=d,this.self=_,this.next=void 0}return{add:function(_,g){x=new T(_,g),S?S.next=x:k=x,S=x,x=void 0},drain:function(){var _=k;for(k=S=t=void 0;_;)_.fn.call(_.self),_=_.next}}}();function i(m,k){n.add(m,k),t||(t=o(n.drain))}function l(m){var k,S=typeof m;return m!=null&&(S=="object"||S=="function")&&(k=m.then),typeof k=="function"?k:!1}function u(){for(var m=0;m0&&i(u,S))}catch(x){v.call(new b(S),x)}}}function v(m){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=m,k.state=2,k.chain.length>0&&i(u,k))}function p(m,k,S,x){for(var T=0;T{(function(){var e={version:"3.8.2"},r=[].slice,t=function(C){return r.call(C)},n=self.document;function a(C){return C&&(C.ownerDocument||C.document||C).documentElement}function o(C){return C&&(C.ownerDocument&&C.ownerDocument.defaultView||C.document&&C||C.defaultView)}if(n)try{t(n.documentElement.childNodes)[0].nodeType}catch(C){t=function(z){for(var B=z.length,V=new Array(B);B--;)V[B]=z[B];return V}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(C){var i=this.Element.prototype,l=i.setAttribute,u=i.setAttributeNS,s=this.CSSStyleDeclaration.prototype,f=s.setProperty;i.setAttribute=function(z,B){l.call(this,z,B+"")},i.setAttributeNS=function(z,B,V){u.call(this,z,B,V+"")},s.setProperty=function(z,B,V){f.call(this,z,B+"",V)}}e.ascending=v;function v(C,z){return Cz?1:C>=z?0:NaN}e.descending=function(C,z){return zC?1:z>=C?0:NaN},e.min=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BJ&&(W=J)}else{for(;++B=J){W=J;break}for(;++BJ&&(W=J)}return W},e.max=function(C,z){var B=-1,V=C.length,W,J;if(arguments.length===1){for(;++B=J){W=J;break}for(;++BW&&(W=J)}else{for(;++B=J){W=J;break}for(;++BW&&(W=J)}return W},e.extent=function(C,z){var B=-1,V=C.length,W,J,le;if(arguments.length===1){for(;++B=J){W=le=J;break}for(;++BJ&&(W=J),le=J){W=le=J;break}for(;++BJ&&(W=J),le1)return le/(fe-1)},e.deviation=function(){var C=e.variance.apply(this,arguments);return C&&Math.sqrt(C)};function y(C){return{left:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)<0?V=J+1:W=J}return V},right:function(z,B,V,W){for(arguments.length<3&&(V=0),arguments.length<4&&(W=z.length);V>>1;C(z[J],B)>0?W=J:V=J+1}return V}}}var w=y(v);e.bisectLeft=w.left,e.bisect=e.bisectRight=w.right,e.bisector=function(C){return y(C.length===1?function(z,B){return v(C(z),B)}:C)},e.shuffle=function(C,z,B){(V=arguments.length)<3&&(B=C.length,V<2&&(z=0));for(var V=B-z,W,J;V;)J=Math.random()*V--|0,W=C[V+z],C[V+z]=C[J+z],C[J+z]=W;return C},e.permute=function(C,z){for(var B=z.length,V=new Array(B);B--;)V[B]=C[z[B]];return V},e.pairs=function(C){for(var z=0,B=C.length-1,V,W=C[0],J=new Array(B<0?0:B);z=0;)for(le=C[z],B=le.length;--B>=0;)J[--W]=le[B];return J};var m=Math.abs;e.range=function(C,z,B){if(arguments.length<3&&(B=1,arguments.length<2&&(z=C,C=0)),(z-C)/B===1/0)throw new Error("infinite range");var V=[],W=k(m(B)),J=-1,le;if(C*=W,z*=W,B*=W,B<0)for(;(le=C+B*++J)>z;)V.push(le/W);else for(;(le=C+B*++J)=z.length)return W?W.call(C,fe):V?fe.sort(V):fe;for(var _e=-1,Ie=fe.length,Ne=z[xe++],$e,rr,qe,He=new x,Xe;++_e=z.length)return ie;var xe=[],_e=B[fe++];return ie.forEach(function(Ie,Ne){xe.push({key:Ie,values:le(Ne,fe)})}),_e?xe.sort(function(Ie,Ne){return _e(Ie.key,Ne.key)}):xe}return C.map=function(ie,fe){return J(fe,ie,0)},C.entries=function(ie){return le(J(e.map,ie,0),0)},C.key=function(ie){return z.push(ie),C},C.sortKeys=function(ie){return B[z.length-1]=ie,C},C.sortValues=function(ie){return V=ie,C},C.rollup=function(ie){return W=ie,C},C},e.set=function(C){var z=new D;if(C)for(var B=0,V=C.length;B=0&&(V=C.slice(B+1),C=C.slice(0,B)),C)return arguments.length<2?this[C].on(V):this[C].on(V,z);if(arguments.length===2){if(z==null)for(C in this)this.hasOwnProperty(C)&&this[C].on(V,null);return this}};function U(C){var z=[],B=new x;function V(){for(var W=z,J=-1,le=W.length,ie;++J=0&&(B=C.slice(0,z))!=="xmlns"&&(C=C.slice(z+1)),te.hasOwnProperty(B)?{space:te[B],local:C}:C}},ee.attr=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node();return C=e.ns.qualify(C),C.local?B.getAttributeNS(C.space,C.local):B.getAttribute(C)}for(z in C)this.each(ue(z,C[z]));return this}return this.each(ue(C,z))};function ue(C,z){C=e.ns.qualify(C);function B(){this.removeAttribute(C)}function V(){this.removeAttributeNS(C.space,C.local)}function W(){this.setAttribute(C,z)}function J(){this.setAttributeNS(C.space,C.local,z)}function le(){var fe=z.apply(this,arguments);fe==null?this.removeAttribute(C):this.setAttribute(C,fe)}function ie(){var fe=z.apply(this,arguments);fe==null?this.removeAttributeNS(C.space,C.local):this.setAttributeNS(C.space,C.local,fe)}return z==null?C.local?V:B:typeof z=="function"?C.local?ie:le:C.local?J:W}function de(C){return C.trim().replace(/\s+/g," ")}ee.classed=function(C,z){if(arguments.length<2){if(typeof C=="string"){var B=this.node(),V=(C=Me(C)).length,W=-1;if(z=B.classList){for(;++W=0;)(J=B[V])&&(W&&W!==J.nextSibling&&W.parentNode.insertBefore(J,W),W=J);return this},ee.sort=function(C){C=Te.apply(this,arguments);for(var z=-1,B=this.length;++z=z&&(z=W+1);!(fe=le[z])&&++z0&&(C=C.slice(0,W));var le=be.get(C);le&&(C=le,J=ze);function ie(){var _e=this[V];_e&&(this.removeEventListener(C,_e,_e.$),delete this[V])}function fe(){var _e=J(z,t(arguments));ie.call(this),this.addEventListener(C,this[V]=_e,_e.$=B),_e._=z}function xe(){var _e=new RegExp("^__on([^.]+)"+e.requote(C)+"$"),Ie;for(var Ne in this)if(Ie=Ne.match(_e)){var $e=this[Ne];this.removeEventListener(Ie[1],$e,$e.$),delete this[Ne]}}return W?z?fe:ie:z?P:xe}var be=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&be.forEach(function(C){"on"+C in n&&be.remove(C)});function Se(C,z){return function(B){var V=e.event;e.event=B,z[0]=this.__data__;try{C.apply(this,z)}finally{e.event=V}}}function ze(C,z){var B=Se(C,z);return function(V){var W=this,J=V.relatedTarget;(!J||J!==W&&!(J.compareDocumentPosition(W)&8))&&B.call(W,V)}}var Fe,Ze=0;function Ye(C){var z=".dragsuppress-"+ ++Ze,B="click"+z,V=e.select(o(C)).on("touchmove"+z,X).on("dragstart"+z,X).on("selectstart"+z,X);if(Fe==null&&(Fe="onselectstart"in C?!1:F(C.style,"userSelect")),Fe){var W=a(C).style,J=W[Fe];W[Fe]="none"}return function(le){if(V.on(z,null),Fe&&(W[Fe]=J),le){var ie=function(){V.on(B,null)};V.on(B,function(){X(),ie()},!0),setTimeout(ie,0)}}}e.mouse=function(C){return We(C,j())};var Ge=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function We(C,z){z.changedTouches&&(z=z.changedTouches[0]);var B=C.ownerSVGElement||C;if(B.createSVGPoint){var V=B.createSVGPoint();if(Ge<0){var W=o(C);if(W.scrollX||W.scrollY){B=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var J=B[0][0].getScreenCTM();Ge=!(J.f||J.e),B.remove()}}return Ge?(V.x=z.pageX,V.y=z.pageY):(V.x=z.clientX,V.y=z.clientY),V=V.matrixTransform(C.getScreenCTM().inverse()),[V.x,V.y]}var le=C.getBoundingClientRect();return[z.clientX-le.left-C.clientLeft,z.clientY-le.top-C.clientTop]}e.touch=function(C,z,B){if(arguments.length<3&&(B=z,z=j().changedTouches),z){for(var V=0,W=z.length,J;V0?1:C<0?-1:0}function je(C,z,B){return(z[0]-C[0])*(B[1]-C[1])-(z[1]-C[1])*(B[0]-C[0])}function nr(C){return C>1?0:C<-1?Ve:Math.acos(C)}function hr(C){return C>1?K:C<-1?-K:Math.asin(C)}function wr(C){return((C=Math.exp(C))-1/C)/2}function Cr(C){return((C=Math.exp(C))+1/C)/2}function Tr(C){return((C=Math.exp(2*C))-1)/(C+1)}function Ar(C){return(C=Math.sin(C/2))*C}var ft=Math.SQRT2,Yr=2,mr=4;e.interpolateZoom=function(C,z){var B=C[0],V=C[1],W=C[2],J=z[0],le=z[1],ie=z[2],fe=J-B,xe=le-V,_e=fe*fe+xe*xe,Ie,Ne;if(_e0&&(vr=vr.transition().duration(le)),vr.call(tr.event)}function br(){He&&He.domain(qe.range().map(function(vr){return(vr-C.x)/C.k}).map(qe.invert)),er&&er.domain(Xe.range().map(function(vr){return(vr-C.y)/C.k}).map(Xe.invert))}function _r(vr){ie++||vr({type:"zoomstart"})}function qr(vr){br(),vr({type:"zoom",scale:C.k,translate:[C.x,C.y]})}function Mr(vr){--ie||(vr({type:"zoomend"}),B=null)}function Pr(){var vr=this,Or=rr.of(vr,arguments),Vr=0,st=e.select(o(vr)).on(xe,bn).on(_e,In),Pt=Ke(e.mouse(vr)),$t=Ye(vr);cc.call(vr),_r(Or);function bn(){Vr=1,yr(e.mouse(vr),Pt),qr(Or)}function In(){st.on(xe,null).on(_e,null),$t(Vr),Mr(Or)}}function lt(){var vr=this,Or=rr.of(vr,arguments),Vr={},st=0,Pt,$t=".zoom-"+e.event.changedTouches[0].identifier,bn="touchmove"+$t,In="touchend"+$t,Gn=[],Nn=e.select(vr),$n=Ye(vr);jn(),_r(Or),Nn.on(fe,null).on(Ne,jn);function An(){var Za=e.touches(vr);return Pt=C.k,Za.forEach(function(_n){_n.identifier in Vr&&(Vr[_n.identifier]=Ke(_n))}),Za}function jn(){var Za=e.event.target;e.select(Za).on(bn,ml).on(In,AB),Gn.push(Za);for(var _n=e.event.changedTouches,Ta=0,Mi=_n.length;Ta1){var xl=Aa[0],_o=Aa[1],dc=xl[0]-_o[0],nb=xl[1]-_o[1];st=dc*dc+nb*nb}}function ml(){var Za=e.touches(vr),_n,Ta,Mi,Aa;cc.call(vr);for(var As=0,xl=Za.length;As1?1:z,B=B<0?0:B>1?1:B,W=B<=.5?B*(1+z):B+z-B*z,V=2*B-W;function J(ie){return ie>360?ie-=360:ie<0&&(ie+=360),ie<60?V+(W-V)*ie/60:ie<180?W:ie<240?V+(W-V)*(240-ie)/60:V}function le(ie){return Math.round(J(ie)*255)}return new nn(le(C+120),le(C),le(C-120))}e.hcl=Lt;function Lt(C,z,B){return this instanceof Lt?(this.h=+C,this.c=+z,void(this.l=+B)):arguments.length<2?C instanceof Lt?new Lt(C.h,C.c,C.l):C instanceof Rt?xi(C.l,C.a,C.b):xi((C=gr((C=e.rgb(C)).r,C.g,C.b)).l,C.a,C.b):new Lt(C,z,B)}var yn=Lt.prototype=new xt;yn.brighter=function(C){return new Lt(this.h,this.c,Math.min(100,this.l+nt*(arguments.length?C:1)))},yn.darker=function(C){return new Lt(this.h,this.c,Math.max(0,this.l-nt*(arguments.length?C:1)))},yn.rgb=function(){return Gt(this.h,this.c,this.l).rgb()};function Gt(C,z,B){return isNaN(C)&&(C=0),isNaN(z)&&(z=0),new Rt(B,Math.cos(C*=ae)*z,Math.sin(C)*z)}e.lab=Rt;function Rt(C,z,B){return this instanceof Rt?(this.l=+C,this.a=+z,void(this.b=+B)):arguments.length<2?C instanceof Rt?new Rt(C.l,C.a,C.b):C instanceof Lt?Gt(C.h,C.c,C.l):gr((C=nn(C)).r,C.g,C.b):new Rt(C,z,B)}var nt=18,Ft=.95047,ha=1,Qn=1.08883,Fn=Rt.prototype=new xt;Fn.brighter=function(C){return new Rt(Math.min(100,this.l+nt*(arguments.length?C:1)),this.a,this.b)},Fn.darker=function(C){return new Rt(Math.max(0,this.l-nt*(arguments.length?C:1)),this.a,this.b)},Fn.rgb=function(){return wa(this.l,this.a,this.b)};function wa(C,z,B){var V=(C+16)/116,W=V+z/500,J=V-B/200;return W=Gi(W)*Ft,V=Gi(V)*ha,J=Gi(J)*Qn,new nn(Wi(3.2404542*W-1.5371385*V-.4985314*J),Wi(-.969266*W+1.8760108*V+.041556*J),Wi(.0556434*W-.2040259*V+1.0572252*J))}function xi(C,z,B){return C>0?new Lt(Math.atan2(B,z)*Re,Math.sqrt(z*z+B*B),C):new Lt(NaN,NaN,C)}function Gi(C){return C>.206893034?C*C*C:(C-4/29)/7.787037}function Yi(C){return C>.008856?Math.pow(C,1/3):7.787037*C+4/29}function Wi(C){return Math.round(255*(C<=.00304?12.92*C:1.055*Math.pow(C,1/2.4)-.055))}e.rgb=nn;function nn(C,z,B){return this instanceof nn?(this.r=~~C,this.g=~~z,void(this.b=~~B)):arguments.length<2?C instanceof nn?new nn(C.r,C.g,C.b):at(""+C,nn,Ot):new nn(C,z,B)}function xo(C){return new nn(C>>16,C>>8&255,C&255)}function bi(C){return xo(C)+""}var _i=nn.prototype=new xt;_i.brighter=function(C){C=Math.pow(.7,arguments.length?C:1);var z=this.r,B=this.g,V=this.b,W=30;return!z&&!B&&!V?new nn(W,W,W):(z&&z>4,V=V>>4|V,W=fe&240,W=W>>4|W,J=fe&15,J=J<<4|J):C.length===7&&(V=(fe&16711680)>>16,W=(fe&65280)>>8,J=fe&255)),z(V,W,J))}function vt(C,z,B){var V=Math.min(C/=255,z/=255,B/=255),W=Math.max(C,z,B),J=W-V,le,ie,fe=(W+V)/2;return J?(ie=fe<.5?J/(W+V):J/(2-W-V),C==W?le=(z-B)/J+(z0&&fe<1?0:le),new zr(le,ie,fe)}function gr(C,z,B){C=mn(C),z=mn(z),B=mn(B);var V=Yi((.4124564*C+.3575761*z+.1804375*B)/Ft),W=Yi((.2126729*C+.7151522*z+.072175*B)/ha),J=Yi((.0193339*C+.119192*z+.9503041*B)/Qn);return Rt(116*W-16,500*(V-W),200*(W-J))}function mn(C){return(C/=255)<=.04045?C/12.92:Math.pow((C+.055)/1.055,2.4)}function bt(C){var z=parseFloat(C);return C.charAt(C.length-1)==="%"?Math.round(z*2.55):z}var xn=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});xn.forEach(function(C,z){xn.set(C,xo(z))});function Xr(C){return typeof C=="function"?C:function(){return C}}e.functor=Xr,e.xhr=Wa(N);function Wa(C){return function(z,B,V){return arguments.length===2&&typeof B=="function"&&(V=B,B=null),hl(z,B,C,V)}}function hl(C,z,B,V){var W={},J=e.dispatch("beforesend","progress","load","error"),le={},ie=new XMLHttpRequest,fe=null;self.XDomainRequest&&!("withCredentials"in ie)&&/^(http(s)?:)?\/\//.test(C)&&(ie=new XDomainRequest),"onload"in ie?ie.onload=ie.onerror=xe:ie.onreadystatechange=function(){ie.readyState>3&&xe()};function xe(){var _e=ie.status,Ie;if(!_e&&Sq(ie)||_e>=200&&_e<300||_e===304){try{Ie=B.call(W,ie)}catch(Ne){J.error.call(W,Ne);return}J.load.call(W,Ie)}else J.error.call(W,ie)}return ie.onprogress=function(_e){var Ie=e.event;e.event=_e;try{J.progress.call(W,ie)}finally{e.event=Ie}},W.header=function(_e,Ie){return _e=(_e+"").toLowerCase(),arguments.length<2?le[_e]:(Ie==null?delete le[_e]:le[_e]=Ie+"",W)},W.mimeType=function(_e){return arguments.length?(z=_e==null?null:_e+"",W):z},W.responseType=function(_e){return arguments.length?(fe=_e,W):fe},W.response=function(_e){return B=_e,W},["get","post"].forEach(function(_e){W[_e]=function(){return W.send.apply(W,[_e].concat(t(arguments)))}}),W.send=function(_e,Ie,Ne){if(arguments.length===2&&typeof Ie=="function"&&(Ne=Ie,Ie=null),ie.open(_e,C,!0),z!=null&&!("accept"in le)&&(le.accept=z+",*/*"),ie.setRequestHeader)for(var $e in le)ie.setRequestHeader($e,le[$e]);return z!=null&&ie.overrideMimeType&&ie.overrideMimeType(z),fe!=null&&(ie.responseType=fe),Ne!=null&&W.on("error",Ne).on("load",function(rr){Ne(null,rr)}),J.beforesend.call(W,ie),ie.send(Ie==null?null:Ie),W},W.abort=function(){return ie.abort(),W},e.rebind(W,J,"on"),V==null?W:W.get(kq(V))}function kq(C){return C.length===1?function(z,B){C(z==null?B:null)}:C}function Sq(C){var z=C.responseType;return z&&z!=="text"?C.response:C.responseText}e.dsv=function(C,z){var B=new RegExp('["'+C+` ]`),V=C.charCodeAt(0);function W(xe,_e,Ie){arguments.length<3&&(Ie=_e,_e=null);var Ne=hl(xe,z,_e==null?J:le(_e),Ie);return Ne.row=function($e){return arguments.length?Ne.response((_e=$e)==null?J:le($e)):_e},Ne}function J(xe){return W.parse(xe.responseText)}function le(xe){return function(_e){return W.parse(_e.responseText,xe)}}W.parse=function(xe,_e){var Ie;return W.parseRows(xe,function(Ne,$e){if(Ie)return Ie(Ne,$e-1);var rr=function(qe){for(var He={},Xe=Ne.length,er=0;er=rr)return Ne;if(er)return er=!1,Ie;var or=qe;if(xe.charCodeAt(or)===34){for(var dr=or;dr++24?(isFinite(z)&&(clearTimeout(J0),J0=setTimeout(Rd,z)),Z0=0):(Z0=1,V5(Rd))}e.timer.flush=function(){G5(),Y5()};function G5(){for(var C=Date.now(),z=W0;z;)C>=z.t&&z.c(C-z.t)&&(z.c=null),z=z.n;return C}function Y5(){for(var C,z=W0,B=1/0;z;)z.c?(z.t=0;--ie)qe.push(W[xe[Ie[ie]][2]]);for(ie=+$e;ie1&&je(C[B[V-2]],C[B[V-1]],C[W])<=0;)--V;B[V++]=W}return B.slice(0,V)}function Cq(C,z){return C[0]-z[0]||C[1]-z[1]}e.geom.polygon=function(C){return q(C,Q0),C};var Q0=e.geom.polygon.prototype=[];Q0.area=function(){for(var C=-1,z=this.length,B,V=this[z-1],W=0;++CPe)ie=ie.L;else if(le=z-Dq(ie,B),le>Pe){if(!ie.R){V=ie;break}ie=ie.R}else{J>-Pe?(V=ie.P,W=ie):le>-Pe?(V=ie,W=ie.N):V=W=ie;break}var fe=K5(C);if(_s.insert(V,fe),!(!V&&!W)){if(V===W){Ms(V),W=K5(V.site),_s.insert(fe,W),fe.edge=W.edge=Ku(V.site,fe.site),ws(V),ws(W);return}if(!W){fe.edge=Ku(V.site,fe.site);return}Ms(V),Ms(W);var xe=V.site,_e=xe.x,Ie=xe.y,Ne=C.x-_e,$e=C.y-Ie,rr=W.site,qe=rr.x-_e,He=rr.y-Ie,Xe=2*(Ne*He-$e*qe),er=Ne*Ne+$e*$e,tr=qe*qe+He*He,Ke={x:(He*er-$e*tr)/Xe+_e,y:(Ne*tr-qe*er)/Xe+Ie};$0(W.edge,xe,rr,Ke),fe.edge=Ku(xe,C,null,Ke),W.edge=Ku(C,rr,null,Ke),ws(V),ws(W)}}function Q5(C,z){var B=C.site,V=B.x,W=B.y,J=W-z;if(!J)return V;var le=C.P;if(!le)return-1/0;B=le.site;var ie=B.x,fe=B.y,xe=fe-z;if(!xe)return ie;var _e=ie-V,Ie=1/J-1/xe,Ne=_e/xe;return Ie?(-Ne+Math.sqrt(Ne*Ne-2*Ie*(_e*_e/(-2*xe)-fe+xe/2+W-J/2)))/Ie+V:(V+ie)/2}function Dq(C,z){var B=C.N;if(B)return Q5(B,z);var V=C.site;return V.y===z?V.x:1/0}function $5(C){this.site=C,this.edges=[]}$5.prototype.prepare=function(){for(var C=this.edges,z=C.length,B;z--;)B=C[z].edge,(!B.b||!B.a)&&C.splice(z,1);return C.sort(j5),C.length};function Pq(C){for(var z=C[0][0],B=C[1][0],V=C[0][1],W=C[1][1],J,le,ie,fe,xe=dl,_e=xe.length,Ie,Ne,$e,rr,qe,He;_e--;)if(Ie=xe[_e],!(!Ie||!Ie.prepare()))for($e=Ie.edges,rr=$e.length,Ne=0;NePe||m(fe-le)>Pe)&&($e.splice(Ne,0,new j0(qq(Ie.site,He,m(ie-z)Pe?{x:z,y:m(J-z)Pe?{x:m(le-W)Pe?{x:B,y:m(J-B)Pe?{x:m(le-V)=-Qe)){var Ne=fe*fe+xe*xe,$e=_e*_e+He*He,rr=(He*Ne-xe*$e)/Ie,qe=(fe*$e-_e*Ne)/Ie,He=qe+ie,Xe=J5.pop()||new Fq;Xe.arc=C,Xe.site=W,Xe.x=rr+le,Xe.y=He+Math.sqrt(rr*rr+qe*qe),Xe.cy=He,C.circle=Xe;for(var er=null,tr=Ju._;tr;)if(Xe.y0)){if(qe/=$e,$e<0){if(qe0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}if(qe=B-ie,!(!$e&&qe<0)){if(qe/=$e,$e<0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}else if($e>0){if(qe0)){if(qe/=rr,rr<0){if(qe0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}if(qe=V-fe,!(!rr&&qe<0)){if(qe/=rr,rr<0){if(qe>Ne)return;qe>Ie&&(Ie=qe)}else if(rr>0){if(qe0&&(W.a={x:ie+Ie*$e,y:fe+Ie*rr}),Ne<1&&(W.b={x:ie+Ne*$e,y:fe+Ne*rr}),W}}}}}}function Nq(C){for(var z=bs,B=Iq(C[0][0],C[0][1],C[1][0],C[1][1]),V=z.length,W;V--;)W=z[V],(!zq(W,C)||!B(W)||m(W.a.x-W.b.x)=J)return;if(_e>Ne){if(!V)V={x:rr,y:le};else if(V.y>=ie)return;B={x:rr,y:ie}}else{if(!V)V={x:rr,y:ie};else if(V.y1)if(_e>Ne){if(!V)V={x:(le-Xe)/He,y:le};else if(V.y>=ie)return;B={x:(ie-Xe)/He,y:ie}}else{if(!V)V={x:(ie-Xe)/He,y:ie};else if(V.y=J)return;B={x:J,y:He*J+Xe}}else{if(!V)V={x:J,y:He*J+Xe};else if(V.x=_e&&Xe.x<=Ne&&Xe.y>=Ie&&Xe.y<=$e?[[_e,$e],[Ne,$e],[Ne,Ie],[_e,Ie]]:[];er.point=fe[qe]}),xe}function ie(fe){return fe.map(function(xe,_e){return{x:Math.round(V(xe,_e)/Pe)*Pe,y:Math.round(W(xe,_e)/Pe)*Pe,i:_e}})}return le.links=function(fe){return zd(ie(fe)).edges.filter(function(xe){return xe.l&&xe.r}).map(function(xe){return{source:fe[xe.l.i],target:fe[xe.r.i]}})},le.triangles=function(fe){var xe=[];return zd(ie(fe)).cells.forEach(function(_e,Ie){for(var Ne=_e.site,$e=_e.edges.sort(j5),rr=-1,qe=$e.length,He,Xe,er=$e[qe-1].edge,tr=er.l===Ne?er.r:er.l;++rrtr&&(tr=_e.x),_e.y>Ke&&(Ke=_e.y),$e.push(_e.x),rr.push(_e.y);else for(qe=0;qetr&&(tr=or),dr>Ke&&(Ke=dr),$e.push(or),rr.push(dr)}var yr=tr-Xe,pr=Ke-er;yr>pr?Ke=er+yr:tr=Xe+pr;function br(Mr,Pr,lt,Bt,dt,vr,Or,Vr){if(!(isNaN(lt)||isNaN(Bt)))if(Mr.leaf){var st=Mr.x,Pt=Mr.y;if(st!=null)if(m(st-lt)+m(Pt-Bt)<.01)_r(Mr,Pr,lt,Bt,dt,vr,Or,Vr);else{var $t=Mr.point;Mr.x=Mr.y=Mr.point=null,_r(Mr,$t,st,Pt,dt,vr,Or,Vr),_r(Mr,Pr,lt,Bt,dt,vr,Or,Vr)}else Mr.x=lt,Mr.y=Bt,Mr.point=Pr}else _r(Mr,Pr,lt,Bt,dt,vr,Or,Vr)}function _r(Mr,Pr,lt,Bt,dt,vr,Or,Vr){var st=(dt+Or)*.5,Pt=(vr+Vr)*.5,$t=lt>=st,bn=Bt>=Pt,In=bn<<1|$t;Mr.leaf=!1,Mr=Mr.nodes[In]||(Mr.nodes[In]=tx()),$t?dt=st:Or=st,bn?vr=Pt:Vr=Pt,br(Mr,Pr,lt,Bt,dt,vr,Or,Vr)}var qr=tx();if(qr.add=function(Mr){br(qr,Mr,+Ie(Mr,++qe),+Ne(Mr,qe),Xe,er,tr,Ke)},qr.visit=function(Mr){ju(Mr,qr,Xe,er,tr,Ke)},qr.find=function(Mr){return Vq(qr,Mr[0],Mr[1],Xe,er,tr,Ke)},qe=-1,z==null){for(;++qeJ||Ne>le||$e=or,pr=B>=dr,br=pr<<1|yr,_r=br+4;br<_r;++br)if(_e=Ke[br&3])switch(br&3){case 0:xe(_e,Ie,Ne,or,dr);break;case 1:xe(_e,or,Ne,$e,dr);break;case 2:xe(_e,Ie,dr,or,rr);break;case 3:xe(_e,or,dr,$e,rr);break}}}(C,V,W,J,le),fe}e.interpolateRgb=qd;function qd(C,z){C=e.rgb(C),z=e.rgb(z);var B=C.r,V=C.g,W=C.b,J=z.r-B,le=z.g-V,ie=z.b-W;return function(fe){return"#"+kr(Math.round(B+J*fe))+kr(Math.round(V+le*fe))+kr(Math.round(W+ie*fe))}}e.interpolateObject=nx;function nx(C,z){var B={},V={},W;for(W in C)W in z?B[W]=pl(C[W],z[W]):V[W]=C[W];for(W in z)W in C||(V[W]=z[W]);return function(J){for(W in B)V[W]=B[W](J);return V}}e.interpolateNumber=Xi;function Xi(C,z){return C=+C,z=+z,function(B){return C*(1-B)+z*B}}e.interpolateString=ax;function ax(C,z){var B=Od.lastIndex=Bd.lastIndex=0,V,W,J,le=-1,ie=[],fe=[];for(C=C+"",z=z+"";(V=Od.exec(C))&&(W=Bd.exec(z));)(J=W.index)>B&&(J=z.slice(B,J),ie[le]?ie[le]+=J:ie[++le]=J),(V=V[0])===(W=W[0])?ie[le]?ie[le]+=W:ie[++le]=W:(ie[++le]=null,fe.push({i:le,x:Xi(V,W)})),B=Bd.lastIndex;return B=0&&!(V=e.interpolators[B](C,z)););return V}e.interpolators=[function(C,z){var B=typeof z;return(B==="string"?xn.has(z.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(z)?qd:ax:z instanceof xt?qd:Array.isArray(z)?tc:B==="object"&&isNaN(z)?nx:Xi)(C,z)}],e.interpolateArray=tc;function tc(C,z){var B=[],V=[],W=C.length,J=z.length,le=Math.min(C.length,z.length),ie;for(ie=0;ie=0?C.slice(0,z):C,V=z>=0?C.slice(z+1):"in";return B=Gq.get(B)||ix,V=Yq.get(V)||N,Wq(V(B.apply(null,r.call(arguments,1))))};function Wq(C){return function(z){return z<=0?0:z>=1?1:C(z)}}function ox(C){return function(z){return 1-C(1-z)}}function lx(C){return function(z){return .5*(z<.5?C(2*z):2-C(2-2*z))}}function Xq(C){return C*C}function Zq(C){return C*C*C}function Jq(C){if(C<=0)return 0;if(C>=1)return 1;var z=C*C,B=z*C;return 4*(C<.5?B:3*(C-z)+B-.75)}function Kq(C){return function(z){return Math.pow(z,C)}}function Qq(C){return 1-Math.cos(C*K)}function $q(C){return Math.pow(2,10*(C-1))}function jq(C){return 1-Math.sqrt(1-C*C)}function eO(C,z){var B;return arguments.length<2&&(z=.45),arguments.length?B=z/ar*Math.asin(1/C):(C=1,B=z/4),function(V){return 1+C*Math.pow(2,-10*V)*Math.sin((V-B)*ar/z)}}function rO(C){return C||(C=1.70158),function(z){return z*z*((C+1)*z-C)}}function tO(C){return C<1/2.75?7.5625*C*C:C<2/2.75?7.5625*(C-=1.5/2.75)*C+.75:C<2.5/2.75?7.5625*(C-=2.25/2.75)*C+.9375:7.5625*(C-=2.625/2.75)*C+.984375}e.interpolateHcl=nO;function nO(C,z){C=e.hcl(C),z=e.hcl(z);var B=C.h,V=C.c,W=C.l,J=z.h-B,le=z.c-V,ie=z.l-W;return isNaN(le)&&(le=0,V=isNaN(V)?z.c:V),isNaN(J)?(J=0,B=isNaN(B)?z.h:B):J>180?J-=360:J<-180&&(J+=360),function(fe){return Gt(B+J*fe,V+le*fe,W+ie*fe)+""}}e.interpolateHsl=aO;function aO(C,z){C=e.hsl(C),z=e.hsl(z);var B=C.h,V=C.s,W=C.l,J=z.h-B,le=z.s-V,ie=z.l-W;return isNaN(le)&&(le=0,V=isNaN(V)?z.s:V),isNaN(J)?(J=0,B=isNaN(B)?z.h:B):J>180?J-=360:J<-180&&(J+=360),function(fe){return Ot(B+J*fe,V+le*fe,W+ie*fe)+""}}e.interpolateLab=iO;function iO(C,z){C=e.lab(C),z=e.lab(z);var B=C.l,V=C.a,W=C.b,J=z.l-B,le=z.a-V,ie=z.b-W;return function(fe){return wa(B+J*fe,V+le*fe,W+ie*fe)+""}}e.interpolateRound=sx;function sx(C,z){return z-=C,function(B){return Math.round(C+z*B)}}e.transform=function(C){var z=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(B){if(B!=null){z.setAttribute("transform",B);var V=z.transform.baseVal.consolidate()}return new ux(V?V.matrix:lO)})(C)};function ux(C){var z=[C.a,C.b],B=[C.c,C.d],V=cx(z),W=fx(z,B),J=cx(oO(B,z,-W))||0;z[0]*B[1]180?z+=360:z-C>180&&(C+=360),V.push({i:B.push(Ts(B)+"rotate(",null,")")-2,x:Xi(C,z)})):z&&B.push(Ts(B)+"rotate("+z+")")}function fO(C,z,B,V){C!==z?V.push({i:B.push(Ts(B)+"skewX(",null,")")-2,x:Xi(C,z)}):z&&B.push(Ts(B)+"skewX("+z+")")}function cO(C,z,B,V){if(C[0]!==z[0]||C[1]!==z[1]){var W=B.push(Ts(B)+"scale(",null,",",null,")");V.push({i:W-4,x:Xi(C[0],z[0])},{i:W-2,x:Xi(C[1],z[1])})}else(z[0]!==1||z[1]!==1)&&B.push(Ts(B)+"scale("+z+")")}function vx(C,z){var B=[],V=[];return C=e.transform(C),z=e.transform(z),sO(C.translate,z.translate,B,V),uO(C.rotate,z.rotate,B,V),fO(C.skew,z.skew,B,V),cO(C.scale,z.scale,B,V),C=z=null,function(W){for(var J=-1,le=V.length,ie;++J0?J=Ke:(B.c=null,B.t=NaN,B=null,z.end({type:"end",alpha:J=0})):Ke>0&&(z.start({type:"start",alpha:J=Ke}),B=K0(C.tick)),C):J},C.start=function(){var Ke,or=$e.length,dr=rr.length,yr=V[0],pr=V[1],br,_r;for(Ke=0;Ke=0;)J.push(_e=xe[fe]),_e.parent=ie,_e.depth=ie.depth+1;B&&(ie.value=0),ie.children=xe}else B&&(ie.value=+B.call(V,ie,ie.depth)||0),delete ie.children;return wi(W,function(Ie){var Ne,$e;C&&(Ne=Ie.children)&&Ne.sort(C),B&&($e=Ie.parent)&&($e.value+=Ie.value)}),le}return V.sort=function(W){return arguments.length?(C=W,V):C},V.children=function(W){return arguments.length?(z=W,V):z},V.value=function(W){return arguments.length?(B=W,V):B},V.revalue=function(W){return B&&(rf(W,function(J){J.children&&(J.value=0)}),wi(W,function(J){var le;J.children||(J.value=+B.call(V,J,J.depth)||0),(le=J.parent)&&(le.value+=J.value)})),W},V};function ef(C,z){return e.rebind(C,z,"sort","children","value"),C.nodes=C,C.links=kO,C}function rf(C,z){for(var B=[C];(C=B.pop())!=null;)if(z(C),(W=C.children)&&(V=W.length))for(var V,W;--V>=0;)B.push(W[V])}function wi(C,z){for(var B=[C],V=[];(C=B.pop())!=null;)if(V.push(C),(le=C.children)&&(J=le.length))for(var W=-1,J,le;++WW&&(W=ie),V.push(ie)}for(le=0;leV&&(B=z,V=W);return B}function PO(C){return C.reduce(FO,0)}function FO(C,z){return C+z[1]}e.layout.histogram=function(){var C=!0,z=Number,B=NO,V=IO;function W(J,Ne){for(var ie=[],fe=J.map(z,this),xe=B.call(this,fe,Ne),_e=V.call(this,xe,fe,Ne),Ie,Ne=-1,$e=fe.length,rr=_e.length-1,qe=C?1:1/$e,He;++Ne0)for(Ne=-1;++Ne<$e;)He=fe[Ne],He>=xe[0]&&He<=xe[1]&&(Ie=ie[e.bisect(_e,He,1,rr)-1],Ie.y+=qe,Ie.push(J[Ne]));return ie}return W.value=function(J){return arguments.length?(z=J,W):z},W.range=function(J){return arguments.length?(B=Xr(J),W):B},W.bins=function(J){return arguments.length?(V=typeof J=="number"?function(le){return gx(le,J)}:Xr(J),W):V},W.frequency=function(J){return arguments.length?(C=!!J,W):C},W};function IO(C,z){return gx(C,Math.ceil(Math.log(z.length)/Math.LN2+1))}function gx(C,z){for(var B=-1,V=+C[0],W=(C[1]-V)/z,J=[];++B<=z;)J[B]=W*B+V;return J}function NO(C){return[e.min(C),e.max(C)]}e.layout.pack=function(){var C=e.layout.hierarchy().sort(zO),z=0,B=[1,1],V;function W(J,le){var ie=C.call(this,J,le),fe=ie[0],xe=B[0],_e=B[1],Ie=V==null?Math.sqrt:typeof V=="function"?V:function(){return V};if(fe.x=fe.y=0,wi(fe,function($e){$e.r=+Ie($e.value)}),wi(fe,xx),z){var Ne=z*(V?1:Math.max(2*fe.r/xe,2*fe.r/_e))/2;wi(fe,function($e){$e.r+=Ne}),wi(fe,xx),wi(fe,function($e){$e.r-=Ne})}return bx(fe,xe/2,_e/2,V?1:1/Math.max(2*fe.r/xe,2*fe.r/_e)),ie}return W.size=function(J){return arguments.length?(B=J,W):B},W.radius=function(J){return arguments.length?(V=J==null||typeof J=="function"?J:+J,W):V},W.padding=function(J){return arguments.length?(z=+J,W):z},ef(W,C)};function zO(C,z){return C.value-z.value}function Vd(C,z){var B=C._pack_next;C._pack_next=z,z._pack_prev=C,z._pack_next=B,B._pack_prev=z}function yx(C,z){C._pack_next=z,z._pack_prev=C}function mx(C,z){var B=z.x-C.x,V=z.y-C.y,W=C.r+z.r;return .999*W*W>B*B+V*V}function xx(C){if(!(z=C.children)||!(Ne=z.length))return;var z,B=1/0,V=-1/0,W=1/0,J=-1/0,le,ie,fe,xe,_e,Ie,Ne;function $e(Ke){B=Math.min(Ke.x-Ke.r,B),V=Math.max(Ke.x+Ke.r,V),W=Math.min(Ke.y-Ke.r,W),J=Math.max(Ke.y+Ke.r,J)}if(z.forEach(qO),le=z[0],le.x=-le.r,le.y=0,$e(le),Ne>1&&(ie=z[1],ie.x=ie.r,ie.y=0,$e(ie),Ne>2))for(fe=z[2],_x(le,ie,fe),$e(fe),Vd(le,fe),le._pack_prev=fe,Vd(fe,ie),ie=le._pack_next,xe=3;xeHe.x&&(He=or),or.depth>Xe.depth&&(Xe=or)});var er=z(qe,He)/2-qe.x,tr=B[0]/(He.x+z(He,qe)/2+er),Ke=B[1]/(Xe.depth||1);rf($e,function(or){or.x=(or.x+er)*tr,or.y=or.depth*Ke})}return Ne}function J(_e){for(var Ie={A:null,children:[_e]},Ne=[Ie],$e;($e=Ne.pop())!=null;)for(var rr=$e.children,qe,He=0,Xe=rr.length;He0&&(BO(HO(qe,_e,Ne),_e,or),Xe+=or,er+=or),tr+=qe.m,Xe+=$e.m,Ke+=He.m,er+=rr.m;qe&&!Yd(rr)&&(rr.t=qe,rr.m+=tr-er),$e&&!Gd(He)&&(He.t=$e,He.m+=Xe-Ke,Ne=_e)}return Ne}function xe(_e){_e.x*=B[0],_e.y=_e.depth*B[1]}return W.separation=function(_e){return arguments.length?(z=_e,W):z},W.size=function(_e){return arguments.length?(V=(B=_e)==null?xe:null,W):V?null:B},W.nodeSize=function(_e){return arguments.length?(V=(B=_e)==null?null:xe,W):V?B:null},ef(W,C)};function wx(C,z){return C.parent==z.parent?1:2}function Gd(C){var z=C.children;return z.length?z[0]:C.t}function Yd(C){var z=C.children,B;return(B=z.length)?z[B-1]:C.t}function BO(C,z,B){var V=B/(z.i-C.i);z.c-=V,z.s+=B,C.c+=V,z.z+=B,z.m+=B}function UO(C){for(var z=0,B=0,V=C.children,W=V.length,J;--W>=0;)J=V[W],J.z+=z,J.m+=z,z+=J.s+(B+=J.c)}function HO(C,z,B){return C.a.parent===z.parent?C.a:B}e.layout.cluster=function(){var C=e.layout.hierarchy().sort(null).value(null),z=wx,B=[1,1],V=!1;function W(J,le){var ie=C.call(this,J,le),fe=ie[0],xe,_e=0;wi(fe,function(qe){var He=qe.children;He&&He.length?(qe.x=GO(He),qe.y=VO(He)):(qe.x=xe?_e+=z(qe,xe):0,qe.y=0,xe=qe)});var Ie=Mx(fe),Ne=Tx(fe),$e=Ie.x-z(Ie,Ne)/2,rr=Ne.x+z(Ne,Ie)/2;return wi(fe,V?function(qe){qe.x=(qe.x-fe.x)*B[0],qe.y=(fe.y-qe.y)*B[1]}:function(qe){qe.x=(qe.x-$e)/(rr-$e)*B[0],qe.y=(1-(fe.y?qe.y/fe.y:1))*B[1]}),ie}return W.separation=function(J){return arguments.length?(z=J,W):z},W.size=function(J){return arguments.length?(V=(B=J)==null,W):V?null:B},W.nodeSize=function(J){return arguments.length?(V=(B=J)!=null,W):V?B:null},ef(W,C)};function VO(C){return 1+e.max(C,function(z){return z.y})}function GO(C){return C.reduce(function(z,B){return z+B.x},0)/C.length}function Mx(C){var z=C.children;return z&&z.length?Mx(z[0]):C}function Tx(C){var z=C.children,B;return z&&(B=z.length)?Tx(z[B-1]):C}e.layout.treemap=function(){var C=e.layout.hierarchy(),z=Math.round,B=[1,1],V=null,W=Wd,J=!1,le,ie="squarify",fe=.5*(1+Math.sqrt(5));function xe(qe,He){for(var Xe=-1,er=qe.length,tr,Ke;++Xe0;)er.push(Ke=tr[pr-1]),er.area+=Ke.area,ie!=="squarify"||(dr=Ne(er,yr))<=or?(tr.pop(),or=dr):(er.area-=er.pop().area,$e(er,yr,Xe,!1),yr=Math.min(Xe.dx,Xe.dy),er.length=er.area=0,or=1/0);er.length&&($e(er,yr,Xe,!0),er.length=er.area=0),He.forEach(_e)}}function Ie(qe){var He=qe.children;if(He&&He.length){var Xe=W(qe),er=He.slice(),tr,Ke=[];for(xe(er,Xe.dx*Xe.dy/qe.value),Ke.area=0;tr=er.pop();)Ke.push(tr),Ke.area+=tr.area,tr.z!=null&&($e(Ke,tr.z?Xe.dx:Xe.dy,Xe,!er.length),Ke.length=Ke.area=0);He.forEach(Ie)}}function Ne(qe,He){for(var Xe=qe.area,er,tr=0,Ke=1/0,or=-1,dr=qe.length;++ortr&&(tr=er));return Xe*=Xe,He*=He,Xe?Math.max(He*tr*fe/Xe,Xe/(He*Ke*fe)):1/0}function $e(qe,He,Xe,er){var tr=-1,Ke=qe.length,or=Xe.x,dr=Xe.y,yr=He?z(qe.area/He):0,pr;if(He==Xe.dx){for((er||yr>Xe.dy)&&(yr=Xe.dy);++trXe.dx)&&(yr=Xe.dx);++tr1);return C+z*V*Math.sqrt(-2*Math.log(J)/J)}},logNormal:function(){var C=e.random.normal.apply(e,arguments);return function(){return Math.exp(C())}},bates:function(C){var z=e.random.irwinHall(C);return function(){return z()/C}},irwinHall:function(C){return function(){for(var z=0,B=0;B2?XO:YO,xe=V?hO:vO;return W=fe(C,z,xe,B),J=fe(z,C,xe,pl),ie}function ie(fe){return W(fe)}return ie.invert=function(fe){return J(fe)},ie.domain=function(fe){return arguments.length?(C=fe.map(Number),le()):C},ie.range=function(fe){return arguments.length?(z=fe,le()):z},ie.rangeRound=function(fe){return ie.range(fe).interpolate(sx)},ie.clamp=function(fe){return arguments.length?(V=fe,le()):V},ie.interpolate=function(fe){return arguments.length?(B=fe,le()):B},ie.ticks=function(fe){return Jd(C,fe)},ie.tickFormat=function(fe,xe){return d3_scale_linearTickFormat(C,fe,xe)},ie.nice=function(fe){return Ex(C,fe),le()},ie.copy=function(){return Sx(C,z,B,V)},le()}function Cx(C,z){return e.rebind(C,z,"range","rangeRound","interpolate","clamp")}function Ex(C,z){return Xd(C,kx(Zd(C,z)[2])),Xd(C,kx(Zd(C,z)[2])),C}function Zd(C,z){z==null&&(z=10);var B=nc(C),V=B[1]-B[0],W=Math.pow(10,Math.floor(Math.log(V/z)/Math.LN10)),J=z/V*W;return J<=.15?W*=10:J<=.35?W*=5:J<=.75&&(W*=2),B[0]=Math.ceil(B[0]/W)*W,B[1]=Math.floor(B[1]/W)*W+W*.5,B[2]=W,B}function Jd(C,z){return e.range.apply(e,Zd(C,z))}var ZO={s:1,g:1,p:1,r:1,e:1};function Lx(C){return-Math.floor(Math.log(C)/Math.LN10+.01)}function Iue(C,z){var B=Lx(z[2]);return C in ZO?Math.abs(B-Lx(Math.max(m(z[0]),m(z[1]))))+ +(C!=="e"):B-(C==="%")*2}e.scale.log=function(){return Rx(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Rx(C,z,B,V){function W(ie){return(B?Math.log(ie<0?0:ie):-Math.log(ie>0?0:-ie))/Math.log(z)}function J(ie){return B?Math.pow(z,ie):-Math.pow(z,-ie)}function le(ie){return C(W(ie))}return le.invert=function(ie){return J(C.invert(ie))},le.domain=function(ie){return arguments.length?(B=ie[0]>=0,C.domain((V=ie.map(Number)).map(W)),le):V},le.base=function(ie){return arguments.length?(z=+ie,C.domain(V.map(W)),le):z},le.nice=function(){var ie=Xd(V.map(W),B?Math:JO);return C.domain(ie),V=ie.map(J),le},le.ticks=function(){var ie=nc(V),fe=[],xe=ie[0],_e=ie[1],Ie=Math.floor(W(xe)),Ne=Math.ceil(W(_e)),$e=z%1?2:z;if(isFinite(Ne-Ie)){if(B){for(;Ie0;rr--)fe.push(J(Ie)*rr);for(Ie=0;fe[Ie]_e;Ne--);fe=fe.slice(Ie,Ne)}return fe},le.copy=function(){return Rx(C.copy(),z,B,V)},Cx(le,C)}var JO={floor:function(C){return-Math.ceil(-C)},ceil:function(C){return-Math.floor(-C)}};e.scale.pow=function(){return Dx(e.scale.linear(),1,[0,1])};function Dx(C,z,B){var V=ic(z),W=ic(1/z);function J(le){return C(V(le))}return J.invert=function(le){return W(C.invert(le))},J.domain=function(le){return arguments.length?(C.domain((B=le.map(Number)).map(V)),J):B},J.ticks=function(le){return Jd(B,le)},J.tickFormat=function(le,ie){return d3_scale_linearTickFormat(B,le,ie)},J.nice=function(le){return J.domain(Ex(B,le))},J.exponent=function(le){return arguments.length?(V=ic(z=le),W=ic(1/z),C.domain(B.map(V)),J):z},J.copy=function(){return Dx(C.copy(),z,B)},Cx(J,C)}function ic(C){return function(z){return z<0?-Math.pow(-z,C):Math.pow(z,C)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Px([],{t:"range",a:[[]]})};function Px(C,z){var B,V,W;function J(ie){return V[((B.get(ie)||(z.t==="range"?B.set(ie,C.push(ie)):NaN))-1)%V.length]}function le(ie,fe){return e.range(C.length).map(function(xe){return ie+fe*xe})}return J.domain=function(ie){if(!arguments.length)return C;C=[],B=new x;for(var fe=-1,xe=ie.length,_e;++fe0?B[J-1]:C[0],JNe?0:1;if(_e=se)return fe(_e,rr)+(xe?fe(xe,1-rr):"")+"Z";var qe,He,Xe,er,tr=0,Ke=0,or,dr,yr,pr,br,_r,qr,Mr,Pr=[];if((er=(+le.apply(this,arguments)||0)/2)&&(Xe=V===oc?Math.sqrt(xe*xe+_e*_e):+V.apply(this,arguments),rr||(Ke*=-1),_e&&(Ke=hr(Xe/_e*Math.sin(er))),xe&&(tr=hr(Xe/xe*Math.sin(er)))),_e){or=_e*Math.cos(Ie+Ke),dr=_e*Math.sin(Ie+Ke),yr=_e*Math.cos(Ne-Ke),pr=_e*Math.sin(Ne-Ke);var lt=Math.abs(Ne-Ie-2*Ke)<=Ve?0:1;if(Ke&&lc(or,dr,yr,pr)===rr^lt){var Bt=(Ie+Ne)/2;or=_e*Math.cos(Bt),dr=_e*Math.sin(Bt),yr=pr=null}}else or=dr=0;if(xe){br=xe*Math.cos(Ne-tr),_r=xe*Math.sin(Ne-tr),qr=xe*Math.cos(Ie+tr),Mr=xe*Math.sin(Ie+tr);var dt=Math.abs(Ie-Ne+2*tr)<=Ve?0:1;if(tr&&lc(br,_r,qr,Mr)===1-rr^dt){var vr=(Ie+Ne)/2;br=xe*Math.cos(vr),_r=xe*Math.sin(vr),qr=Mr=null}}else br=_r=0;if($e>Pe&&(qe=Math.min(Math.abs(_e-xe)/2,+B.apply(this,arguments)))>.001){He=xe<_e^rr?0:1;var Or=qe,Vr=qe;if($e0?0:1}function sc(C,z,B,V,W){var J=C[0]-z[0],le=C[1]-z[1],ie=(W?V:-V)/Math.sqrt(J*J+le*le),fe=ie*le,xe=-ie*J,_e=C[0]+fe,Ie=C[1]+xe,Ne=z[0]+fe,$e=z[1]+xe,rr=(_e+Ne)/2,qe=(Ie+$e)/2,He=Ne-_e,Xe=$e-Ie,er=He*He+Xe*Xe,tr=B-V,Ke=_e*$e-Ne*Ie,or=(Xe<0?-1:1)*Math.sqrt(Math.max(0,tr*tr*er-Ke*Ke)),dr=(Ke*Xe-He*or)/er,yr=(-Ke*He-Xe*or)/er,pr=(Ke*Xe+He*or)/er,br=(-Ke*He+Xe*or)/er,_r=dr-rr,qr=yr-qe,Mr=pr-rr,Pr=br-qe;return _r*_r+qr*qr>Mr*Mr+Pr*Pr&&(dr=pr,yr=br),[[dr-fe,yr-xe],[dr*B/tr,yr*B/tr]]}function Bx(){return!0}function Ux(C){var z=xs,B=Zu,V=Bx,W=Xa,J=W.key,le=.7;function ie(fe){var xe=[],_e=[],Ie=-1,Ne=fe.length,$e,rr=Xr(z),qe=Xr(B);function He(){xe.push("M",W(C(_e),le))}for(;++Ie1?C.join("L"):C+"Z"}function Hx(C){return C.join("L")+"Z"}function aB(C){for(var z=0,B=C.length,V=C[0],W=[V[0],",",V[1]];++z1&&W.push("H",V[0]),W.join("")}function Qd(C){for(var z=0,B=C.length,V=C[0],W=[V[0],",",V[1]];++z1){ie=z[1],J=C[fe],fe++,V+="C"+(W[0]+le[0])+","+(W[1]+le[1])+","+(J[0]-ie[0])+","+(J[1]-ie[1])+","+J[0]+","+J[1];for(var xe=2;xe9&&(J=B*3/Math.sqrt(J),le[ie]=J*V,le[ie+1]=J*W));for(ie=-1;++ie<=fe;)J=(C[Math.min(fe,ie+1)][0]-C[Math.max(0,ie-1)][0])/(6*(1+le[ie]*le[ie])),z.push([J||0,le[ie]*J||0]);return z}function hB(C){return C.length<3?Xa(C):C[0]+uc(C,vB(C))}e.svg.line.radial=function(){var C=Ux(Wx);return C.radius=C.x,delete C.x,C.angle=C.y,delete C.y,C};function Wx(C){for(var z,B=-1,V=C.length,W,J;++BVe)+",1 "+Ie}function xe(_e,Ie,Ne,$e){return"Q 0,0 "+$e}return J.radius=function(_e){return arguments.length?(B=Xr(_e),J):B},J.source=function(_e){return arguments.length?(C=Xr(_e),J):C},J.target=function(_e){return arguments.length?(z=Xr(_e),J):z},J.startAngle=function(_e){return arguments.length?(V=Xr(_e),J):V},J.endAngle=function(_e){return arguments.length?(W=Xr(_e),J):W},J};function dB(C){return C.radius}e.svg.diagonal=function(){var C=Zx,z=Jx,B=Kx;function V(W,J){var le=C.call(this,W,J),ie=z.call(this,W,J),fe=(le.y+ie.y)/2,xe=[le,{x:le.x,y:fe},{x:ie.x,y:fe},ie];return xe=xe.map(B),"M"+xe[0]+"C"+xe[1]+" "+xe[2]+" "+xe[3]}return V.source=function(W){return arguments.length?(C=Xr(W),V):C},V.target=function(W){return arguments.length?(z=Xr(W),V):z},V.projection=function(W){return arguments.length?(B=W,V):B},V};function Kx(C){return[C.x,C.y]}e.svg.diagonal.radial=function(){var C=e.svg.diagonal(),z=Kx,B=C.projection;return C.projection=function(V){return arguments.length?B(pB(z=V)):z},C};function pB(C){return function(){var z=C.apply(this,arguments),B=z[0],V=z[1]-K;return[B*Math.cos(V),B*Math.sin(V)]}}e.svg.symbol=function(){var C=yB,z=gB;function B(V,W){return($x.get(C.call(this,V,W))||Qx)(z.call(this,V,W))}return B.type=function(V){return arguments.length?(C=Xr(V),B):C},B.size=function(V){return arguments.length?(z=Xr(V),B):z},B};function gB(){return 64}function yB(){return"circle"}function Qx(C){var z=Math.sqrt(C/Ve);return"M0,"+z+"A"+z+","+z+" 0 1,1 0,"+-z+"A"+z+","+z+" 0 1,1 0,"+z+"Z"}var $x=e.map({circle:Qx,cross:function(C){var z=Math.sqrt(C/5)/2;return"M"+-3*z+","+-z+"H"+-z+"V"+-3*z+"H"+z+"V"+-z+"H"+3*z+"V"+z+"H"+z+"V"+3*z+"H"+-z+"V"+z+"H"+-3*z+"Z"},diamond:function(C){var z=Math.sqrt(C/(2*jx)),B=z*jx;return"M0,"+-z+"L"+B+",0 0,"+z+" "+-B+",0Z"},square:function(C){var z=Math.sqrt(C)/2;return"M"+-z+","+-z+"L"+z+","+-z+" "+z+","+z+" "+-z+","+z+"Z"},"triangle-down":function(C){var z=Math.sqrt(C/fc),B=z*fc/2;return"M0,"+B+"L"+z+","+-B+" "+-z+","+-B+"Z"},"triangle-up":function(C){var z=Math.sqrt(C/fc),B=z*fc/2;return"M0,"+-B+"L"+z+","+B+" "+-z+","+B+"Z"}});e.svg.symbolTypes=$x.keys();var fc=Math.sqrt(3),jx=Math.tan(30*ae);ee.transition=function(C){for(var z=yl||++rb,B=np(C),V=[],W,J,le=vc||{time:Date.now(),ease:Jq,delay:0,duration:250},ie=-1,fe=this.length;++ie0;)Ie[--er].call(C,Xe);if(He>=1)return le.event&&le.event.end.call(C,C.__data__,z),--J.count?delete J[V]:delete C[B],1}le||(ie=W.time,fe=K0(Ne,0,ie),le=J[V]={tween:new x,time:ie,timer:fe,delay:W.delay,duration:W.duration,ease:W.ease,index:z},W=null,++J.count)}e.svg.axis=function(){var C=e.scale.linear(),z=tb,B=6,V=6,W=3,J=[10],le=null,ie;function fe(xe){xe.each(function(){var _e=e.select(this),Ie=this.__chart__||C,Ne=this.__chart__=C.copy(),$e=le==null?Ne.ticks?Ne.ticks.apply(Ne,J):Ne.domain():le,rr=ie==null?Ne.tickFormat?Ne.tickFormat.apply(Ne,J):N:ie,qe=_e.selectAll(".tick").data($e,Ne),He=qe.enter().insert("g",".domain").attr("class","tick").style("opacity",Pe),Xe=e.transition(qe.exit()).style("opacity",Pe).remove(),er=e.transition(qe.order()).style("opacity",1),tr=Math.max(B,0)+W,Ke,or=ac(Ne),dr=_e.selectAll(".domain").data([0]),yr=(dr.enter().append("path").attr("class","domain"),e.transition(dr));He.append("line"),He.append("text");var pr=He.select("line"),br=er.select("line"),_r=qe.select("text").text(rr),qr=He.select("text"),Mr=er.select("text"),Pr=z==="top"||z==="left"?-1:1,lt,Bt,dt,vr;if(z==="bottom"||z==="top"?(Ke=bB,lt="x",dt="y",Bt="x2",vr="y2",_r.attr("dy",Pr<0?"0em":".71em").style("text-anchor","middle"),yr.attr("d","M"+or[0]+","+Pr*V+"V0H"+or[1]+"V"+Pr*V)):(Ke=_B,lt="y",dt="x",Bt="y2",vr="x2",_r.attr("dy",".32em").style("text-anchor",Pr<0?"end":"start"),yr.attr("d","M"+Pr*V+","+or[0]+"H0V"+or[1]+"H"+Pr*V)),pr.attr(vr,Pr*B),qr.attr(dt,Pr*tr),br.attr(Bt,0).attr(vr,Pr*B),Mr.attr(lt,0).attr(dt,Pr*tr),Ne.rangeBand){var Or=Ne,Vr=Or.rangeBand()/2;Ie=Ne=function(st){return Or(st)+Vr}}else Ie.rangeBand?Ie=Ne:Xe.call(Ke,Ne,Ie);He.call(Ke,Ie,Ne),er.call(Ke,Ne,Ne)})}return fe.scale=function(xe){return arguments.length?(C=xe,fe):C},fe.orient=function(xe){return arguments.length?(z=xe in xB?xe+"":tb,fe):z},fe.ticks=function(){return arguments.length?(J=t(arguments),fe):J},fe.tickValues=function(xe){return arguments.length?(le=xe,fe):le},fe.tickFormat=function(xe){return arguments.length?(ie=xe,fe):ie},fe.tickSize=function(xe){var _e=arguments.length;return _e?(B=+xe,V=+arguments[_e-1],fe):B},fe.innerTickSize=function(xe){return arguments.length?(B=+xe,fe):B},fe.outerTickSize=function(xe){return arguments.length?(V=+xe,fe):V},fe.tickPadding=function(xe){return arguments.length?(W=+xe,fe):W},fe.tickSubdivide=function(){return arguments.length&&fe},fe};var tb="bottom",xB={top:1,right:1,bottom:1,left:1};function bB(C,z,B){C.attr("transform",function(V){var W=z(V);return"translate("+(isFinite(W)?W:B(V))+",0)"})}function _B(C,z,B){C.attr("transform",function(V){var W=z(V);return"translate(0,"+(isFinite(W)?W:B(V))+")"})}e.svg.brush=function(){var C=$(_e,"brushstart","brush","brushend"),z=null,B=null,V=[0,0],W=[0,0],J,le,ie=!0,fe=!0,xe=ap[0];function _e(qe){qe.each(function(){var He=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",rr).on("touchstart.brush",rr),Xe=He.selectAll(".background").data([0]);Xe.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),He.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var er=He.selectAll(".resize").data(xe,N);er.exit().remove(),er.enter().append("g").attr("class",function(dr){return"resize "+dr}).style("cursor",function(dr){return wB[dr]}).append("rect").attr("x",function(dr){return/[ew]$/.test(dr)?-3:null}).attr("y",function(dr){return/^[ns]/.test(dr)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),er.style("display",_e.empty()?"none":null);var tr=e.transition(He),Ke=e.transition(Xe),or;z&&(or=ac(z),Ke.attr("x",or[0]).attr("width",or[1]-or[0]),Ne(tr)),B&&(or=ac(B),Ke.attr("y",or[0]).attr("height",or[1]-or[0]),$e(tr)),Ie(tr)})}_e.event=function(qe){qe.each(function(){var He=C.of(this,arguments),Xe={x:V,y:W,i:J,j:le},er=this.__chart__||Xe;this.__chart__=Xe,yl?e.select(this).transition().each("start.brush",function(){J=er.i,le=er.j,V=er.x,W=er.y,He({type:"brushstart"})}).tween("brush:brush",function(){var tr=tc(V,Xe.x),Ke=tc(W,Xe.y);return J=le=null,function(or){V=Xe.x=tr(or),W=Xe.y=Ke(or),He({type:"brush",mode:"resize"})}}).each("end.brush",function(){J=Xe.i,le=Xe.j,He({type:"brush",mode:"resize"}),He({type:"brushend"})}):(He({type:"brushstart"}),He({type:"brush",mode:"resize"}),He({type:"brushend"}))})};function Ie(qe){qe.selectAll(".resize").attr("transform",function(He){return"translate("+V[+/e$/.test(He)]+","+W[+/^s/.test(He)]+")"})}function Ne(qe){qe.select(".extent").attr("x",V[0]),qe.selectAll(".extent,.n>rect,.s>rect").attr("width",V[1]-V[0])}function $e(qe){qe.select(".extent").attr("y",W[0]),qe.selectAll(".extent,.e>rect,.w>rect").attr("height",W[1]-W[0])}function rr(){var qe=this,He=e.select(e.event.target),Xe=C.of(qe,arguments),er=e.select(qe),tr=He.datum(),Ke=!/^(n|s)$/.test(tr)&&z,or=!/^(e|w)$/.test(tr)&&B,dr=He.classed("extent"),yr=Ye(qe),pr,br=e.mouse(qe),_r,qr=e.select(o(qe)).on("keydown.brush",lt).on("keyup.brush",Bt);if(e.event.changedTouches?qr.on("touchmove.brush",dt).on("touchend.brush",Or):qr.on("mousemove.brush",dt).on("mouseup.brush",Or),er.interrupt().selectAll("*").interrupt(),dr)br[0]=V[0]-br[0],br[1]=W[0]-br[1];else if(tr){var Mr=+/w$/.test(tr),Pr=+/^n/.test(tr);_r=[V[1-Mr]-br[0],W[1-Pr]-br[1]],br[0]=V[Mr],br[1]=W[Pr]}else e.event.altKey&&(pr=br.slice());er.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",He.style("cursor")),Xe({type:"brushstart"}),dt();function lt(){e.event.keyCode==32&&(dr||(pr=null,br[0]-=V[1],br[1]-=W[1],dr=2),X())}function Bt(){e.event.keyCode==32&&dr==2&&(br[0]+=V[1],br[1]+=W[1],dr=0,X())}function dt(){var Vr=e.mouse(qe),st=!1;_r&&(Vr[0]+=_r[0],Vr[1]+=_r[1]),dr||(e.event.altKey?(pr||(pr=[(V[0]+V[1])/2,(W[0]+W[1])/2]),br[0]=V[+(Vr[0]{(function(e,r){typeof mc=="object"&&typeof ub!="undefined"?r(mc):(e=e||self,r(e.d3=e.d3||{}))})(mc,function(e){"use strict";var r=new Date,t=new Date;function n(ge,Te,ce,ye){function Le(me){return ge(me=arguments.length===0?new Date:new Date(+me)),me}return Le.floor=function(me){return ge(me=new Date(+me)),me},Le.ceil=function(me){return ge(me=new Date(me-1)),Te(me,1),ge(me),me},Le.round=function(me){var he=Le(me),be=Le.ceil(me);return me-he0))return Se;do Se.push(ze=new Date(+me)),Te(me,be),ge(me);while(ze=he)for(;ge(he),!me(he);)he.setTime(he-1)},function(he,be){if(he>=he)if(be<0)for(;++be<=0;)for(;Te(he,-1),!me(he););else for(;--be>=0;)for(;Te(he,1),!me(he););})},ce&&(Le.count=function(me,he){return r.setTime(+me),t.setTime(+he),ge(r),ge(t),Math.floor(ce(r,t))},Le.every=function(me){return me=Math.floor(me),!isFinite(me)||!(me>0)?null:me>1?Le.filter(ye?function(he){return ye(he)%me===0}:function(he){return Le.count(0,he)%me===0}):Le}),Le}var a=n(function(){},function(ge,Te){ge.setTime(+ge+Te)},function(ge,Te){return Te-ge});a.every=function(ge){return ge=Math.floor(ge),!isFinite(ge)||!(ge>0)?null:ge>1?n(function(Te){Te.setTime(Math.floor(Te/ge)*ge)},function(Te,ce){Te.setTime(+Te+ce*ge)},function(Te,ce){return(ce-Te)/ge}):a};var o=a.range,i=1e3,l=6e4,u=36e5,s=864e5,f=6048e5,v=n(function(ge){ge.setTime(ge-ge.getMilliseconds())},function(ge,Te){ge.setTime(+ge+Te*i)},function(ge,Te){return(Te-ge)/i},function(ge){return ge.getUTCSeconds()}),p=v.range,b=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i)},function(ge,Te){ge.setTime(+ge+Te*l)},function(ge,Te){return(Te-ge)/l},function(ge){return ge.getMinutes()}),y=b.range,w=n(function(ge){ge.setTime(ge-ge.getMilliseconds()-ge.getSeconds()*i-ge.getMinutes()*l)},function(ge,Te){ge.setTime(+ge+Te*u)},function(ge,Te){return(Te-ge)/u},function(ge){return ge.getHours()}),M=w.range,m=n(function(ge){ge.setHours(0,0,0,0)},function(ge,Te){ge.setDate(ge.getDate()+Te)},function(ge,Te){return(Te-ge-(Te.getTimezoneOffset()-ge.getTimezoneOffset())*l)/s},function(ge){return ge.getDate()-1}),k=m.range;function S(ge){return n(function(Te){Te.setDate(Te.getDate()-(Te.getDay()+7-ge)%7),Te.setHours(0,0,0,0)},function(Te,ce){Te.setDate(Te.getDate()+ce*7)},function(Te,ce){return(ce-Te-(ce.getTimezoneOffset()-Te.getTimezoneOffset())*l)/f})}var x=S(0),T=S(1),d=S(2),_=S(3),g=S(4),c=S(5),A=S(6),h=x.range,R=T.range,E=d.range,D=_.range,N=g.range,I=c.range,F=A.range,L=n(function(ge){ge.setDate(1),ge.setHours(0,0,0,0)},function(ge,Te){ge.setMonth(ge.getMonth()+Te)},function(ge,Te){return Te.getMonth()-ge.getMonth()+(Te.getFullYear()-ge.getFullYear())*12},function(ge){return ge.getMonth()}),P=L.range,O=n(function(ge){ge.setMonth(0,1),ge.setHours(0,0,0,0)},function(ge,Te){ge.setFullYear(ge.getFullYear()+Te)},function(ge,Te){return Te.getFullYear()-ge.getFullYear()},function(ge){return ge.getFullYear()});O.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(Te){Te.setFullYear(Math.floor(Te.getFullYear()/ge)*ge),Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,ce){Te.setFullYear(Te.getFullYear()+ce*ge)})};var U=O.range,X=n(function(ge){ge.setUTCSeconds(0,0)},function(ge,Te){ge.setTime(+ge+Te*l)},function(ge,Te){return(Te-ge)/l},function(ge){return ge.getUTCMinutes()}),j=X.range,$=n(function(ge){ge.setUTCMinutes(0,0,0)},function(ge,Te){ge.setTime(+ge+Te*u)},function(ge,Te){return(Te-ge)/u},function(ge){return ge.getUTCHours()}),Y=$.range,q=n(function(ge){ge.setUTCHours(0,0,0,0)},function(ge,Te){ge.setUTCDate(ge.getUTCDate()+Te)},function(ge,Te){return(Te-ge)/s},function(ge){return ge.getUTCDate()-1}),Z=q.range;function ne(ge){return n(function(Te){Te.setUTCDate(Te.getUTCDate()-(Te.getUTCDay()+7-ge)%7),Te.setUTCHours(0,0,0,0)},function(Te,ce){Te.setUTCDate(Te.getUTCDate()+ce*7)},function(Te,ce){return(ce-Te)/f})}var Q=ne(0),oe=ne(1),ee=ne(2),G=ne(3),re=ne(4),H=ne(5),te=ne(6),ue=Q.range,de=oe.range,Ee=ee.range,Me=G.range,ve=re.range,Ae=H.range,ke=te.range,De=n(function(ge){ge.setUTCDate(1),ge.setUTCHours(0,0,0,0)},function(ge,Te){ge.setUTCMonth(ge.getUTCMonth()+Te)},function(ge,Te){return Te.getUTCMonth()-ge.getUTCMonth()+(Te.getUTCFullYear()-ge.getUTCFullYear())*12},function(ge){return ge.getUTCMonth()}),Ce=De.range,Oe=n(function(ge){ge.setUTCMonth(0,1),ge.setUTCHours(0,0,0,0)},function(ge,Te){ge.setUTCFullYear(ge.getUTCFullYear()+Te)},function(ge,Te){return Te.getUTCFullYear()-ge.getUTCFullYear()},function(ge){return ge.getUTCFullYear()});Oe.every=function(ge){return!isFinite(ge=Math.floor(ge))||!(ge>0)?null:n(function(Te){Te.setUTCFullYear(Math.floor(Te.getUTCFullYear()/ge)*ge),Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,ce){Te.setUTCFullYear(Te.getUTCFullYear()+ce*ge)})};var Ue=Oe.range;e.timeDay=m,e.timeDays=k,e.timeFriday=c,e.timeFridays=I,e.timeHour=w,e.timeHours=M,e.timeInterval=n,e.timeMillisecond=a,e.timeMilliseconds=o,e.timeMinute=b,e.timeMinutes=y,e.timeMonday=T,e.timeMondays=R,e.timeMonth=L,e.timeMonths=P,e.timeSaturday=A,e.timeSaturdays=F,e.timeSecond=v,e.timeSeconds=p,e.timeSunday=x,e.timeSundays=h,e.timeThursday=g,e.timeThursdays=N,e.timeTuesday=d,e.timeTuesdays=E,e.timeWednesday=_,e.timeWednesdays=D,e.timeWeek=x,e.timeWeeks=h,e.timeYear=O,e.timeYears=U,e.utcDay=q,e.utcDays=Z,e.utcFriday=H,e.utcFridays=Ae,e.utcHour=$,e.utcHours=Y,e.utcMillisecond=a,e.utcMilliseconds=o,e.utcMinute=X,e.utcMinutes=j,e.utcMonday=oe,e.utcMondays=de,e.utcMonth=De,e.utcMonths=Ce,e.utcSaturday=te,e.utcSaturdays=ke,e.utcSecond=v,e.utcSeconds=p,e.utcSunday=Q,e.utcSundays=ue,e.utcThursday=re,e.utcThursdays=ve,e.utcTuesday=ee,e.utcTuesdays=Ee,e.utcWednesday=G,e.utcWednesdays=Me,e.utcWeek=Q,e.utcWeeks=ue,e.utcYear=Oe,e.utcYears=Ue,Object.defineProperty(e,"__esModule",{value:!0})})});var ks=pe((xc,fb)=>{(function(e,r){typeof xc=="object"&&typeof fb!="undefined"?r(xc,ip()):(e=e||self,r(e.d3=e.d3||{},e.d3))})(xc,function(e,r){"use strict";function t(we){if(0<=we.y&&we.y<100){var Pe=new Date(-1,we.m,we.d,we.H,we.M,we.S,we.L);return Pe.setFullYear(we.y),Pe}return new Date(we.y,we.m,we.d,we.H,we.M,we.S,we.L)}function n(we){if(0<=we.y&&we.y<100){var Pe=new Date(Date.UTC(-1,we.m,we.d,we.H,we.M,we.S,we.L));return Pe.setUTCFullYear(we.y),Pe}return new Date(Date.UTC(we.y,we.m,we.d,we.H,we.M,we.S,we.L))}function a(we,Pe,Qe){return{y:we,m:Pe,d:Qe,H:0,M:0,S:0,L:0}}function o(we){var Pe=we.dateTime,Qe=we.date,Ve=we.time,ar=we.periods,se=we.days,K=we.shortDays,ae=we.months,Re=we.shortMonths,Be=p(ar),je=b(ar),nr=p(se),hr=b(se),wr=p(K),Cr=b(K),Tr=p(ae),Ar=b(ae),ft=p(Re),Yr=b(Re),mr={a:ha,A:Qn,b:Fn,B:wa,c:null,d:L,e:L,f:j,H:P,I:O,j:U,L:X,m:$,M:Y,p:xi,q:Gi,Q:he,s:be,S:q,u:Z,U:ne,V:Q,w:oe,W:ee,x:null,X:null,y:G,Y:re,Z:H,"%":me},ct={a:Yi,A:Wi,b:nn,B:xo,c:null,d:te,e:te,f:ve,H:ue,I:de,j:Ee,L:Me,m:Ae,M:ke,p:bi,q:_i,Q:he,s:be,S:De,u:Ce,U:Oe,V:Ue,w:ge,W:Te,x:null,X:null,y:ce,Y:ye,Z:Le,"%":me},Sr={a:Ot,A:Lt,b:yn,B:Gt,c:Rt,d:g,e:g,f:D,H:A,I:A,j:c,L:E,m:_,M:h,p:Hr,q:d,Q:I,s:F,S:R,u:w,U:M,V:m,w:y,W:k,x:nt,X:Ft,y:x,Y:S,Z:T,"%":N};mr.x=Ur(Qe,mr),mr.X=Ur(Ve,mr),mr.c=Ur(Pe,mr),ct.x=Ur(Qe,ct),ct.X=Ur(Ve,ct),ct.c=Ur(Pe,ct);function Ur(kr,at){return function(vt){var gr=[],mn=-1,bt=0,xn=kr.length,Xr,Wa,hl;for(vt instanceof Date||(vt=new Date(+vt));++mn53)return null;"w"in gr||(gr.w=1),"Z"in gr?(bt=n(a(gr.y,0,1)),xn=bt.getUTCDay(),bt=xn>4||xn===0?r.utcMonday.ceil(bt):r.utcMonday(bt),bt=r.utcDay.offset(bt,(gr.V-1)*7),gr.y=bt.getUTCFullYear(),gr.m=bt.getUTCMonth(),gr.d=bt.getUTCDate()+(gr.w+6)%7):(bt=t(a(gr.y,0,1)),xn=bt.getDay(),bt=xn>4||xn===0?r.timeMonday.ceil(bt):r.timeMonday(bt),bt=r.timeDay.offset(bt,(gr.V-1)*7),gr.y=bt.getFullYear(),gr.m=bt.getMonth(),gr.d=bt.getDate()+(gr.w+6)%7)}else("W"in gr||"U"in gr)&&("w"in gr||(gr.w="u"in gr?gr.u%7:"W"in gr?1:0),xn="Z"in gr?n(a(gr.y,0,1)).getUTCDay():t(a(gr.y,0,1)).getDay(),gr.m=0,gr.d="W"in gr?(gr.w+6)%7+gr.W*7-(xn+5)%7:gr.w+gr.U*7-(xn+6)%7);return"Z"in gr?(gr.H+=gr.Z/100|0,gr.M+=gr.Z%100,n(gr)):t(gr)}}function zr(kr,at,vt,gr){for(var mn=0,bt=at.length,xn=vt.length,Xr,Wa;mn=xn)return-1;if(Xr=at.charCodeAt(mn++),Xr===37){if(Xr=at.charAt(mn++),Wa=Sr[Xr in i?at.charAt(mn++):Xr],!Wa||(gr=Wa(kr,vt,gr))<0)return-1}else if(Xr!=vt.charCodeAt(gr++))return-1}return gr}function Hr(kr,at,vt){var gr=Be.exec(at.slice(vt));return gr?(kr.p=je[gr[0].toLowerCase()],vt+gr[0].length):-1}function Ot(kr,at,vt){var gr=wr.exec(at.slice(vt));return gr?(kr.w=Cr[gr[0].toLowerCase()],vt+gr[0].length):-1}function Lt(kr,at,vt){var gr=nr.exec(at.slice(vt));return gr?(kr.w=hr[gr[0].toLowerCase()],vt+gr[0].length):-1}function yn(kr,at,vt){var gr=ft.exec(at.slice(vt));return gr?(kr.m=Yr[gr[0].toLowerCase()],vt+gr[0].length):-1}function Gt(kr,at,vt){var gr=Tr.exec(at.slice(vt));return gr?(kr.m=Ar[gr[0].toLowerCase()],vt+gr[0].length):-1}function Rt(kr,at,vt){return zr(kr,Pe,at,vt)}function nt(kr,at,vt){return zr(kr,Qe,at,vt)}function Ft(kr,at,vt){return zr(kr,Ve,at,vt)}function ha(kr){return K[kr.getDay()]}function Qn(kr){return se[kr.getDay()]}function Fn(kr){return Re[kr.getMonth()]}function wa(kr){return ae[kr.getMonth()]}function xi(kr){return ar[+(kr.getHours()>=12)]}function Gi(kr){return 1+~~(kr.getMonth()/3)}function Yi(kr){return K[kr.getUTCDay()]}function Wi(kr){return se[kr.getUTCDay()]}function nn(kr){return Re[kr.getUTCMonth()]}function xo(kr){return ae[kr.getUTCMonth()]}function bi(kr){return ar[+(kr.getUTCHours()>=12)]}function _i(kr){return 1+~~(kr.getUTCMonth()/3)}return{format:function(kr){var at=Ur(kr+="",mr);return at.toString=function(){return kr},at},parse:function(kr){var at=xt(kr+="",!1);return at.toString=function(){return kr},at},utcFormat:function(kr){var at=Ur(kr+="",ct);return at.toString=function(){return kr},at},utcParse:function(kr){var at=xt(kr+="",!0);return at.toString=function(){return kr},at}}}var i={"-":"",_:" ",0:"0"},l=/^\s*\d+/,u=/^%/,s=/[\\^$*+?|[\]().{}]/g;function f(we,Pe,Qe){var Ve=we<0?"-":"",ar=(Ve?-we:we)+"",se=ar.length;return Ve+(se68?1900:2e3),Qe+Ve[0].length):-1}function T(we,Pe,Qe){var Ve=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Pe.slice(Qe,Qe+6));return Ve?(we.Z=Ve[1]?0:-(Ve[2]+(Ve[3]||"00")),Qe+Ve[0].length):-1}function d(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+1));return Ve?(we.q=Ve[0]*3-3,Qe+Ve[0].length):-1}function _(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.m=Ve[0]-1,Qe+Ve[0].length):-1}function g(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.d=+Ve[0],Qe+Ve[0].length):-1}function c(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+3));return Ve?(we.m=0,we.d=+Ve[0],Qe+Ve[0].length):-1}function A(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.H=+Ve[0],Qe+Ve[0].length):-1}function h(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.M=+Ve[0],Qe+Ve[0].length):-1}function R(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+2));return Ve?(we.S=+Ve[0],Qe+Ve[0].length):-1}function E(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+3));return Ve?(we.L=+Ve[0],Qe+Ve[0].length):-1}function D(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe,Qe+6));return Ve?(we.L=Math.floor(Ve[0]/1e3),Qe+Ve[0].length):-1}function N(we,Pe,Qe){var Ve=u.exec(Pe.slice(Qe,Qe+1));return Ve?Qe+Ve[0].length:-1}function I(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe));return Ve?(we.Q=+Ve[0],Qe+Ve[0].length):-1}function F(we,Pe,Qe){var Ve=l.exec(Pe.slice(Qe));return Ve?(we.s=+Ve[0],Qe+Ve[0].length):-1}function L(we,Pe){return f(we.getDate(),Pe,2)}function P(we,Pe){return f(we.getHours(),Pe,2)}function O(we,Pe){return f(we.getHours()%12||12,Pe,2)}function U(we,Pe){return f(1+r.timeDay.count(r.timeYear(we),we),Pe,3)}function X(we,Pe){return f(we.getMilliseconds(),Pe,3)}function j(we,Pe){return X(we,Pe)+"000"}function $(we,Pe){return f(we.getMonth()+1,Pe,2)}function Y(we,Pe){return f(we.getMinutes(),Pe,2)}function q(we,Pe){return f(we.getSeconds(),Pe,2)}function Z(we){var Pe=we.getDay();return Pe===0?7:Pe}function ne(we,Pe){return f(r.timeSunday.count(r.timeYear(we)-1,we),Pe,2)}function Q(we,Pe){var Qe=we.getDay();return we=Qe>=4||Qe===0?r.timeThursday(we):r.timeThursday.ceil(we),f(r.timeThursday.count(r.timeYear(we),we)+(r.timeYear(we).getDay()===4),Pe,2)}function oe(we){return we.getDay()}function ee(we,Pe){return f(r.timeMonday.count(r.timeYear(we)-1,we),Pe,2)}function G(we,Pe){return f(we.getFullYear()%100,Pe,2)}function re(we,Pe){return f(we.getFullYear()%1e4,Pe,4)}function H(we){var Pe=we.getTimezoneOffset();return(Pe>0?"-":(Pe*=-1,"+"))+f(Pe/60|0,"0",2)+f(Pe%60,"0",2)}function te(we,Pe){return f(we.getUTCDate(),Pe,2)}function ue(we,Pe){return f(we.getUTCHours(),Pe,2)}function de(we,Pe){return f(we.getUTCHours()%12||12,Pe,2)}function Ee(we,Pe){return f(1+r.utcDay.count(r.utcYear(we),we),Pe,3)}function Me(we,Pe){return f(we.getUTCMilliseconds(),Pe,3)}function ve(we,Pe){return Me(we,Pe)+"000"}function Ae(we,Pe){return f(we.getUTCMonth()+1,Pe,2)}function ke(we,Pe){return f(we.getUTCMinutes(),Pe,2)}function De(we,Pe){return f(we.getUTCSeconds(),Pe,2)}function Ce(we){var Pe=we.getUTCDay();return Pe===0?7:Pe}function Oe(we,Pe){return f(r.utcSunday.count(r.utcYear(we)-1,we),Pe,2)}function Ue(we,Pe){var Qe=we.getUTCDay();return we=Qe>=4||Qe===0?r.utcThursday(we):r.utcThursday.ceil(we),f(r.utcThursday.count(r.utcYear(we),we)+(r.utcYear(we).getUTCDay()===4),Pe,2)}function ge(we){return we.getUTCDay()}function Te(we,Pe){return f(r.utcMonday.count(r.utcYear(we)-1,we),Pe,2)}function ce(we,Pe){return f(we.getUTCFullYear()%100,Pe,2)}function ye(we,Pe){return f(we.getUTCFullYear()%1e4,Pe,4)}function Le(){return"+0000"}function me(){return"%"}function he(we){return+we}function be(we){return Math.floor(+we/1e3)}var Se;ze({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function ze(we){return Se=o(we),e.timeFormat=Se.format,e.timeParse=Se.parse,e.utcFormat=Se.utcFormat,e.utcParse=Se.utcParse,Se}var Fe="%Y-%m-%dT%H:%M:%S.%LZ";function Ze(we){return we.toISOString()}var Ye=Date.prototype.toISOString?Ze:e.utcFormat(Fe);function Ge(we){var Pe=new Date(we);return isNaN(Pe)?null:Pe}var We=+new Date("2000-01-01T00:00:00.000Z")?Ge:e.utcParse(Fe);e.isoFormat=Ye,e.isoParse=We,e.timeFormatDefaultLocale=ze,e.timeFormatLocale=o,Object.defineProperty(e,"__esModule",{value:!0})})});var op=pe((bc,cb)=>{(function(e,r){typeof bc=="object"&&typeof cb!="undefined"?r(bc):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e.d3=e.d3||{}))})(bc,function(e){"use strict";function r(_){return Math.abs(_=Math.round(_))>=1e21?_.toLocaleString("en").replace(/,/g,""):_.toString(10)}function t(_,g){if((c=(_=g?_.toExponential(g-1):_.toExponential()).indexOf("e"))<0)return null;var c,A=_.slice(0,c);return[A.length>1?A[0]+A.slice(2):A,+_.slice(c+1)]}function n(_){return _=t(Math.abs(_)),_?_[1]:NaN}function a(_,g){return function(c,A){for(var h=c.length,R=[],E=0,D=_[0],N=0;h>0&&D>0&&(N+D+1>A&&(D=Math.max(1,A-N)),R.push(c.substring(h-=D,h+D)),!((N+=D+1)>A));)D=_[E=(E+1)%_.length];return R.reverse().join(g)}}function o(_){return function(g){return g.replace(/[0-9]/g,function(c){return _[+c]})}}var i=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(_){if(!(g=i.exec(_)))throw new Error("invalid format: "+_);var g;return new u({fill:g[1],align:g[2],sign:g[3],symbol:g[4],zero:g[5],width:g[6],comma:g[7],precision:g[8]&&g[8].slice(1),trim:g[9],type:g[10]})}l.prototype=u.prototype;function u(_){this.fill=_.fill===void 0?" ":_.fill+"",this.align=_.align===void 0?">":_.align+"",this.sign=_.sign===void 0?"-":_.sign+"",this.symbol=_.symbol===void 0?"":_.symbol+"",this.zero=!!_.zero,this.width=_.width===void 0?void 0:+_.width,this.comma=!!_.comma,this.precision=_.precision===void 0?void 0:+_.precision,this.trim=!!_.trim,this.type=_.type===void 0?"":_.type+""}u.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function s(_){e:for(var g=_.length,c=1,A=-1,h;c0&&(A=0);break}return A>0?_.slice(0,A)+_.slice(h+1):_}var f;function v(_,g){var c=t(_,g);if(!c)return _+"";var A=c[0],h=c[1],R=h-(f=Math.max(-8,Math.min(8,Math.floor(h/3)))*3)+1,E=A.length;return R===E?A:R>E?A+new Array(R-E+1).join("0"):R>0?A.slice(0,R)+"."+A.slice(R):"0."+new Array(1-R).join("0")+t(_,Math.max(0,g+R-1))[0]}function p(_,g){var c=t(_,g);if(!c)return _+"";var A=c[0],h=c[1];return h<0?"0."+new Array(-h).join("0")+A:A.length>h+1?A.slice(0,h+1)+"."+A.slice(h+1):A+new Array(h-A.length+2).join("0")}var b={"%":function(_,g){return(_*100).toFixed(g)},b:function(_){return Math.round(_).toString(2)},c:function(_){return _+""},d:r,e:function(_,g){return _.toExponential(g)},f:function(_,g){return _.toFixed(g)},g:function(_,g){return _.toPrecision(g)},o:function(_){return Math.round(_).toString(8)},p:function(_,g){return p(_*100,g)},r:p,s:v,X:function(_){return Math.round(_).toString(16).toUpperCase()},x:function(_){return Math.round(_).toString(16)}};function y(_){return _}var w=Array.prototype.map,M=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function m(_){var g=_.grouping===void 0||_.thousands===void 0?y:a(w.call(_.grouping,Number),_.thousands+""),c=_.currency===void 0?"":_.currency[0]+"",A=_.currency===void 0?"":_.currency[1]+"",h=_.decimal===void 0?".":_.decimal+"",R=_.numerals===void 0?y:o(w.call(_.numerals,String)),E=_.percent===void 0?"%":_.percent+"",D=_.minus===void 0?"-":_.minus+"",N=_.nan===void 0?"NaN":_.nan+"";function I(L){L=l(L);var P=L.fill,O=L.align,U=L.sign,X=L.symbol,j=L.zero,$=L.width,Y=L.comma,q=L.precision,Z=L.trim,ne=L.type;ne==="n"?(Y=!0,ne="g"):b[ne]||(q===void 0&&(q=12),Z=!0,ne="g"),(j||P==="0"&&O==="=")&&(j=!0,P="0",O="=");var Q=X==="$"?c:X==="#"&&/[boxX]/.test(ne)?"0"+ne.toLowerCase():"",oe=X==="$"?A:/[%p]/.test(ne)?E:"",ee=b[ne],G=/[defgprs%]/.test(ne);q=q===void 0?6:/[gprs]/.test(ne)?Math.max(1,Math.min(21,q)):Math.max(0,Math.min(20,q));function re(H){var te=Q,ue=oe,de,Ee,Me;if(ne==="c")ue=ee(H)+ue,H="";else{H=+H;var ve=H<0||1/H<0;if(H=isNaN(H)?N:ee(Math.abs(H),q),Z&&(H=s(H)),ve&&+H==0&&U!=="+"&&(ve=!1),te=(ve?U==="("?U:D:U==="-"||U==="("?"":U)+te,ue=(ne==="s"?M[8+f/3]:"")+ue+(ve&&U==="("?")":""),G){for(de=-1,Ee=H.length;++deMe||Me>57){ue=(Me===46?h+H.slice(de+1):H.slice(de))+ue,H=H.slice(0,de);break}}}Y&&!j&&(H=g(H,1/0));var Ae=te.length+H.length+ue.length,ke=Ae<$?new Array($-Ae+1).join(P):"";switch(Y&&j&&(H=g(ke+H,ke.length?$-ue.length:1/0),ke=""),O){case"<":H=te+H+ue+ke;break;case"=":H=te+ke+H+ue;break;case"^":H=ke.slice(0,Ae=ke.length>>1)+te+H+ue+ke.slice(Ae);break;default:H=ke+te+H+ue;break}return R(H)}return re.toString=function(){return L+""},re}function F(L,P){var O=I((L=l(L),L.type="f",L)),U=Math.max(-8,Math.min(8,Math.floor(n(P)/3)))*3,X=Math.pow(10,-U),j=M[8+U/3];return function($){return O(X*$)+j}}return{format:I,formatPrefix:F}}var k;S({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function S(_){return k=m(_),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function x(_){return Math.max(0,-n(Math.abs(_)))}function T(_,g){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(g)/3)))*3-n(Math.abs(_)))}function d(_,g){return _=Math.abs(_),g=Math.abs(g)-_,Math.max(0,n(g)-n(_))+1}e.FormatSpecifier=u,e.formatDefaultLocale=S,e.formatLocale=m,e.formatSpecifier=l,e.precisionFixed=x,e.precisionPrefix=T,e.precisionRound=d,Object.defineProperty(e,"__esModule",{value:!0})})});var hb=pe((Oue,vb)=>{"use strict";vb.exports=function(e){for(var r=e.length,t,n=0;n13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}});var rt=pe((Bue,db)=>{"use strict";var RB=hb();db.exports=function(e){var r=typeof e;if(r==="string"){var t=e;if(e=+e,e===0&&RB(t))return!1}else if(r!=="number")return!1;return e-e<1}});var an=pe((Uue,pb)=>{"use strict";pb.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var lp=pe((_c,gb)=>{(function(e,r){typeof _c=="object"&&typeof gb!="undefined"?r(_c):(e=typeof globalThis!="undefined"?globalThis:e||self,r(e["base64-arraybuffer"]={}))})(_c,function(e){"use strict";for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],f+=r[(l[u]&3)<<4|l[u+1]>>4],f+=r[(l[u+1]&15)<<2|l[u+2]>>6],f+=r[l[u+2]&63];return s%3===2?f=f.substring(0,f.length-1)+"=":s%3===1&&(f=f.substring(0,f.length-2)+"=="),f},o=function(i){var l=i.length*.75,u=i.length,s,f=0,v,p,b,y;i[i.length-1]==="="&&(l--,i[i.length-2]==="="&&l--);var w=new ArrayBuffer(l),M=new Uint8Array(w);for(s=0;s>4,M[f++]=(p&15)<<4|b>>2,M[f++]=(b&3)<<6|y&63;return w};e.decode=o,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var wo=pe((Hue,yb)=>{"use strict";yb.exports=function(r){return window&&window.process&&window.process.versions?Object.prototype.toString.call(r)==="[object Object]":Object.prototype.toString.call(r)==="[object Object]"&&Object.getPrototypeOf(r).hasOwnProperty("hasOwnProperty")}});var ea=pe(Ja=>{"use strict";var DB=lp().decode,PB=wo(),sp=Array.isArray,FB=ArrayBuffer,IB=DataView;function mb(e){return FB.isView(e)&&!(e instanceof IB)}Ja.isTypedArray=mb;function wc(e){return sp(e)||mb(e)}Ja.isArrayOrTypedArray=wc;function NB(e){return!wc(e[0])}Ja.isArray1D=NB;Ja.ensureArray=function(e,r){return sp(e)||(e=[]),e.length=r,e};var hn={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};hn.uint8c=hn.u1c;hn.uint8=hn.u1;hn.int8=hn.i1;hn.uint16=hn.u2;hn.int16=hn.i2;hn.uint32=hn.u4;hn.int32=hn.i4;hn.float32=hn.f4;hn.float64=hn.f8;function up(e){return e.constructor===ArrayBuffer}Ja.isArrayBuffer=up;Ja.decodeTypedArraySpec=function(e){var r=[],t=zB(e),n=t.dtype,a=hn[n];if(!a)throw new Error('Error in dtype: "'+n+'"');var o=a.BYTES_PER_ELEMENT,i=t.bdata;up(i)||(i=DB(i));var l=t.shape===void 0?[i.byteLength/o]:(""+t.shape).split(",");l.reverse();var u=l.length,s,f,v=+l[0],p=o*v,b=0;if(u===1)r=new a(i);else if(u===2)for(s=+l[1],f=0;f{"use strict";var bb=rt(),cp=ea().isArrayOrTypedArray;Tb.exports=function(r,t){if(bb(t))t=String(t);else if(typeof t!="string"||t.substr(t.length-4)==="[-1]")throw"bad property string";var n=t.split("."),a,o,i,l;for(l=0;l{"use strict";var Ss=Mc(),HB=/^\w*$/,VB=0,Ab=1,Tc=2,kb=3,bl=4;Sb.exports=function(r,t,n,a){n=n||"name",a=a||"value";var o,i,l,u={};t&&t.length?(l=Ss(r,t),i=l.get()):i=r,t=t||"";var s={};if(i)for(o=0;o2)return u[b]=u[b]|Tc,v.set(p,null);if(f){for(o=b;o{"use strict";var GB=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,YB=/^[^\.\[\]]+$/;Eb.exports=function(e,r){for(;r;){var t=e.match(GB);if(t)e=t[1];else if(e.match(YB))e="";else throw new Error("bad relativeAttr call:"+[e,r]);if(r.charAt(0)==="^")r=r.slice(1);else break}return e&&r.charAt(0)!=="["?e+"."+r:e+r}});var Ac=pe((Xue,Rb)=>{"use strict";var WB=rt();Rb.exports=function(r,t){if(r>0)return Math.log(r)/Math.LN10;var n=Math.log(Math.min(t[0],t[1]))/Math.LN10;return WB(n)||(n=Math.log(Math.max(t[0],t[1]))/Math.LN10-6),n}});var Fb=pe((Zue,Pb)=>{"use strict";var Db=ea().isArrayOrTypedArray,nf=wo();Pb.exports=function e(r,t){for(var n in t){var a=t[n],o=r[n];if(o!==a)if(n.charAt(0)==="_"||typeof a=="function"){if(n in r)continue;r[n]=a}else if(Db(a)&&Db(o)&&nf(a[0])){if(n==="customdata"||n==="ids")continue;for(var i=Math.min(a.length,o.length),l=0;l{"use strict";function XB(e,r){var t=e%r;return t<0?t+r:t}function ZB(e,r){return Math.abs(e)>r/2?e-Math.round(e/r)*r:e}Ib.exports={mod:XB,modHalf:ZB}});var ka=pe((Kue,kc)=>{(function(e){var r=/^\s+/,t=/\s+$/,n=0,a=e.round,o=e.min,i=e.max,l=e.random;function u(G,re){if(G=G||"",re=re||{},G instanceof u)return G;if(!(this instanceof u))return new u(G,re);var H=s(G);this._originalInput=G,this._r=H.r,this._g=H.g,this._b=H.b,this._a=H.a,this._roundA=a(100*this._a)/100,this._format=re.format||H.format,this._gradientType=re.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=H.ok,this._tc_id=n++}u.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var G=this.toRgb();return(G.r*299+G.g*587+G.b*114)/1e3},getLuminance:function(){var G=this.toRgb(),re,H,te,ue,de,Ee;return re=G.r/255,H=G.g/255,te=G.b/255,re<=.03928?ue=re/12.92:ue=e.pow((re+.055)/1.055,2.4),H<=.03928?de=H/12.92:de=e.pow((H+.055)/1.055,2.4),te<=.03928?Ee=te/12.92:Ee=e.pow((te+.055)/1.055,2.4),.2126*ue+.7152*de+.0722*Ee},setAlpha:function(G){return this._a=L(G),this._roundA=a(100*this._a)/100,this},toHsv:function(){var G=b(this._r,this._g,this._b);return{h:G.h*360,s:G.s,v:G.v,a:this._a}},toHsvString:function(){var G=b(this._r,this._g,this._b),re=a(G.h*360),H=a(G.s*100),te=a(G.v*100);return this._a==1?"hsv("+re+", "+H+"%, "+te+"%)":"hsva("+re+", "+H+"%, "+te+"%, "+this._roundA+")"},toHsl:function(){var G=v(this._r,this._g,this._b);return{h:G.h*360,s:G.s,l:G.l,a:this._a}},toHslString:function(){var G=v(this._r,this._g,this._b),re=a(G.h*360),H=a(G.s*100),te=a(G.l*100);return this._a==1?"hsl("+re+", "+H+"%, "+te+"%)":"hsla("+re+", "+H+"%, "+te+"%, "+this._roundA+")"},toHex:function(G){return w(this._r,this._g,this._b,G)},toHexString:function(G){return"#"+this.toHex(G)},toHex8:function(G){return M(this._r,this._g,this._b,this._a,G)},toHex8String:function(G){return"#"+this.toHex8(G)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(P(this._r,255)*100)+"%",g:a(P(this._g,255)*100)+"%",b:a(P(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(P(this._r,255)*100)+"%, "+a(P(this._g,255)*100)+"%, "+a(P(this._b,255)*100)+"%)":"rgba("+a(P(this._r,255)*100)+"%, "+a(P(this._g,255)*100)+"%, "+a(P(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:I[w(this._r,this._g,this._b,!0)]||!1},toFilter:function(G){var re="#"+m(this._r,this._g,this._b,this._a),H=re,te=this._gradientType?"GradientType = 1, ":"";if(G){var ue=u(G);H="#"+m(ue._r,ue._g,ue._b,ue._a)}return"progid:DXImageTransform.Microsoft.gradient("+te+"startColorstr="+re+",endColorstr="+H+")"},toString:function(G){var re=!!G;G=G||this._format;var H=!1,te=this._a<1&&this._a>=0,ue=!re&&te&&(G==="hex"||G==="hex6"||G==="hex3"||G==="hex4"||G==="hex8"||G==="name");return ue?G==="name"&&this._a===0?this.toName():this.toRgbString():(G==="rgb"&&(H=this.toRgbString()),G==="prgb"&&(H=this.toPercentageRgbString()),(G==="hex"||G==="hex6")&&(H=this.toHexString()),G==="hex3"&&(H=this.toHexString(!0)),G==="hex4"&&(H=this.toHex8String(!0)),G==="hex8"&&(H=this.toHex8String()),G==="name"&&(H=this.toName()),G==="hsl"&&(H=this.toHslString()),G==="hsv"&&(H=this.toHsvString()),H||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(G,re){var H=G.apply(null,[this].concat([].slice.call(re)));return this._r=H._r,this._g=H._g,this._b=H._b,this.setAlpha(H._a),this},lighten:function(){return this._applyModification(T,arguments)},brighten:function(){return this._applyModification(d,arguments)},darken:function(){return this._applyModification(_,arguments)},desaturate:function(){return this._applyModification(k,arguments)},saturate:function(){return this._applyModification(S,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(g,arguments)},_applyCombination:function(G,re){return G.apply(null,[this].concat([].slice.call(re)))},analogous:function(){return this._applyCombination(E,arguments)},complement:function(){return this._applyCombination(c,arguments)},monochromatic:function(){return this._applyCombination(D,arguments)},splitcomplement:function(){return this._applyCombination(R,arguments)},triad:function(){return this._applyCombination(A,arguments)},tetrad:function(){return this._applyCombination(h,arguments)}},u.fromRatio=function(G,re){if(typeof G=="object"){var H={};for(var te in G)G.hasOwnProperty(te)&&(te==="a"?H[te]=G[te]:H[te]=Y(G[te]));G=H}return u(G,re)};function s(G){var re={r:0,g:0,b:0},H=1,te=null,ue=null,de=null,Ee=!1,Me=!1;return typeof G=="string"&&(G=oe(G)),typeof G=="object"&&(Q(G.r)&&Q(G.g)&&Q(G.b)?(re=f(G.r,G.g,G.b),Ee=!0,Me=String(G.r).substr(-1)==="%"?"prgb":"rgb"):Q(G.h)&&Q(G.s)&&Q(G.v)?(te=Y(G.s),ue=Y(G.v),re=y(G.h,te,ue),Ee=!0,Me="hsv"):Q(G.h)&&Q(G.s)&&Q(G.l)&&(te=Y(G.s),de=Y(G.l),re=p(G.h,te,de),Ee=!0,Me="hsl"),G.hasOwnProperty("a")&&(H=G.a)),H=L(H),{ok:Ee,format:G.format||Me,r:o(255,i(re.r,0)),g:o(255,i(re.g,0)),b:o(255,i(re.b,0)),a:H}}function f(G,re,H){return{r:P(G,255)*255,g:P(re,255)*255,b:P(H,255)*255}}function v(G,re,H){G=P(G,255),re=P(re,255),H=P(H,255);var te=i(G,re,H),ue=o(G,re,H),de,Ee,Me=(te+ue)/2;if(te==ue)de=Ee=0;else{var ve=te-ue;switch(Ee=Me>.5?ve/(2-te-ue):ve/(te+ue),te){case G:de=(re-H)/ve+(re1&&(De-=1),De<1/6?Ae+(ke-Ae)*6*De:De<1/2?ke:De<2/3?Ae+(ke-Ae)*(2/3-De)*6:Ae}if(re===0)te=ue=de=H;else{var Me=H<.5?H*(1+re):H+re-H*re,ve=2*H-Me;te=Ee(ve,Me,G+1/3),ue=Ee(ve,Me,G),de=Ee(ve,Me,G-1/3)}return{r:te*255,g:ue*255,b:de*255}}function b(G,re,H){G=P(G,255),re=P(re,255),H=P(H,255);var te=i(G,re,H),ue=o(G,re,H),de,Ee,Me=te,ve=te-ue;if(Ee=te===0?0:ve/te,te==ue)de=0;else{switch(te){case G:de=(re-H)/ve+(re>1)+720)%360;--re;)te.h=(te.h+ue)%360,de.push(u(te));return de}function D(G,re){re=re||6;for(var H=u(G).toHsv(),te=H.h,ue=H.s,de=H.v,Ee=[],Me=1/re;re--;)Ee.push(u({h:te,s:ue,v:de})),de=(de+Me)%1;return Ee}u.mix=function(G,re,H){H=H===0?0:H||50;var te=u(G).toRgb(),ue=u(re).toRgb(),de=H/100,Ee={r:(ue.r-te.r)*de+te.r,g:(ue.g-te.g)*de+te.g,b:(ue.b-te.b)*de+te.b,a:(ue.a-te.a)*de+te.a};return u(Ee)},u.readability=function(G,re){var H=u(G),te=u(re);return(e.max(H.getLuminance(),te.getLuminance())+.05)/(e.min(H.getLuminance(),te.getLuminance())+.05)},u.isReadable=function(G,re,H){var te=u.readability(G,re),ue,de;switch(de=!1,ue=ee(H),ue.level+ue.size){case"AAsmall":case"AAAlarge":de=te>=4.5;break;case"AAlarge":de=te>=3;break;case"AAAsmall":de=te>=7;break}return de},u.mostReadable=function(G,re,H){var te=null,ue=0,de,Ee,Me,ve;H=H||{},Ee=H.includeFallbackColors,Me=H.level,ve=H.size;for(var Ae=0;Aeue&&(ue=de,te=u(re[Ae]));return u.isReadable(G,te,{level:Me,size:ve})||!Ee?te:(H.includeFallbackColors=!1,u.mostReadable(G,["#fff","#000"],H))};var N=u.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},I=u.hexNames=F(N);function F(G){var re={};for(var H in G)G.hasOwnProperty(H)&&(re[G[H]]=H);return re}function L(G){return G=parseFloat(G),(isNaN(G)||G<0||G>1)&&(G=1),G}function P(G,re){X(G)&&(G="100%");var H=j(G);return G=o(re,i(0,parseFloat(G))),H&&(G=parseInt(G*re,10)/100),e.abs(G-re)<1e-6?1:G%re/parseFloat(re)}function O(G){return o(1,i(0,G))}function U(G){return parseInt(G,16)}function X(G){return typeof G=="string"&&G.indexOf(".")!=-1&&parseFloat(G)===1}function j(G){return typeof G=="string"&&G.indexOf("%")!=-1}function $(G){return G.length==1?"0"+G:""+G}function Y(G){return G<=1&&(G=G*100+"%"),G}function q(G){return e.round(parseFloat(G)*255).toString(16)}function Z(G){return U(G)/255}var ne=function(){var G="[-\\+]?\\d+%?",re="[-\\+]?\\d*\\.\\d+%?",H="(?:"+re+")|(?:"+G+")",te="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?",ue="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?";return{CSS_UNIT:new RegExp(H),rgb:new RegExp("rgb"+te),rgba:new RegExp("rgba"+ue),hsl:new RegExp("hsl"+te),hsla:new RegExp("hsla"+ue),hsv:new RegExp("hsv"+te),hsva:new RegExp("hsva"+ue),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Q(G){return!!ne.CSS_UNIT.exec(G)}function oe(G){G=G.replace(r,"").replace(t,"").toLowerCase();var re=!1;if(N[G])G=N[G],re=!0;else if(G=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var H;return(H=ne.rgb.exec(G))?{r:H[1],g:H[2],b:H[3]}:(H=ne.rgba.exec(G))?{r:H[1],g:H[2],b:H[3],a:H[4]}:(H=ne.hsl.exec(G))?{h:H[1],s:H[2],l:H[3]}:(H=ne.hsla.exec(G))?{h:H[1],s:H[2],l:H[3],a:H[4]}:(H=ne.hsv.exec(G))?{h:H[1],s:H[2],v:H[3]}:(H=ne.hsva.exec(G))?{h:H[1],s:H[2],v:H[3],a:H[4]}:(H=ne.hex8.exec(G))?{r:U(H[1]),g:U(H[2]),b:U(H[3]),a:Z(H[4]),format:re?"name":"hex8"}:(H=ne.hex6.exec(G))?{r:U(H[1]),g:U(H[2]),b:U(H[3]),format:re?"name":"hex"}:(H=ne.hex4.exec(G))?{r:U(H[1]+""+H[1]),g:U(H[2]+""+H[2]),b:U(H[3]+""+H[3]),a:Z(H[4]+""+H[4]),format:re?"name":"hex8"}:(H=ne.hex3.exec(G))?{r:U(H[1]+""+H[1]),g:U(H[2]+""+H[2]),b:U(H[3]+""+H[3]),format:re?"name":"hex"}:!1}function ee(G){var re,H;return G=G||{level:"AA",size:"small"},re=(G.level||"AA").toUpperCase(),H=(G.size||"small").toLowerCase(),re!=="AA"&&re!=="AAA"&&(re="AA"),H!=="small"&&H!=="large"&&(H="small"),{level:re,size:H}}typeof kc!="undefined"&&kc.exports?kc.exports=u:window.tinycolor=u})(Math)});var Mt=pe(lf=>{"use strict";var Nb=wo(),af=Array.isArray;function JB(e,r){var t,n;for(t=0;t{"use strict";zb.exports=function(e){var r=e.variantValues,t=e.editType,n=e.colorEditType;n===void 0&&(n=t);var a={editType:t,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(a.valType="enumerated",a.values=a.extras,a.extras=void 0,a.min=void 0,a.max=void 0);var o={family:{valType:"string",noBlank:!0,strict:!0,editType:t},size:{valType:"number",min:1,editType:t},color:{valType:"color",editType:n},weight:a,style:{editType:t,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:t,valType:"enumerated",values:r||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:t,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:t,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:t,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:t};return e.autoSize&&(o.size.dflt="auto"),e.autoColor&&(o.color.dflt="auto"),e.arrayOk&&(o.family.arrayOk=!0,o.weight.arrayOk=!0,o.style.arrayOk=!0,e.noFontVariant||(o.variant.arrayOk=!0),e.noFontTextcase||(o.textcase.arrayOk=!0),e.noFontLineposition||(o.lineposition.arrayOk=!0),e.noFontShadow||(o.shadow.arrayOk=!0),o.size.arrayOk=!0,o.color.arrayOk=!0),o}});var sf=pe((jue,qb)=>{"use strict";qb.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var _l=pe((efe,Ub)=>{"use strict";var Ob=sf(),Bb=kn(),vp=Bb({editType:"none"});vp.family.dflt=Ob.HOVERFONT;vp.size.dflt=Ob.HOVERFONTSIZE;Ub.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:vp,grouptitlefont:Bb({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var Ec=pe((rfe,Hb)=>{"use strict";var KB=kn(),Sc=_l().hoverlabel,Cc=Mt().extendFlat;Hb.exports={hoverlabel:{bgcolor:Cc({},Sc.bgcolor,{arrayOk:!0}),bordercolor:Cc({},Sc.bordercolor,{arrayOk:!0}),font:KB({arrayOk:!0,editType:"none"}),align:Cc({},Sc.align,{arrayOk:!0}),namelength:Cc({},Sc.namelength,{arrayOk:!0}),editType:"none"}}});var Sn=pe((tfe,Vb)=>{"use strict";var QB=kn(),$B=Ec();Vb.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:QB({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:$B.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var wl=pe((nfe,Wb)=>{"use strict";var jB=ka(),Lc={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Gb=Lc.RdBu;function eU(e,r){if(r||(r=Gb),!e)return r;function t(){try{e=Lc[e]||JSON.parse(e)}catch(n){e=r}}return typeof e=="string"&&(t(),typeof e=="string"&&t()),Yb(e)?e:r}function Yb(e){var r=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var t=0;t{"use strict";Ml.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];Ml.defaultLine="#444";Ml.lightLine="#eee";Ml.background="#fff";Ml.borderLine="#BEC8D9";Ml.lightFraction=100*10/11});var Zr=pe((ife,Xb)=>{"use strict";var ra=ka(),tU=rt(),nU=ea().isTypedArray,on=Xb.exports={},Rc=Ti();on.defaults=Rc.defaults;var aU=on.defaultLine=Rc.defaultLine;on.lightLine=Rc.lightLine;var dp=on.background=Rc.background;on.tinyRGB=function(e){var r=e.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"};on.rgb=function(e){return on.tinyRGB(ra(e))};on.opacity=function(e){return e?ra(e).getAlpha():0};on.addOpacity=function(e,r){var t=ra(e).toRgb();return"rgba("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+", "+r+")"};on.combine=function(e,r){var t=ra(e).toRgb();if(t.a===1)return ra(e).toRgbString();var n=ra(r||dp).toRgb(),a=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},o={r:a.r*(1-t.a)+t.r*t.a,g:a.g*(1-t.a)+t.g*t.a,b:a.b*(1-t.a)+t.b*t.a};return ra(o).toRgbString()};on.interpolate=function(e,r,t){var n=ra(e).toRgb(),a=ra(r).toRgb(),o={r:t*n.r+(1-t)*a.r,g:t*n.g+(1-t)*a.g,b:t*n.b+(1-t)*a.b};return ra(o).toRgbString()};on.contrast=function(e,r,t){var n=ra(e);n.getAlpha()!==1&&(n=ra(on.combine(e,dp)));var a=n.isDark()?r?n.lighten(r):dp:t?n.darken(t):aU;return a.toString()};on.stroke=function(e,r){var t=ra(r);e.style({stroke:on.tinyRGB(t),"stroke-opacity":t.getAlpha()})};on.fill=function(e,r){var t=ra(r);e.style({fill:on.tinyRGB(t),"fill-opacity":t.getAlpha()})};on.clean=function(e){if(!(!e||typeof e!="object")){var r=Object.keys(e),t,n,a,o;for(t=0;t=0)))return e;if(o===3)n[o]>1&&(n[o]=1);else if(n[o]>=1)return e}var i=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return a?"rgba("+i+", "+n[3]+")":"rgb("+i+")"}});var Dc=pe((ofe,Zb)=>{"use strict";Zb.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var Es=pe(Jb=>{"use strict";Jb.counter=function(e,r,t,n){var a=(r||"")+(t?"":"$"),o=n===!1?"":"^";return e==="xy"?new RegExp(o+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+a):new RegExp(o+e+"([2-9]|[1-9][0-9]+)?"+a)}});var jb=pe(ta=>{"use strict";var pp=rt(),Kb=ka(),Qb=Mt().extendFlat,iU=Sn(),oU=wl(),lU=Zr(),sU=Dc().DESELECTDIM,Ls=Mc(),$b=Es().counter,uU=Cs().modHalf,Ai=ea().isArrayOrTypedArray,Mo=ea().isTypedArraySpec,To=ea().decodeTypedArraySpec;ta.valObjectMeta={data_array:{coerceFunction:function(e,r,t){r.set(Ai(e)?e:Mo(e)?To(e):t)}},enumerated:{coerceFunction:function(e,r,t,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?r.set(t):r.set(e)},validateFunction:function(e,r){r.coerceNumber&&(e=+e);for(var t=r.values,n=0;nn.max?r.set(t):r.set(+e)}},integer:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}Mo(e)&&(e=To(e)),e%1||!pp(e)||n.min!==void 0&&en.max?r.set(t):r.set(+e)}},string:{coerceFunction:function(e,r,t,n){if(typeof e!="string"){var a=typeof e=="number";n.strict===!0||!a?r.set(t):r.set(String(e))}else n.noBlank&&!e?r.set(t):r.set(e)}},color:{coerceFunction:function(e,r,t){Mo(e)&&(e=To(e)),Kb(e).isValid()?r.set(e):r.set(t)}},colorlist:{coerceFunction:function(e,r,t){function n(a){return Kb(a).isValid()}!Array.isArray(e)||!e.length?r.set(t):e.every(n)?r.set(e):r.set(t)}},colorscale:{coerceFunction:function(e,r,t){r.set(oU.get(e,t))}},angle:{coerceFunction:function(e,r,t){Mo(e)&&(e=To(e)),e==="auto"?r.set("auto"):pp(e)?r.set(uU(+e,360)):r.set(t)}},subplotid:{coerceFunction:function(e,r,t,n){var a=n.regex||$b(t);if(typeof e=="string"&&a.test(e)){r.set(e);return}r.set(t)},validateFunction:function(e,r){var t=r.dflt;return e===t?!0:typeof e!="string"?!1:!!$b(t).test(e)}},flaglist:{coerceFunction:function(e,r,t,n){if((n.extras||[]).indexOf(e)!==-1){r.set(e);return}if(typeof e!="string"){r.set(t);return}for(var a=e.split("+"),o=0;o{"use strict";var e4={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},r4={};function t4(e,r){for(var t in e){var n=e[t];n.valType?r[t]=n.dflt:(r[t]||(r[t]={}),t4(n,r[t]))}}t4(e4,r4);n4.exports={configAttributes:e4,dfltConfig:r4}});var yp=pe((ffe,a4)=>{"use strict";var gp=it(),fU=rt(),uf=[];a4.exports=function(e,r){if(uf.indexOf(e)!==-1)return;uf.push(e);var t=1e3;fU(r)?t=r:r==="long"&&(t=3e3);var n=gp.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var a=n.selectAll(".notifier-note").data(uf);function o(i){i.duration(700).style("opacity",0).each("end",function(l){var u=uf.indexOf(l);u!==-1&&uf.splice(u,1),gp.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(i){var l=gp.select(this);l.append("button").classed("notifier-close",!0).html("×").on("click",function(){l.transition().call(o)});for(var u=l.append("p"),s=i.split(//g),f=0;f{"use strict";var Rs=Tl().dfltConfig,mp=yp(),xp=i4.exports={};xp.log=function(){var e;if(Rs.logging>1){var r=["LOG:"];for(e=0;e1){var t=[];for(e=0;e"),"long")}};xp.warn=function(){var e;if(Rs.logging>0){var r=["WARN:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}};xp.error=function(){var e;if(Rs.logging>0){var r=["ERROR:"];for(e=0;e0){var t=[];for(e=0;e"),"stick")}}});var Fc=pe((vfe,o4)=>{"use strict";o4.exports=function(){}});var bp=pe((hfe,l4)=>{"use strict";l4.exports=function(r,t){if(t instanceof RegExp){for(var n=t.toString(),a=0;a{s4.exports=cU;function cU(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var c4=pe((pfe,f4)=>{f4.exports=vU;function vU(e){var r=new Float32Array(16);return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}});var h4=pe((gfe,v4)=>{v4.exports=hU;function hU(e,r){return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var _p=pe((yfe,d4)=>{d4.exports=dU;function dU(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var g4=pe((mfe,p4)=>{p4.exports=pU;function pU(e,r){if(e===r){var t=r[1],n=r[2],a=r[3],o=r[6],i=r[7],l=r[11];e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=t,e[6]=r[9],e[7]=r[13],e[8]=n,e[9]=o,e[11]=r[14],e[12]=a,e[13]=i,e[14]=l}else e[0]=r[0],e[1]=r[4],e[2]=r[8],e[3]=r[12],e[4]=r[1],e[5]=r[5],e[6]=r[9],e[7]=r[13],e[8]=r[2],e[9]=r[6],e[10]=r[10],e[11]=r[14],e[12]=r[3],e[13]=r[7],e[14]=r[11],e[15]=r[15];return e}});var m4=pe((xfe,y4)=>{y4.exports=gU;function gU(e,r){var t=r[0],n=r[1],a=r[2],o=r[3],i=r[4],l=r[5],u=r[6],s=r[7],f=r[8],v=r[9],p=r[10],b=r[11],y=r[12],w=r[13],M=r[14],m=r[15],k=t*l-n*i,S=t*u-a*i,x=t*s-o*i,T=n*u-a*l,d=n*s-o*l,_=a*s-o*u,g=f*w-v*y,c=f*M-p*y,A=f*m-b*y,h=v*M-p*w,R=v*m-b*w,E=p*m-b*M,D=k*E-S*R+x*h+T*A-d*c+_*g;return D?(D=1/D,e[0]=(l*E-u*R+s*h)*D,e[1]=(a*R-n*E-o*h)*D,e[2]=(w*_-M*d+m*T)*D,e[3]=(p*d-v*_-b*T)*D,e[4]=(u*A-i*E-s*c)*D,e[5]=(t*E-a*A+o*c)*D,e[6]=(M*x-y*_-m*S)*D,e[7]=(f*_-p*x+b*S)*D,e[8]=(i*R-l*A+s*g)*D,e[9]=(n*A-t*R-o*g)*D,e[10]=(y*d-w*x+m*k)*D,e[11]=(v*x-f*d-b*k)*D,e[12]=(l*c-i*h-u*g)*D,e[13]=(t*h-n*c+a*g)*D,e[14]=(w*S-y*T-M*k)*D,e[15]=(f*T-v*S+p*k)*D,e):null}});var b4=pe((bfe,x4)=>{x4.exports=yU;function yU(e,r){var t=r[0],n=r[1],a=r[2],o=r[3],i=r[4],l=r[5],u=r[6],s=r[7],f=r[8],v=r[9],p=r[10],b=r[11],y=r[12],w=r[13],M=r[14],m=r[15];return e[0]=l*(p*m-b*M)-v*(u*m-s*M)+w*(u*b-s*p),e[1]=-(n*(p*m-b*M)-v*(a*m-o*M)+w*(a*b-o*p)),e[2]=n*(u*m-s*M)-l*(a*m-o*M)+w*(a*s-o*u),e[3]=-(n*(u*b-s*p)-l*(a*b-o*p)+v*(a*s-o*u)),e[4]=-(i*(p*m-b*M)-f*(u*m-s*M)+y*(u*b-s*p)),e[5]=t*(p*m-b*M)-f*(a*m-o*M)+y*(a*b-o*p),e[6]=-(t*(u*m-s*M)-i*(a*m-o*M)+y*(a*s-o*u)),e[7]=t*(u*b-s*p)-i*(a*b-o*p)+f*(a*s-o*u),e[8]=i*(v*m-b*w)-f*(l*m-s*w)+y*(l*b-s*v),e[9]=-(t*(v*m-b*w)-f*(n*m-o*w)+y*(n*b-o*v)),e[10]=t*(l*m-s*w)-i*(n*m-o*w)+y*(n*s-o*l),e[11]=-(t*(l*b-s*v)-i*(n*b-o*v)+f*(n*s-o*l)),e[12]=-(i*(v*M-p*w)-f*(l*M-u*w)+y*(l*p-u*v)),e[13]=t*(v*M-p*w)-f*(n*M-a*w)+y*(n*p-a*v),e[14]=-(t*(l*M-u*w)-i*(n*M-a*w)+y*(n*u-a*l)),e[15]=t*(l*p-u*v)-i*(n*p-a*v)+f*(n*u-a*l),e}});var w4=pe((_fe,_4)=>{_4.exports=mU;function mU(e){var r=e[0],t=e[1],n=e[2],a=e[3],o=e[4],i=e[5],l=e[6],u=e[7],s=e[8],f=e[9],v=e[10],p=e[11],b=e[12],y=e[13],w=e[14],M=e[15],m=r*i-t*o,k=r*l-n*o,S=r*u-a*o,x=t*l-n*i,T=t*u-a*i,d=n*u-a*l,_=s*y-f*b,g=s*w-v*b,c=s*M-p*b,A=f*w-v*y,h=f*M-p*y,R=v*M-p*w;return m*R-k*h+S*A+x*c-T*g+d*_}});var T4=pe((wfe,M4)=>{M4.exports=xU;function xU(e,r,t){var n=r[0],a=r[1],o=r[2],i=r[3],l=r[4],u=r[5],s=r[6],f=r[7],v=r[8],p=r[9],b=r[10],y=r[11],w=r[12],M=r[13],m=r[14],k=r[15],S=t[0],x=t[1],T=t[2],d=t[3];return e[0]=S*n+x*l+T*v+d*w,e[1]=S*a+x*u+T*p+d*M,e[2]=S*o+x*s+T*b+d*m,e[3]=S*i+x*f+T*y+d*k,S=t[4],x=t[5],T=t[6],d=t[7],e[4]=S*n+x*l+T*v+d*w,e[5]=S*a+x*u+T*p+d*M,e[6]=S*o+x*s+T*b+d*m,e[7]=S*i+x*f+T*y+d*k,S=t[8],x=t[9],T=t[10],d=t[11],e[8]=S*n+x*l+T*v+d*w,e[9]=S*a+x*u+T*p+d*M,e[10]=S*o+x*s+T*b+d*m,e[11]=S*i+x*f+T*y+d*k,S=t[12],x=t[13],T=t[14],d=t[15],e[12]=S*n+x*l+T*v+d*w,e[13]=S*a+x*u+T*p+d*M,e[14]=S*o+x*s+T*b+d*m,e[15]=S*i+x*f+T*y+d*k,e}});var k4=pe((Mfe,A4)=>{A4.exports=bU;function bU(e,r,t){var n=t[0],a=t[1],o=t[2],i,l,u,s,f,v,p,b,y,w,M,m;return r===e?(e[12]=r[0]*n+r[4]*a+r[8]*o+r[12],e[13]=r[1]*n+r[5]*a+r[9]*o+r[13],e[14]=r[2]*n+r[6]*a+r[10]*o+r[14],e[15]=r[3]*n+r[7]*a+r[11]*o+r[15]):(i=r[0],l=r[1],u=r[2],s=r[3],f=r[4],v=r[5],p=r[6],b=r[7],y=r[8],w=r[9],M=r[10],m=r[11],e[0]=i,e[1]=l,e[2]=u,e[3]=s,e[4]=f,e[5]=v,e[6]=p,e[7]=b,e[8]=y,e[9]=w,e[10]=M,e[11]=m,e[12]=i*n+f*a+y*o+r[12],e[13]=l*n+v*a+w*o+r[13],e[14]=u*n+p*a+M*o+r[14],e[15]=s*n+b*a+m*o+r[15]),e}});var C4=pe((Tfe,S4)=>{S4.exports=_U;function _U(e,r,t){var n=t[0],a=t[1],o=t[2];return e[0]=r[0]*n,e[1]=r[1]*n,e[2]=r[2]*n,e[3]=r[3]*n,e[4]=r[4]*a,e[5]=r[5]*a,e[6]=r[6]*a,e[7]=r[7]*a,e[8]=r[8]*o,e[9]=r[9]*o,e[10]=r[10]*o,e[11]=r[11]*o,e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}});var L4=pe((Afe,E4)=>{E4.exports=wU;function wU(e,r,t,n){var a=n[0],o=n[1],i=n[2],l=Math.sqrt(a*a+o*o+i*i),u,s,f,v,p,b,y,w,M,m,k,S,x,T,d,_,g,c,A,h,R,E,D,N;return Math.abs(l)<1e-6?null:(l=1/l,a*=l,o*=l,i*=l,u=Math.sin(t),s=Math.cos(t),f=1-s,v=r[0],p=r[1],b=r[2],y=r[3],w=r[4],M=r[5],m=r[6],k=r[7],S=r[8],x=r[9],T=r[10],d=r[11],_=a*a*f+s,g=o*a*f+i*u,c=i*a*f-o*u,A=a*o*f-i*u,h=o*o*f+s,R=i*o*f+a*u,E=a*i*f+o*u,D=o*i*f-a*u,N=i*i*f+s,e[0]=v*_+w*g+S*c,e[1]=p*_+M*g+x*c,e[2]=b*_+m*g+T*c,e[3]=y*_+k*g+d*c,e[4]=v*A+w*h+S*R,e[5]=p*A+M*h+x*R,e[6]=b*A+m*h+T*R,e[7]=y*A+k*h+d*R,e[8]=v*E+w*D+S*N,e[9]=p*E+M*D+x*N,e[10]=b*E+m*D+T*N,e[11]=y*E+k*D+d*N,r!==e&&(e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e)}});var D4=pe((kfe,R4)=>{R4.exports=MU;function MU(e,r,t){var n=Math.sin(t),a=Math.cos(t),o=r[4],i=r[5],l=r[6],u=r[7],s=r[8],f=r[9],v=r[10],p=r[11];return r!==e&&(e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[4]=o*a+s*n,e[5]=i*a+f*n,e[6]=l*a+v*n,e[7]=u*a+p*n,e[8]=s*a-o*n,e[9]=f*a-i*n,e[10]=v*a-l*n,e[11]=p*a-u*n,e}});var F4=pe((Sfe,P4)=>{P4.exports=TU;function TU(e,r,t){var n=Math.sin(t),a=Math.cos(t),o=r[0],i=r[1],l=r[2],u=r[3],s=r[8],f=r[9],v=r[10],p=r[11];return r!==e&&(e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=o*a-s*n,e[1]=i*a-f*n,e[2]=l*a-v*n,e[3]=u*a-p*n,e[8]=o*n+s*a,e[9]=i*n+f*a,e[10]=l*n+v*a,e[11]=u*n+p*a,e}});var N4=pe((Cfe,I4)=>{I4.exports=AU;function AU(e,r,t){var n=Math.sin(t),a=Math.cos(t),o=r[0],i=r[1],l=r[2],u=r[3],s=r[4],f=r[5],v=r[6],p=r[7];return r!==e&&(e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15]),e[0]=o*a+s*n,e[1]=i*a+f*n,e[2]=l*a+v*n,e[3]=u*a+p*n,e[4]=s*a-o*n,e[5]=f*a-i*n,e[6]=v*a-l*n,e[7]=p*a-u*n,e}});var q4=pe((Efe,z4)=>{z4.exports=kU;function kU(e,r,t){var n,a,o,i=t[0],l=t[1],u=t[2],s=Math.sqrt(i*i+l*l+u*u);return Math.abs(s)<1e-6?null:(s=1/s,i*=s,l*=s,u*=s,n=Math.sin(r),a=Math.cos(r),o=1-a,e[0]=i*i*o+a,e[1]=l*i*o+u*n,e[2]=u*i*o-l*n,e[3]=0,e[4]=i*l*o-u*n,e[5]=l*l*o+a,e[6]=u*l*o+i*n,e[7]=0,e[8]=i*u*o+l*n,e[9]=l*u*o-i*n,e[10]=u*u*o+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var B4=pe((Lfe,O4)=>{O4.exports=SU;function SU(e,r,t){var n=r[0],a=r[1],o=r[2],i=r[3],l=n+n,u=a+a,s=o+o,f=n*l,v=n*u,p=n*s,b=a*u,y=a*s,w=o*s,M=i*l,m=i*u,k=i*s;return e[0]=1-(b+w),e[1]=v+k,e[2]=p-m,e[3]=0,e[4]=v-k,e[5]=1-(f+w),e[6]=y+M,e[7]=0,e[8]=p+m,e[9]=y-M,e[10]=1-(f+b),e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var H4=pe((Rfe,U4)=>{U4.exports=CU;function CU(e,r){return e[0]=r[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=r[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var G4=pe((Dfe,V4)=>{V4.exports=EU;function EU(e,r){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var W4=pe((Pfe,Y4)=>{Y4.exports=LU;function LU(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=t,e[7]=0,e[8]=0,e[9]=-t,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Z4=pe((Ffe,X4)=>{X4.exports=RU;function RU(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=0,e[2]=-t,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=t,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var K4=pe((Ife,J4)=>{J4.exports=DU;function DU(e,r){var t=Math.sin(r),n=Math.cos(r);return e[0]=n,e[1]=t,e[2]=0,e[3]=0,e[4]=-t,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var wp=pe((Nfe,Q4)=>{Q4.exports=PU;function PU(e,r){var t=r[0],n=r[1],a=r[2],o=r[3],i=t+t,l=n+n,u=a+a,s=t*i,f=n*i,v=n*l,p=a*i,b=a*l,y=a*u,w=o*i,M=o*l,m=o*u;return e[0]=1-v-y,e[1]=f+m,e[2]=p-M,e[3]=0,e[4]=f-m,e[5]=1-s-y,e[6]=b+w,e[7]=0,e[8]=p+M,e[9]=b-w,e[10]=1-s-v,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var j4=pe((zfe,$4)=>{$4.exports=FU;function FU(e,r,t,n,a,o,i){var l=1/(t-r),u=1/(a-n),s=1/(o-i);return e[0]=o*2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=o*2*u,e[6]=0,e[7]=0,e[8]=(t+r)*l,e[9]=(a+n)*u,e[10]=(i+o)*s,e[11]=-1,e[12]=0,e[13]=0,e[14]=i*o*2*s,e[15]=0,e}});var r_=pe((qfe,e_)=>{e_.exports=IU;function IU(e,r,t,n,a){var o=1/Math.tan(r/2),i=1/(n-a);return e[0]=o/t,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=o,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(a+n)*i,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*n*i,e[15]=0,e}});var n_=pe((Ofe,t_)=>{t_.exports=NU;function NU(e,r,t,n){var a=Math.tan(r.upDegrees*Math.PI/180),o=Math.tan(r.downDegrees*Math.PI/180),i=Math.tan(r.leftDegrees*Math.PI/180),l=Math.tan(r.rightDegrees*Math.PI/180),u=2/(i+l),s=2/(a+o);return e[0]=u,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=-((i-l)*u*.5),e[9]=(a-o)*s*.5,e[10]=n/(t-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*t/(t-n),e[15]=0,e}});var i_=pe((Bfe,a_)=>{a_.exports=zU;function zU(e,r,t,n,a,o,i){var l=1/(r-t),u=1/(n-a),s=1/(o-i);return e[0]=-2*l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*s,e[11]=0,e[12]=(r+t)*l,e[13]=(a+n)*u,e[14]=(i+o)*s,e[15]=1,e}});var l_=pe((Ufe,o_)=>{var qU=_p();o_.exports=OU;function OU(e,r,t,n){var a,o,i,l,u,s,f,v,p,b,y=r[0],w=r[1],M=r[2],m=n[0],k=n[1],S=n[2],x=t[0],T=t[1],d=t[2];return Math.abs(y-x)<1e-6&&Math.abs(w-T)<1e-6&&Math.abs(M-d)<1e-6?qU(e):(f=y-x,v=w-T,p=M-d,b=1/Math.sqrt(f*f+v*v+p*p),f*=b,v*=b,p*=b,a=k*p-S*v,o=S*f-m*p,i=m*v-k*f,b=Math.sqrt(a*a+o*o+i*i),b?(b=1/b,a*=b,o*=b,i*=b):(a=0,o=0,i=0),l=v*i-p*o,u=p*a-f*i,s=f*o-v*a,b=Math.sqrt(l*l+u*u+s*s),b?(b=1/b,l*=b,u*=b,s*=b):(l=0,u=0,s=0),e[0]=a,e[1]=l,e[2]=f,e[3]=0,e[4]=o,e[5]=u,e[6]=v,e[7]=0,e[8]=i,e[9]=s,e[10]=p,e[11]=0,e[12]=-(a*y+o*w+i*M),e[13]=-(l*y+u*w+s*M),e[14]=-(f*y+v*w+p*M),e[15]=1,e)}});var u_=pe((Hfe,s_)=>{s_.exports=BU;function BU(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Mp=pe((Vfe,f_)=>{f_.exports={create:u4(),clone:c4(),copy:h4(),identity:_p(),transpose:g4(),invert:m4(),adjoint:b4(),determinant:w4(),multiply:T4(),translate:k4(),scale:C4(),rotate:L4(),rotateX:D4(),rotateY:F4(),rotateZ:N4(),fromRotation:q4(),fromRotationTranslation:B4(),fromScaling:H4(),fromTranslation:G4(),fromXRotation:W4(),fromYRotation:Z4(),fromZRotation:K4(),fromQuat:wp(),frustum:j4(),perspective:r_(),perspectiveFromFieldOfView:n_(),ortho:i_(),lookAt:l_(),str:u_()}});var Ic=pe(Ut=>{"use strict";var UU=Mp();Ut.init2dArray=function(e,r){for(var t=new Array(e),n=0;n{"use strict";var HU=it(),c_=Al(),VU=Ic(),GU=Mp();function YU(e){var r;if(typeof e=="string"){if(r=document.getElementById(e),r===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return r}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function WU(e){var r=HU.select(e);return r.node()instanceof HTMLElement&&r.size()&&r.classed("js-plotly-plot")}function v_(e){var r=e&&e.parentNode;r&&r.removeChild(e)}function XU(e,r){h_("global",e,r)}function h_(e,r,t){var n="plotly.js-style-"+e,a=document.getElementById(n);if(!(a&&a.matches(".no-inline-styles"))){a||(a=document.createElement("style"),a.setAttribute("id",n),a.appendChild(document.createTextNode("")),document.head.appendChild(a));var o=a.sheet;o?o.insertRule?o.insertRule(r+"{"+t+"}",0):o.addRule?o.addRule(r,t,0):c_.warn("addStyleRule failed"):c_.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function ZU(e){var r="plotly.js-style-"+e,t=document.getElementById(r);t&&v_(t)}function JU(e,r,t,n,a,o){var i=n.split(":"),l=a.split(":"),u="data-btn-style-event-added";o||(o=document),o.querySelectorAll(e).forEach(function(s){s.getAttribute(u)||(s.addEventListener("mouseenter",function(){var f=this.querySelector(t);f&&(f.style[i[0]]=i[1])}),s.addEventListener("mouseleave",function(){var f=this.querySelector(t);f&&(r&&this.matches(r)?f.style[i[0]]=i[1]:f.style[l[0]]=l[1])}),s.setAttribute(u,!0))})}function KU(e){var r=p_(e),t=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return r.forEach(function(n){var a=d_(n);if(a){var o=VU.convertCssMatrix(a);t=GU.multiply(t,t,o)}}),t}function d_(e){var r=window.getComputedStyle(e,null),t=r.getPropertyValue("-webkit-transform")||r.getPropertyValue("-moz-transform")||r.getPropertyValue("-ms-transform")||r.getPropertyValue("-o-transform")||r.getPropertyValue("transform");return t==="none"?null:t.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function p_(e){for(var r=[];QU(e);)r.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return r}function QU(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function $U(e,r){return e&&r&&e.top===r.top&&e.left===r.left&&e.right===r.right&&e.bottom===r.bottom}g_.exports={getGraphDiv:YU,isPlotDiv:WU,removeElement:v_,addStyleRule:XU,addRelatedStyleRule:h_,deleteRelatedStyleRule:ZU,setStyleOnHover:JU,getFullTransformMatrix:KU,getElementTransformMatrix:d_,getElementAndAncestors:p_,equalDomRects:$U}});var cf=pe((Wfe,y_)=>{"use strict";y_.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var zn=pe((Xfe,T_)=>{"use strict";var x_=Mt().extendFlat,jU=wo(),b_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},__={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},eH=b_.flags.slice().concat(["fullReplot"]),rH=__.flags.slice().concat("layoutReplot");T_.exports={traces:b_,layout:__,traceFlags:function(){return m_(eH)},layoutFlags:function(){return m_(rH)},update:function(e,r){var t=r.editType;if(t&&t!=="none")for(var n=t.split("+"),a=0;a{"use strict";Tp.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Tp.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Ap=pe((Jfe,A_)=>{"use strict";A_.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Sa=pe(Nc=>{"use strict";var k_=Ap(),Kfe=k_.FORMAT_LINK,Qfe=k_.DATE_FORMAT_LINK;function kp(e){var r=e.description?" "+e.description:"",t=e.keys||[];if(t.length>0){for(var n=[],a=0;a{"use strict";function ko(e,r){return r?r.d2l(e):e}function S_(e,r){return r?r.l2d(e):e}function tH(e){return e.x0}function nH(e){return e.x1}function aH(e){return e.y0}function iH(e){return e.y1}function C_(e){return e.x0shift||0}function E_(e){return e.x1shift||0}function L_(e){return e.y0shift||0}function R_(e){return e.y1shift||0}function zc(e,r){return ko(e.x1,r)+E_(e)-ko(e.x0,r)-C_(e)}function qc(e,r,t){return ko(e.y1,t)+R_(e)-ko(e.y0,t)-L_(e)}function oH(e,r){return Math.abs(zc(e,r))}function lH(e,r,t){return Math.abs(qc(e,r,t))}function sH(e,r,t){return e.type!=="line"?void 0:Math.sqrt(Math.pow(zc(e,r),2)+Math.pow(qc(e,r,t),2))}function uH(e,r){return S_((ko(e.x1,r)+E_(e)+ko(e.x0,r)+C_(e))/2,r)}function fH(e,r,t){return S_((ko(e.y1,t)+R_(e)+ko(e.y0,t)+L_(e))/2,t)}function cH(e,r,t){return e.type!=="line"?void 0:qc(e,r,t)/zc(e,r)}D_.exports={x0:tH,x1:nH,y0:aH,y1:iH,slope:cH,dx:zc,dy:qc,width:oH,height:lH,length:sH,xcenter:uH,ycenter:fH}});var I_=pe((e0e,F_)=>{"use strict";var vH=zn().overrideAll,kl=Sn(),P_=kn(),hH=Ao().dash,So=Mt().extendFlat,dH=Sa().shapeTexttemplateAttrs,pH=Oc();F_.exports=vH({newshape:{visible:So({},kl.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:So({},kl.legend,{}),legendgroup:So({},kl.legendgroup,{}),legendgrouptitle:{text:So({},kl.legendgrouptitle.text,{}),font:P_({})},legendrank:So({},kl.legendrank,{}),legendwidth:So({},kl.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:So({},hH,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:So({},kl.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:dH({newshape:!0},{keys:Object.keys(pH)}),font:P_({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var z_=pe((r0e,N_)=>{"use strict";var gH=Ao().dash,yH=Mt().extendFlat;N_.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:yH({},gH,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var Bc=pe((t0e,q_)=>{"use strict";q_.exports=function(e){var r=e.editType;return{t:{valType:"number",dflt:0,editType:r},r:{valType:"number",dflt:0,editType:r},b:{valType:"number",dflt:0,editType:r},l:{valType:"number",dflt:0,editType:r},editType:r}}});var Ds=pe((n0e,H_)=>{"use strict";var Sp=kn(),mH=cf(),Uc=Ti(),O_=I_(),B_=z_(),xH=Bc(),U_=Mt().extendFlat,Hc=Sp({editType:"calc"});Hc.family.dflt='"Open Sans", verdana, arial, sans-serif';Hc.size.dflt=12;Hc.color.dflt=Uc.defaultLine;H_.exports={font:Hc,title:{text:{valType:"string",editType:"layoutstyle"},font:Sp({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Sp({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:U_(xH({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:Uc.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:Uc.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:Uc.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:O_.newshape,activeshape:O_.activeshape,newselection:B_.newselection,activeselection:B_.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:U_({},mH.transition,{editType:"none"})}});var V_=ib(()=>{});var bH={};var G_=ib(()=>{V_()});var Er=pe(Jr=>{"use strict";var Ps=Al(),Y_=Fc(),W_=bp(),_H=wo(),wH=ff().addStyleRule,X_=Mt(),MH=Sn(),TH=Ds(),AH=X_.extendFlat,Cp=X_.extendDeepAll;Jr.modules={};Jr.allCategories={};Jr.allTypes=[];Jr.subplotsRegistry={};Jr.componentsRegistry={};Jr.layoutArrayContainers=[];Jr.layoutArrayRegexes=[];Jr.traceLayoutAttributes={};Jr.localeRegistry={};Jr.apiMethodRegistry={};Jr.collectableSubplotTypes=null;Jr.register=function(r){if(Jr.collectableSubplotTypes=null,r)r&&!Array.isArray(r)&&(r=[r]);else throw new Error("No argument passed to Plotly.register.");for(var t=0;t{"use strict";var RH=ks().timeFormat,a6=rt(),Ep=Al(),Eo=Cs().mod,Ns=an(),Ca=Ns.BADNUM,na=Ns.ONEDAY,vf=Ns.ONEHOUR,Co=Ns.ONEMIN,Is=Ns.ONESEC,hf=Ns.EPOCHJD,Zi=Er(),$_=ks().utcFormat,DH=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,PH=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,j_=new Date().getFullYear()-70;function Ji(e){return e&&Zi.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Ht.dateTick0=function(e,r){var t=FH(e,!!r);if(r<2)return t;var n=Ht.dateTime2ms(t,e);return n+=na*(r-1),Ht.ms2DateTime(n,0,e)};function FH(e,r){return Ji(e)?r?Zi.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:Zi.getComponentMethod("calendars","CANONICAL_TICK")[e]:r?"2000-01-02":"2000-01-01"}Ht.dfltRange=function(e){return Ji(e)?Zi.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Ht.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var Gc,Yc;Ht.dateTime2ms=function(e,r){if(Ht.isJSDate(e)){var t=e.getTimezoneOffset()*Co,n=(e.getUTCMinutes()-e.getMinutes())*Co+(e.getUTCSeconds()-e.getSeconds())*Is+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var a=3*Co;t=t-a/2+Eo(n-t+a/2,a)}return e=Number(e)-t,e>=Gc&&e<=Yc?e:Ca}if(typeof e!="string"&&typeof e!="number")return Ca;e=String(e);var o=Ji(r),i=e.charAt(0);o&&(i==="G"||i==="g")&&(e=e.substr(1),r="");var l=o&&r.substr(0,7)==="chinese",u=e.match(l?PH:DH);if(!u)return Ca;var s=u[1],f=u[3]||"1",v=Number(u[5]||1),p=Number(u[7]||0),b=Number(u[9]||0),y=Number(u[11]||0);if(o){if(s.length===2)return Ca;s=Number(s);var w;try{var M=Zi.getComponentMethod("calendars","getCal")(r);if(l){var m=f.charAt(f.length-1)==="i";f=parseInt(f,10),w=M.newDate(s,M.toMonthIndex(s,f,m),v)}else w=M.newDate(s,Number(f),v)}catch(S){return Ca}return w?(w.toJD()-hf)*na+p*vf+b*Co+y*Is:Ca}s.length===2?s=(Number(s)+2e3-j_)%100+j_:s=Number(s),f-=1;var k=new Date(Date.UTC(2e3,f,v,p,b));return k.setUTCFullYear(s),k.getUTCMonth()!==f||k.getUTCDate()!==v?Ca:k.getTime()+y*Is};Gc=Ht.MIN_MS=Ht.dateTime2ms("-9999");Yc=Ht.MAX_MS=Ht.dateTime2ms("9999-12-31 23:59:59.9999");Ht.isDateTime=function(e,r){return Ht.dateTime2ms(e,r)!==Ca};function Fs(e,r){return String(e+Math.pow(10,r)).substr(1)}var Vc=90*na,e6=3*vf,r6=5*Co;Ht.ms2DateTime=function(e,r,t){if(typeof e!="number"||!(e>=Gc&&e<=Yc))return Ca;r||(r=0);var n=Math.floor(Eo(e+.05,1)*10),a=Math.round(e-n/10),o,i,l,u,s,f;if(Ji(t)){var v=Math.floor(a/na)+hf,p=Math.floor(Eo(e,na));try{o=Zi.getComponentMethod("calendars","getCal")(t).fromJD(v).formatDate("yyyy-mm-dd")}catch(b){o=$_("G%Y-%m-%d")(new Date(a))}if(o.charAt(0)==="-")for(;o.length<11;)o="-0"+o.substr(1);else for(;o.length<10;)o="0"+o;i=r=Gc+na&&e<=Yc-na))return Ca;var r=Math.floor(Eo(e+.05,1)*10),t=new Date(Math.round(e-r/10)),n=RH("%Y-%m-%d")(t),a=t.getHours(),o=t.getMinutes(),i=t.getSeconds(),l=t.getUTCMilliseconds()*10+r;return i6(n,a,o,i,l)};function i6(e,r,t,n,a){if((r||t||n||a)&&(e+=" "+Fs(r,2)+":"+Fs(t,2),(n||a)&&(e+=":"+Fs(n,2),a))){for(var o=4;a%10===0;)o-=1,a/=10;e+="."+Fs(a,o)}return e}Ht.cleanDate=function(e,r,t){if(e===Ca)return r;if(Ht.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(Ji(t))return Ep.error("JS Dates and milliseconds are incompatible with world calendars",e),r;if(e=Ht.ms2DateTimeLocal(+e),!e&&r!==void 0)return r}else if(!Ht.isDateTime(e,t))return Ep.error("unrecognized date",e),r;return e};var IH=/%\d?f/g,NH=/%h/g,zH={1:"1",2:"1",3:"2",4:"2"};function t6(e,r,t,n){e=e.replace(IH,function(o){var i=Math.min(+o.charAt(1)||6,6),l=(r/1e3%1+2).toFixed(i).substr(2).replace(/0+$/,"")||"0";return l});var a=new Date(Math.floor(r+.05));if(e=e.replace(NH,function(){return zH[t("%q")(a)]}),Ji(n))try{e=Zi.getComponentMethod("calendars","worldCalFmt")(e,r,n)}catch(o){return"Invalid"}return t(e)(a)}var qH=[59,59.9,59.99,59.999,59.9999];function OH(e,r){var t=Eo(e+.05,na),n=Fs(Math.floor(t/vf),2)+":"+Fs(Eo(Math.floor(t/Co),60),2);if(r!=="M"){a6(r)||(r=0);var a=Math.min(Eo(e/Is,60),qH[r]),o=(100+a).toFixed(r).substr(1);r>0&&(o=o.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+o}return n}Ht.formatDate=function(e,r,t,n,a,o){if(a=Ji(a)&&a,!r)if(t==="y")r=o.year;else if(t==="m")r=o.month;else if(t==="d")r=o.dayMonth+` diff --git a/dist/plotly-mapbox.js b/dist/plotly-mapbox.js index 858b27eada7..543cb756ec5 100644 --- a/dist/plotly-mapbox.js +++ b/dist/plotly-mapbox.js @@ -1,5 +1,5 @@ /** -* plotly.js (mapbox) v3.0.3 +* plotly.js (mapbox) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -38,7 +38,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-mapbox.min.js b/dist/plotly-mapbox.min.js index bbb808b2f31..59e5ff3c374 100644 --- a/dist/plotly-mapbox.min.js +++ b/dist/plotly-mapbox.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (mapbox - minified) v3.0.3 +* plotly.js (mapbox - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var d7=Object.defineProperty;var QX=Object.getOwnPropertyDescriptor;var $X=Object.getOwnPropertyNames;var ej=Object.prototype.hasOwnProperty;var p7=(e,t)=>()=>(e&&(t=e(e=0)),t);var de=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var tj=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $X(t))!ej.call(e,a)&&a!==r&&d7(e,a,{get:()=>t[a],enumerable:!(i=QX(t,a))||i.enumerable});return e};var rj=e=>tj(d7({},"__esModule",{value:!0}),e);var U1=de(m7=>{"use strict";m7.version="3.0.3"});var g7=de((y7,V1)=>{(function(t,r,i){r[t]=r[t]||i(),typeof V1!="undefined"&&V1.exports&&(V1.exports=r[t])})("Promise",typeof window!="undefined"?window:y7,function(){"use strict";var t,r,i,a=Object.prototype.toString,s=typeof setImmediate!="undefined"?function(q){return setImmediate(q)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(q,B,z,O){return Object.defineProperty(q,B,{value:z,writable:!0,configurable:O!==!1})}}catch(I){t=function(B,z,O){return B[z]=O,B}}i=function(){var q,B,z;function O(H,V){this.fn=H,this.self=V,this.next=void 0}return{add:function(V,W){z=new O(V,W),B?B.next=z:q=z,B=z,z=void 0},drain:function(){var V=q;for(q=B=r=void 0;V;)V.fn.call(V.self),V=V.next}}}();function l(I,q){i.add(I,q),r||(r=s(i.drain))}function f(I){var q,B=typeof I;return I!=null&&(B=="object"||B=="function")&&(q=I.then),typeof q=="function"?q:!1}function h(){for(var I=0;I0&&l(h,B))}catch(z){b.call(new S(B),z)}}}function b(I){var q=this;q.triggered||(q.triggered=!0,q.def&&(q=q.def),q.msg=I,q.state=2,q.chain.length>0&&l(h,q))}function T(I,q,B,z){for(var O=0;O{(function(){var e={version:"3.8.2"},t=[].slice,r=function(y){return t.call(y)},i=self.document;function a(y){return y&&(y.ownerDocument||y.document||y).documentElement}function s(y){return y&&(y.ownerDocument&&y.ownerDocument.defaultView||y.document&&y||y.defaultView)}if(i)try{r(i.documentElement.childNodes)[0].nodeType}catch(y){r=function(M){for(var D=M.length,N=new Array(D);D--;)N[D]=M[D];return N}}if(Date.now||(Date.now=function(){return+new Date}),i)try{i.createElement("DIV").style.setProperty("opacity",0,"")}catch(y){var l=this.Element.prototype,f=l.setAttribute,h=l.setAttributeNS,v=this.CSSStyleDeclaration.prototype,m=v.setProperty;l.setAttribute=function(M,D){f.call(this,M,D+"")},l.setAttributeNS=function(M,D,N){h.call(this,M,D,N+"")},v.setProperty=function(M,D,N){m.call(this,M,D+"",N)}}e.ascending=b;function b(y,M){return yM?1:y>=M?0:NaN}e.descending=function(y,M){return My?1:M>=y?0:NaN},e.min=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}return U},e.max=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}return U},e.extent=function(y,M){var D=-1,N=y.length,U,Z,$;if(arguments.length===1){for(;++D=Z){U=$=Z;break}for(;++DZ&&(U=Z),$=Z){U=$=Z;break}for(;++DZ&&(U=Z),$1)return $/(ae-1)},e.deviation=function(){var y=e.variance.apply(this,arguments);return y&&Math.sqrt(y)};function C(y){return{left:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)<0?N=Z+1:U=Z}return N},right:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)>0?U=Z:N=Z+1}return N}}}var P=C(b);e.bisectLeft=P.left,e.bisect=e.bisectRight=P.right,e.bisector=function(y){return C(y.length===1?function(M,D){return b(y(M),D)}:y)},e.shuffle=function(y,M,D){(N=arguments.length)<3&&(D=y.length,N<2&&(M=0));for(var N=D-M,U,Z;N;)Z=Math.random()*N--|0,U=y[N+M],y[N+M]=y[Z+M],y[Z+M]=U;return y},e.permute=function(y,M){for(var D=M.length,N=new Array(D);D--;)N[D]=y[M[D]];return N},e.pairs=function(y){for(var M=0,D=y.length-1,N,U=y[0],Z=new Array(D<0?0:D);M=0;)for($=y[M],D=$.length;--D>=0;)Z[--U]=$[D];return Z};var I=Math.abs;e.range=function(y,M,D){if(arguments.length<3&&(D=1,arguments.length<2&&(M=y,y=0)),(M-y)/D===1/0)throw new Error("infinite range");var N=[],U=q(I(D)),Z=-1,$;if(y*=U,M*=U,D*=U,D<0)for(;($=y+D*++Z)>M;)N.push($/U);else for(;($=y+D*++Z)=M.length)return U?U.call(y,ae):N?ae.sort(N):ae;for(var _e=-1,De=ae.length,Pe=M[me++],Je,ot,ze,Ue=new z,je;++_e=M.length)return X;var me=[],_e=D[ae++];return X.forEach(function(De,Pe){me.push({key:De,values:$(Pe,ae)})}),_e?me.sort(function(De,Pe){return _e(De.key,Pe.key)}):me}return y.map=function(X,ae){return Z(ae,X,0)},y.entries=function(X){return $(Z(e.map,X,0),0)},y.key=function(X){return M.push(X),y},y.sortKeys=function(X){return D[M.length-1]=X,y},y.sortValues=function(X){return N=X,y},y.rollup=function(X){return U=X,y},y},e.set=function(y){var M=new ve;if(y)for(var D=0,N=y.length;D=0&&(N=y.slice(D+1),y=y.slice(0,D)),y)return arguments.length<2?this[y].on(N):this[y].on(N,M);if(arguments.length===2){if(M==null)for(y in this)this.hasOwnProperty(y)&&this[y].on(N,null);return this}};function Le(y){var M=[],D=new z;function N(){for(var U=M,Z=-1,$=U.length,X;++Z<$;)(X=U[Z].on)&&X.apply(this,arguments);return y}return N.on=function(U,Z){var $=D.get(U),X;return arguments.length<2?$&&$.on:($&&($.on=null,M=M.slice(0,X=M.indexOf($)).concat(M.slice(X+1)),D.remove(U)),Z&&M.push(D.set(U,{on:Z})),y)},N}e.event=null;function Ke(){e.event.preventDefault()}function ht(){for(var y=e.event,M;M=y.sourceEvent;)y=M;return y}function it(y){for(var M=new Me,D=0,N=arguments.length;++D=0&&(D=y.slice(0,M))!=="xmlns"&&(y=y.slice(M+1)),$e.hasOwnProperty(D)?{space:$e[D],local:y}:y}},pt.attr=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node();return y=e.ns.qualify(y),y.local?D.getAttributeNS(y.space,y.local):D.getAttribute(y)}for(M in y)this.each(vt(M,y[M]));return this}return this.each(vt(y,M))};function vt(y,M){y=e.ns.qualify(y);function D(){this.removeAttribute(y)}function N(){this.removeAttributeNS(y.space,y.local)}function U(){this.setAttribute(y,M)}function Z(){this.setAttributeNS(y.space,y.local,M)}function $(){var ae=M.apply(this,arguments);ae==null?this.removeAttribute(y):this.setAttribute(y,ae)}function X(){var ae=M.apply(this,arguments);ae==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,ae)}return M==null?y.local?N:D:typeof M=="function"?y.local?X:$:y.local?Z:U}function et(y){return y.trim().replace(/\s+/g," ")}pt.classed=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node(),N=(y=Mt(y)).length,U=-1;if(M=D.classList){for(;++U=0;)(Z=D[N])&&(U&&U!==Z.nextSibling&&U.parentNode.insertBefore(Z,U),U=Z);return this},pt.sort=function(y){y=ft.apply(this,arguments);for(var M=-1,D=this.length;++M=M&&(M=U+1);!(ae=$[M])&&++M0&&(y=y.slice(0,U));var $=Vt.get(y);$&&(y=$,Z=Ht);function X(){var _e=this[N];_e&&(this.removeEventListener(y,_e,_e.$),delete this[N])}function ae(){var _e=Z(M,r(arguments));X.call(this),this.addEventListener(y,this[N]=_e,_e.$=D),_e._=M}function me(){var _e=new RegExp("^__on([^.]+)"+e.requote(y)+"$"),De;for(var Pe in this)if(De=Pe.match(_e)){var Je=this[Pe];this.removeEventListener(De[1],Je,Je.$),delete this[Pe]}}return U?M?ae:X:M?Ae:me}var Vt=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});i&&Vt.forEach(function(y){"on"+y in i&&Vt.remove(y)});function Kt(y,M){return function(D){var N=e.event;e.event=D,M[0]=this.__data__;try{y.apply(this,M)}finally{e.event=N}}}function Ht(y,M){var D=Kt(y,M);return function(N){var U=this,Z=N.relatedTarget;(!Z||Z!==U&&!(Z.compareDocumentPosition(U)&8))&&D.call(U,N)}}var Ot,er=0;function Mr(y){var M=".dragsuppress-"+ ++er,D="click"+M,N=e.select(s(y)).on("touchmove"+M,Ke).on("dragstart"+M,Ke).on("selectstart"+M,Ke);if(Ot==null&&(Ot="onselectstart"in y?!1:Te(y.style,"userSelect")),Ot){var U=a(y).style,Z=U[Ot];U[Ot]="none"}return function($){if(N.on(M,null),Ot&&(U[Ot]=Z),$){var X=function(){N.on(D,null)};N.on(D,function(){Ke(),X()},!0),setTimeout(X,0)}}}e.mouse=function(y){return Pt(y,ht())};var xr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Pt(y,M){M.changedTouches&&(M=M.changedTouches[0]);var D=y.ownerSVGElement||y;if(D.createSVGPoint){var N=D.createSVGPoint();if(xr<0){var U=s(y);if(U.scrollX||U.scrollY){D=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Z=D[0][0].getScreenCTM();xr=!(Z.f||Z.e),D.remove()}}return xr?(N.x=M.pageX,N.y=M.pageY):(N.x=M.clientX,N.y=M.clientY),N=N.matrixTransform(y.getScreenCTM().inverse()),[N.x,N.y]}var $=y.getBoundingClientRect();return[M.clientX-$.left-y.clientLeft,M.clientY-$.top-y.clientTop]}e.touch=function(y,M,D){if(arguments.length<3&&(D=M,M=ht().changedTouches),M){for(var N=0,U=M.length,Z;N0?1:y<0?-1:0}function Ea(y,M,D){return(M[0]-y[0])*(D[1]-y[1])-(M[1]-y[1])*(D[0]-y[0])}function Ii(y){return y>1?0:y<-1?dt:Math.acos(y)}function Ki(y){return y>1?Tr:y<-1?-Tr:Math.asin(y)}function yn(y){return((y=Math.exp(y))-1/y)/2}function Xi(y){return((y=Math.exp(y))+1/y)/2}function Jn(y){return((y=Math.exp(2*y))-1)/(y+1)}function En(y){return(y=Math.sin(y/2))*y}var Vi=Math.SQRT2,pa=2,Gr=4;e.interpolateZoom=function(y,M){var D=y[0],N=y[1],U=y[2],Z=M[0],$=M[1],X=M[2],ae=Z-D,me=$-N,_e=ae*ae+me*me,De,Pe;if(_e0&&(jt=jt.transition().duration($)),jt.call(nt.event)}function Dr(){Ue&&Ue.domain(ze.range().map(function(jt){return(jt-y.x)/y.k}).map(ze.invert)),ut&&ut.domain(je.range().map(function(jt){return(jt-y.y)/y.k}).map(je.invert))}function Ir(jt){X++||jt({type:"zoomstart"})}function ea(jt){Dr(),jt({type:"zoom",scale:y.k,translate:[y.x,y.y]})}function Ur(jt){--X||(jt({type:"zoomend"}),D=null)}function Kr(){var jt=this,Jr=ot.of(jt,arguments),oa=0,sa=e.select(s(jt)).on(me,$i).on(_e,xi),Ei=We(e.mouse(jt)),Oi=Mr(jt);ah.call(jt),Ir(Jr);function $i(){oa=1,fr(e.mouse(jt),Ei),ea(Jr)}function xi(){sa.on(me,null).on(_e,null),Oi(oa),Ur(Jr)}}function Ba(){var jt=this,Jr=ot.of(jt,arguments),oa={},sa=0,Ei,Oi=".zoom-"+e.event.changedTouches[0].identifier,$i="touchmove"+Oi,xi="touchend"+Oi,xn=[],br=e.select(jt),Vr=Mr(jt);Ti(),Ir(Jr),br.on(ae,null).on(Pe,Ti);function Fi(){var cn=e.touches(jt);return Ei=y.k,cn.forEach(function(pi){pi.identifier in oa&&(oa[pi.identifier]=We(pi))}),cn}function Ti(){var cn=e.event.target;e.select(cn).on($i,lo).on(xi,zn),xn.push(cn);for(var pi=e.event.changedTouches,jo=0,uo=pi.length;jo1){var Aa=ci[0],ui=ci[1],Nl=Aa[0]-ui[0],Hv=Aa[1]-ui[1];sa=Nl*Nl+Hv*Hv}}function lo(){var cn=e.touches(jt),pi,jo,uo,ci;ah.call(jt);for(var gf=0,Aa=cn.length;gf1?1:M,D=D<0?0:D>1?1:D,U=D<=.5?D*(1+M):D+M-D*M,N=2*D-U;function Z(X){return X>360?X-=360:X<0&&(X+=360),X<60?N+(U-N)*X/60:X<180?U:X<240?N+(U-N)*(240-X)/60:N}function $(X){return Math.round(Z(X)*255)}return new ua($(y+120),$(y),$(y-120))}e.hcl=ce;function ce(y,M,D){return this instanceof ce?(this.h=+y,this.c=+M,void(this.l=+D)):arguments.length<2?y instanceof ce?new ce(y.h,y.c,y.l):y instanceof rt?wr(y.l,y.a,y.b):wr((y=nr((y=e.rgb(y)).r,y.g,y.b)).l,y.a,y.b):new ce(y,M,D)}var Ee=ce.prototype=new ya;Ee.brighter=function(y){return new ce(this.h,this.c,Math.min(100,this.l+Ve*(arguments.length?y:1)))},Ee.darker=function(y){return new ce(this.h,this.c,Math.max(0,this.l-Ve*(arguments.length?y:1)))},Ee.rgb=function(){return Ne(this.h,this.c,this.l).rgb()};function Ne(y,M,D){return isNaN(y)&&(y=0),isNaN(M)&&(M=0),new rt(D,Math.cos(y*=Hr)*M,Math.sin(y)*M)}e.lab=rt;function rt(y,M,D){return this instanceof rt?(this.l=+y,this.a=+M,void(this.b=+D)):arguments.length<2?y instanceof rt?new rt(y.l,y.a,y.b):y instanceof ce?Ne(y.h,y.c,y.l):nr((y=ua(y)).r,y.g,y.b):new rt(y,M,D)}var Ve=18,yt=.95047,Dt=1,Ft=1.08883,tr=rt.prototype=new ya;tr.brighter=function(y){return new rt(Math.min(100,this.l+Ve*(arguments.length?y:1)),this.a,this.b)},tr.darker=function(y){return new rt(Math.max(0,this.l-Ve*(arguments.length?y:1)),this.a,this.b)},tr.rgb=function(){return Yt(this.l,this.a,this.b)};function Yt(y,M,D){var N=(y+16)/116,U=N+M/500,Z=N-D/200;return U=Yr(U)*yt,N=Yr(N)*Dt,Z=Yr(Z)*Ft,new ua(ca(3.2404542*U-1.5371385*N-.4985314*Z),ca(-.969266*U+1.8760108*N+.041556*Z),ca(.0556434*U-.2040259*N+1.0572252*Z))}function wr(y,M,D){return y>0?new ce(Math.atan2(D,M)*_a,Math.sqrt(M*M+D*D),y):new ce(NaN,NaN,y)}function Yr(y){return y>.206893034?y*y*y:(y-4/29)/7.787037}function Br(y){return y>.008856?Math.pow(y,1/3):7.787037*y+4/29}function ca(y){return Math.round(255*(y<=.00304?12.92*y:1.055*Math.pow(y,1/2.4)-.055))}e.rgb=ua;function ua(y,M,D){return this instanceof ua?(this.r=~~y,this.g=~~M,void(this.b=~~D)):arguments.length<2?y instanceof ua?new ua(y.r,y.g,y.b):$r(""+y,ua,se):new ua(y,M,D)}function Na(y){return new ua(y>>16,y>>8&255,y&255)}function ii(y){return Na(y)+""}var Wr=ua.prototype=new ya;Wr.brighter=function(y){y=Math.pow(.7,arguments.length?y:1);var M=this.r,D=this.g,N=this.b,U=30;return!M&&!D&&!N?new ua(U,U,U):(M&&M>4,N=N>>4|N,U=ae&240,U=U>>4|U,Z=ae&15,Z=Z<<4|Z):y.length===7&&(N=(ae&16711680)>>16,U=(ae&65280)>>8,Z=ae&255)),M(N,U,Z))}function ga(y,M,D){var N=Math.min(y/=255,M/=255,D/=255),U=Math.max(y,M,D),Z=U-N,$,X,ae=(U+N)/2;return Z?(X=ae<.5?Z/(U+N):Z/(2-U-N),y==U?$=(M-D)/Z+(M0&&ae<1?0:$),new le($,X,ae)}function nr(y,M,D){y=wi(y),M=wi(M),D=wi(D);var N=Br((.4124564*y+.3575761*M+.1804375*D)/yt),U=Br((.2126729*y+.7151522*M+.072175*D)/Dt),Z=Br((.0193339*y+.119192*M+.9503041*D)/Ft);return rt(116*U-16,500*(N-U),200*(U-Z))}function wi(y){return(y/=255)<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function La(y){var M=parseFloat(y);return y.charAt(y.length-1)==="%"?Math.round(M*2.55):M}var si=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});si.forEach(function(y,M){si.set(y,Na(M))});function fa(y){return typeof y=="function"?y:function(){return y}}e.functor=fa,e.xhr=Ln(Ce);function Ln(y){return function(M,D,N){return arguments.length===2&&typeof D=="function"&&(N=D,D=null),Co(M,D,y,N)}}function Co(y,M,D,N){var U={},Z=e.dispatch("beforesend","progress","load","error"),$={},X=new XMLHttpRequest,ae=null;self.XDomainRequest&&!("withCredentials"in X)&&/^(http(s)?:)?\/\//.test(y)&&(X=new XDomainRequest),"onload"in X?X.onload=X.onerror=me:X.onreadystatechange=function(){X.readyState>3&&me()};function me(){var _e=X.status,De;if(!_e&&Ga(X)||_e>=200&&_e<300||_e===304){try{De=D.call(U,X)}catch(Pe){Z.error.call(U,Pe);return}Z.load.call(U,De)}else Z.error.call(U,X)}return X.onprogress=function(_e){var De=e.event;e.event=_e;try{Z.progress.call(U,X)}finally{e.event=De}},U.header=function(_e,De){return _e=(_e+"").toLowerCase(),arguments.length<2?$[_e]:(De==null?delete $[_e]:$[_e]=De+"",U)},U.mimeType=function(_e){return arguments.length?(M=_e==null?null:_e+"",U):M},U.responseType=function(_e){return arguments.length?(ae=_e,U):ae},U.response=function(_e){return D=_e,U},["get","post"].forEach(function(_e){U[_e]=function(){return U.send.apply(U,[_e].concat(r(arguments)))}}),U.send=function(_e,De,Pe){if(arguments.length===2&&typeof De=="function"&&(Pe=De,De=null),X.open(_e,y,!0),M!=null&&!("accept"in $)&&($.accept=M+",*/*"),X.setRequestHeader)for(var Je in $)X.setRequestHeader(Je,$[Je]);return M!=null&&X.overrideMimeType&&X.overrideMimeType(M),ae!=null&&(X.responseType=ae),Pe!=null&&U.on("error",Pe).on("load",function(ot){Pe(null,ot)}),Z.beforesend.call(U,X),X.send(De==null?null:De),U},U.abort=function(){return X.abort(),U},e.rebind(U,Z,"on"),N==null?U:U.get(xs(N))}function xs(y){return y.length===1?function(M,D){y(M==null?D:null)}:y}function Ga(y){var M=y.responseType;return M&&M!=="text"?y.response:y.responseText}e.dsv=function(y,M){var D=new RegExp('["'+y+` +"use strict";var Plotly=(()=>{var d7=Object.defineProperty;var QX=Object.getOwnPropertyDescriptor;var $X=Object.getOwnPropertyNames;var ej=Object.prototype.hasOwnProperty;var p7=(e,t)=>()=>(e&&(t=e(e=0)),t);var de=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var tj=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of $X(t))!ej.call(e,a)&&a!==r&&d7(e,a,{get:()=>t[a],enumerable:!(i=QX(t,a))||i.enumerable});return e};var rj=e=>tj(d7({},"__esModule",{value:!0}),e);var U1=de(m7=>{"use strict";m7.version="3.0.2"});var g7=de((y7,V1)=>{(function(t,r,i){r[t]=r[t]||i(),typeof V1!="undefined"&&V1.exports&&(V1.exports=r[t])})("Promise",typeof window!="undefined"?window:y7,function(){"use strict";var t,r,i,a=Object.prototype.toString,s=typeof setImmediate!="undefined"?function(q){return setImmediate(q)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(q,B,z,O){return Object.defineProperty(q,B,{value:z,writable:!0,configurable:O!==!1})}}catch(I){t=function(B,z,O){return B[z]=O,B}}i=function(){var q,B,z;function O(H,V){this.fn=H,this.self=V,this.next=void 0}return{add:function(V,W){z=new O(V,W),B?B.next=z:q=z,B=z,z=void 0},drain:function(){var V=q;for(q=B=r=void 0;V;)V.fn.call(V.self),V=V.next}}}();function l(I,q){i.add(I,q),r||(r=s(i.drain))}function f(I){var q,B=typeof I;return I!=null&&(B=="object"||B=="function")&&(q=I.then),typeof q=="function"?q:!1}function h(){for(var I=0;I0&&l(h,B))}catch(z){b.call(new S(B),z)}}}function b(I){var q=this;q.triggered||(q.triggered=!0,q.def&&(q=q.def),q.msg=I,q.state=2,q.chain.length>0&&l(h,q))}function T(I,q,B,z){for(var O=0;O{(function(){var e={version:"3.8.2"},t=[].slice,r=function(y){return t.call(y)},i=self.document;function a(y){return y&&(y.ownerDocument||y.document||y).documentElement}function s(y){return y&&(y.ownerDocument&&y.ownerDocument.defaultView||y.document&&y||y.defaultView)}if(i)try{r(i.documentElement.childNodes)[0].nodeType}catch(y){r=function(M){for(var D=M.length,N=new Array(D);D--;)N[D]=M[D];return N}}if(Date.now||(Date.now=function(){return+new Date}),i)try{i.createElement("DIV").style.setProperty("opacity",0,"")}catch(y){var l=this.Element.prototype,f=l.setAttribute,h=l.setAttributeNS,v=this.CSSStyleDeclaration.prototype,m=v.setProperty;l.setAttribute=function(M,D){f.call(this,M,D+"")},l.setAttributeNS=function(M,D,N){h.call(this,M,D,N+"")},v.setProperty=function(M,D,N){m.call(this,M,D+"",N)}}e.ascending=b;function b(y,M){return yM?1:y>=M?0:NaN}e.descending=function(y,M){return My?1:M>=y?0:NaN},e.min=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DZ&&(U=Z)}return U},e.max=function(y,M){var D=-1,N=y.length,U,Z;if(arguments.length===1){for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}else{for(;++D=Z){U=Z;break}for(;++DU&&(U=Z)}return U},e.extent=function(y,M){var D=-1,N=y.length,U,Z,$;if(arguments.length===1){for(;++D=Z){U=$=Z;break}for(;++DZ&&(U=Z),$=Z){U=$=Z;break}for(;++DZ&&(U=Z),$1)return $/(ae-1)},e.deviation=function(){var y=e.variance.apply(this,arguments);return y&&Math.sqrt(y)};function C(y){return{left:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)<0?N=Z+1:U=Z}return N},right:function(M,D,N,U){for(arguments.length<3&&(N=0),arguments.length<4&&(U=M.length);N>>1;y(M[Z],D)>0?U=Z:N=Z+1}return N}}}var P=C(b);e.bisectLeft=P.left,e.bisect=e.bisectRight=P.right,e.bisector=function(y){return C(y.length===1?function(M,D){return b(y(M),D)}:y)},e.shuffle=function(y,M,D){(N=arguments.length)<3&&(D=y.length,N<2&&(M=0));for(var N=D-M,U,Z;N;)Z=Math.random()*N--|0,U=y[N+M],y[N+M]=y[Z+M],y[Z+M]=U;return y},e.permute=function(y,M){for(var D=M.length,N=new Array(D);D--;)N[D]=y[M[D]];return N},e.pairs=function(y){for(var M=0,D=y.length-1,N,U=y[0],Z=new Array(D<0?0:D);M=0;)for($=y[M],D=$.length;--D>=0;)Z[--U]=$[D];return Z};var I=Math.abs;e.range=function(y,M,D){if(arguments.length<3&&(D=1,arguments.length<2&&(M=y,y=0)),(M-y)/D===1/0)throw new Error("infinite range");var N=[],U=q(I(D)),Z=-1,$;if(y*=U,M*=U,D*=U,D<0)for(;($=y+D*++Z)>M;)N.push($/U);else for(;($=y+D*++Z)=M.length)return U?U.call(y,ae):N?ae.sort(N):ae;for(var _e=-1,De=ae.length,Pe=M[me++],Je,ot,ze,Ue=new z,je;++_e=M.length)return X;var me=[],_e=D[ae++];return X.forEach(function(De,Pe){me.push({key:De,values:$(Pe,ae)})}),_e?me.sort(function(De,Pe){return _e(De.key,Pe.key)}):me}return y.map=function(X,ae){return Z(ae,X,0)},y.entries=function(X){return $(Z(e.map,X,0),0)},y.key=function(X){return M.push(X),y},y.sortKeys=function(X){return D[M.length-1]=X,y},y.sortValues=function(X){return N=X,y},y.rollup=function(X){return U=X,y},y},e.set=function(y){var M=new ve;if(y)for(var D=0,N=y.length;D=0&&(N=y.slice(D+1),y=y.slice(0,D)),y)return arguments.length<2?this[y].on(N):this[y].on(N,M);if(arguments.length===2){if(M==null)for(y in this)this.hasOwnProperty(y)&&this[y].on(N,null);return this}};function Le(y){var M=[],D=new z;function N(){for(var U=M,Z=-1,$=U.length,X;++Z<$;)(X=U[Z].on)&&X.apply(this,arguments);return y}return N.on=function(U,Z){var $=D.get(U),X;return arguments.length<2?$&&$.on:($&&($.on=null,M=M.slice(0,X=M.indexOf($)).concat(M.slice(X+1)),D.remove(U)),Z&&M.push(D.set(U,{on:Z})),y)},N}e.event=null;function Ke(){e.event.preventDefault()}function ht(){for(var y=e.event,M;M=y.sourceEvent;)y=M;return y}function it(y){for(var M=new Me,D=0,N=arguments.length;++D=0&&(D=y.slice(0,M))!=="xmlns"&&(y=y.slice(M+1)),$e.hasOwnProperty(D)?{space:$e[D],local:y}:y}},pt.attr=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node();return y=e.ns.qualify(y),y.local?D.getAttributeNS(y.space,y.local):D.getAttribute(y)}for(M in y)this.each(vt(M,y[M]));return this}return this.each(vt(y,M))};function vt(y,M){y=e.ns.qualify(y);function D(){this.removeAttribute(y)}function N(){this.removeAttributeNS(y.space,y.local)}function U(){this.setAttribute(y,M)}function Z(){this.setAttributeNS(y.space,y.local,M)}function $(){var ae=M.apply(this,arguments);ae==null?this.removeAttribute(y):this.setAttribute(y,ae)}function X(){var ae=M.apply(this,arguments);ae==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,ae)}return M==null?y.local?N:D:typeof M=="function"?y.local?X:$:y.local?Z:U}function et(y){return y.trim().replace(/\s+/g," ")}pt.classed=function(y,M){if(arguments.length<2){if(typeof y=="string"){var D=this.node(),N=(y=Mt(y)).length,U=-1;if(M=D.classList){for(;++U=0;)(Z=D[N])&&(U&&U!==Z.nextSibling&&U.parentNode.insertBefore(Z,U),U=Z);return this},pt.sort=function(y){y=ft.apply(this,arguments);for(var M=-1,D=this.length;++M=M&&(M=U+1);!(ae=$[M])&&++M0&&(y=y.slice(0,U));var $=Vt.get(y);$&&(y=$,Z=Ht);function X(){var _e=this[N];_e&&(this.removeEventListener(y,_e,_e.$),delete this[N])}function ae(){var _e=Z(M,r(arguments));X.call(this),this.addEventListener(y,this[N]=_e,_e.$=D),_e._=M}function me(){var _e=new RegExp("^__on([^.]+)"+e.requote(y)+"$"),De;for(var Pe in this)if(De=Pe.match(_e)){var Je=this[Pe];this.removeEventListener(De[1],Je,Je.$),delete this[Pe]}}return U?M?ae:X:M?Ae:me}var Vt=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});i&&Vt.forEach(function(y){"on"+y in i&&Vt.remove(y)});function Kt(y,M){return function(D){var N=e.event;e.event=D,M[0]=this.__data__;try{y.apply(this,M)}finally{e.event=N}}}function Ht(y,M){var D=Kt(y,M);return function(N){var U=this,Z=N.relatedTarget;(!Z||Z!==U&&!(Z.compareDocumentPosition(U)&8))&&D.call(U,N)}}var Ot,er=0;function Mr(y){var M=".dragsuppress-"+ ++er,D="click"+M,N=e.select(s(y)).on("touchmove"+M,Ke).on("dragstart"+M,Ke).on("selectstart"+M,Ke);if(Ot==null&&(Ot="onselectstart"in y?!1:Te(y.style,"userSelect")),Ot){var U=a(y).style,Z=U[Ot];U[Ot]="none"}return function($){if(N.on(M,null),Ot&&(U[Ot]=Z),$){var X=function(){N.on(D,null)};N.on(D,function(){Ke(),X()},!0),setTimeout(X,0)}}}e.mouse=function(y){return Pt(y,ht())};var xr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Pt(y,M){M.changedTouches&&(M=M.changedTouches[0]);var D=y.ownerSVGElement||y;if(D.createSVGPoint){var N=D.createSVGPoint();if(xr<0){var U=s(y);if(U.scrollX||U.scrollY){D=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var Z=D[0][0].getScreenCTM();xr=!(Z.f||Z.e),D.remove()}}return xr?(N.x=M.pageX,N.y=M.pageY):(N.x=M.clientX,N.y=M.clientY),N=N.matrixTransform(y.getScreenCTM().inverse()),[N.x,N.y]}var $=y.getBoundingClientRect();return[M.clientX-$.left-y.clientLeft,M.clientY-$.top-y.clientTop]}e.touch=function(y,M,D){if(arguments.length<3&&(D=M,M=ht().changedTouches),M){for(var N=0,U=M.length,Z;N0?1:y<0?-1:0}function Ea(y,M,D){return(M[0]-y[0])*(D[1]-y[1])-(M[1]-y[1])*(D[0]-y[0])}function Ii(y){return y>1?0:y<-1?dt:Math.acos(y)}function Ki(y){return y>1?Tr:y<-1?-Tr:Math.asin(y)}function yn(y){return((y=Math.exp(y))-1/y)/2}function Xi(y){return((y=Math.exp(y))+1/y)/2}function Jn(y){return((y=Math.exp(2*y))-1)/(y+1)}function En(y){return(y=Math.sin(y/2))*y}var Vi=Math.SQRT2,pa=2,Gr=4;e.interpolateZoom=function(y,M){var D=y[0],N=y[1],U=y[2],Z=M[0],$=M[1],X=M[2],ae=Z-D,me=$-N,_e=ae*ae+me*me,De,Pe;if(_e0&&(jt=jt.transition().duration($)),jt.call(nt.event)}function Dr(){Ue&&Ue.domain(ze.range().map(function(jt){return(jt-y.x)/y.k}).map(ze.invert)),ut&&ut.domain(je.range().map(function(jt){return(jt-y.y)/y.k}).map(je.invert))}function Ir(jt){X++||jt({type:"zoomstart"})}function ea(jt){Dr(),jt({type:"zoom",scale:y.k,translate:[y.x,y.y]})}function Ur(jt){--X||(jt({type:"zoomend"}),D=null)}function Kr(){var jt=this,Jr=ot.of(jt,arguments),oa=0,sa=e.select(s(jt)).on(me,$i).on(_e,xi),Ei=We(e.mouse(jt)),Oi=Mr(jt);ah.call(jt),Ir(Jr);function $i(){oa=1,fr(e.mouse(jt),Ei),ea(Jr)}function xi(){sa.on(me,null).on(_e,null),Oi(oa),Ur(Jr)}}function Ba(){var jt=this,Jr=ot.of(jt,arguments),oa={},sa=0,Ei,Oi=".zoom-"+e.event.changedTouches[0].identifier,$i="touchmove"+Oi,xi="touchend"+Oi,xn=[],br=e.select(jt),Vr=Mr(jt);Ti(),Ir(Jr),br.on(ae,null).on(Pe,Ti);function Fi(){var cn=e.touches(jt);return Ei=y.k,cn.forEach(function(pi){pi.identifier in oa&&(oa[pi.identifier]=We(pi))}),cn}function Ti(){var cn=e.event.target;e.select(cn).on($i,lo).on(xi,zn),xn.push(cn);for(var pi=e.event.changedTouches,jo=0,uo=pi.length;jo1){var Aa=ci[0],ui=ci[1],Nl=Aa[0]-ui[0],Hv=Aa[1]-ui[1];sa=Nl*Nl+Hv*Hv}}function lo(){var cn=e.touches(jt),pi,jo,uo,ci;ah.call(jt);for(var gf=0,Aa=cn.length;gf1?1:M,D=D<0?0:D>1?1:D,U=D<=.5?D*(1+M):D+M-D*M,N=2*D-U;function Z(X){return X>360?X-=360:X<0&&(X+=360),X<60?N+(U-N)*X/60:X<180?U:X<240?N+(U-N)*(240-X)/60:N}function $(X){return Math.round(Z(X)*255)}return new ua($(y+120),$(y),$(y-120))}e.hcl=ce;function ce(y,M,D){return this instanceof ce?(this.h=+y,this.c=+M,void(this.l=+D)):arguments.length<2?y instanceof ce?new ce(y.h,y.c,y.l):y instanceof rt?wr(y.l,y.a,y.b):wr((y=nr((y=e.rgb(y)).r,y.g,y.b)).l,y.a,y.b):new ce(y,M,D)}var Ee=ce.prototype=new ya;Ee.brighter=function(y){return new ce(this.h,this.c,Math.min(100,this.l+Ve*(arguments.length?y:1)))},Ee.darker=function(y){return new ce(this.h,this.c,Math.max(0,this.l-Ve*(arguments.length?y:1)))},Ee.rgb=function(){return Ne(this.h,this.c,this.l).rgb()};function Ne(y,M,D){return isNaN(y)&&(y=0),isNaN(M)&&(M=0),new rt(D,Math.cos(y*=Hr)*M,Math.sin(y)*M)}e.lab=rt;function rt(y,M,D){return this instanceof rt?(this.l=+y,this.a=+M,void(this.b=+D)):arguments.length<2?y instanceof rt?new rt(y.l,y.a,y.b):y instanceof ce?Ne(y.h,y.c,y.l):nr((y=ua(y)).r,y.g,y.b):new rt(y,M,D)}var Ve=18,yt=.95047,Dt=1,Ft=1.08883,tr=rt.prototype=new ya;tr.brighter=function(y){return new rt(Math.min(100,this.l+Ve*(arguments.length?y:1)),this.a,this.b)},tr.darker=function(y){return new rt(Math.max(0,this.l-Ve*(arguments.length?y:1)),this.a,this.b)},tr.rgb=function(){return Yt(this.l,this.a,this.b)};function Yt(y,M,D){var N=(y+16)/116,U=N+M/500,Z=N-D/200;return U=Yr(U)*yt,N=Yr(N)*Dt,Z=Yr(Z)*Ft,new ua(ca(3.2404542*U-1.5371385*N-.4985314*Z),ca(-.969266*U+1.8760108*N+.041556*Z),ca(.0556434*U-.2040259*N+1.0572252*Z))}function wr(y,M,D){return y>0?new ce(Math.atan2(D,M)*_a,Math.sqrt(M*M+D*D),y):new ce(NaN,NaN,y)}function Yr(y){return y>.206893034?y*y*y:(y-4/29)/7.787037}function Br(y){return y>.008856?Math.pow(y,1/3):7.787037*y+4/29}function ca(y){return Math.round(255*(y<=.00304?12.92*y:1.055*Math.pow(y,1/2.4)-.055))}e.rgb=ua;function ua(y,M,D){return this instanceof ua?(this.r=~~y,this.g=~~M,void(this.b=~~D)):arguments.length<2?y instanceof ua?new ua(y.r,y.g,y.b):$r(""+y,ua,se):new ua(y,M,D)}function Na(y){return new ua(y>>16,y>>8&255,y&255)}function ii(y){return Na(y)+""}var Wr=ua.prototype=new ya;Wr.brighter=function(y){y=Math.pow(.7,arguments.length?y:1);var M=this.r,D=this.g,N=this.b,U=30;return!M&&!D&&!N?new ua(U,U,U):(M&&M>4,N=N>>4|N,U=ae&240,U=U>>4|U,Z=ae&15,Z=Z<<4|Z):y.length===7&&(N=(ae&16711680)>>16,U=(ae&65280)>>8,Z=ae&255)),M(N,U,Z))}function ga(y,M,D){var N=Math.min(y/=255,M/=255,D/=255),U=Math.max(y,M,D),Z=U-N,$,X,ae=(U+N)/2;return Z?(X=ae<.5?Z/(U+N):Z/(2-U-N),y==U?$=(M-D)/Z+(M0&&ae<1?0:$),new le($,X,ae)}function nr(y,M,D){y=wi(y),M=wi(M),D=wi(D);var N=Br((.4124564*y+.3575761*M+.1804375*D)/yt),U=Br((.2126729*y+.7151522*M+.072175*D)/Dt),Z=Br((.0193339*y+.119192*M+.9503041*D)/Ft);return rt(116*U-16,500*(N-U),200*(U-Z))}function wi(y){return(y/=255)<=.04045?y/12.92:Math.pow((y+.055)/1.055,2.4)}function La(y){var M=parseFloat(y);return y.charAt(y.length-1)==="%"?Math.round(M*2.55):M}var si=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});si.forEach(function(y,M){si.set(y,Na(M))});function fa(y){return typeof y=="function"?y:function(){return y}}e.functor=fa,e.xhr=Ln(Ce);function Ln(y){return function(M,D,N){return arguments.length===2&&typeof D=="function"&&(N=D,D=null),Co(M,D,y,N)}}function Co(y,M,D,N){var U={},Z=e.dispatch("beforesend","progress","load","error"),$={},X=new XMLHttpRequest,ae=null;self.XDomainRequest&&!("withCredentials"in X)&&/^(http(s)?:)?\/\//.test(y)&&(X=new XDomainRequest),"onload"in X?X.onload=X.onerror=me:X.onreadystatechange=function(){X.readyState>3&&me()};function me(){var _e=X.status,De;if(!_e&&Ga(X)||_e>=200&&_e<300||_e===304){try{De=D.call(U,X)}catch(Pe){Z.error.call(U,Pe);return}Z.load.call(U,De)}else Z.error.call(U,X)}return X.onprogress=function(_e){var De=e.event;e.event=_e;try{Z.progress.call(U,X)}finally{e.event=De}},U.header=function(_e,De){return _e=(_e+"").toLowerCase(),arguments.length<2?$[_e]:(De==null?delete $[_e]:$[_e]=De+"",U)},U.mimeType=function(_e){return arguments.length?(M=_e==null?null:_e+"",U):M},U.responseType=function(_e){return arguments.length?(ae=_e,U):ae},U.response=function(_e){return D=_e,U},["get","post"].forEach(function(_e){U[_e]=function(){return U.send.apply(U,[_e].concat(r(arguments)))}}),U.send=function(_e,De,Pe){if(arguments.length===2&&typeof De=="function"&&(Pe=De,De=null),X.open(_e,y,!0),M!=null&&!("accept"in $)&&($.accept=M+",*/*"),X.setRequestHeader)for(var Je in $)X.setRequestHeader(Je,$[Je]);return M!=null&&X.overrideMimeType&&X.overrideMimeType(M),ae!=null&&(X.responseType=ae),Pe!=null&&U.on("error",Pe).on("load",function(ot){Pe(null,ot)}),Z.beforesend.call(U,X),X.send(De==null?null:De),U},U.abort=function(){return X.abort(),U},e.rebind(U,Z,"on"),N==null?U:U.get(xs(N))}function xs(y){return y.length===1?function(M,D){y(M==null?D:null)}:y}function Ga(y){var M=y.responseType;return M&&M!=="text"?y.response:y.responseText}e.dsv=function(y,M){var D=new RegExp('["'+y+` ]`),N=y.charCodeAt(0);function U(me,_e,De){arguments.length<3&&(De=_e,_e=null);var Pe=Co(me,M,_e==null?Z:$(_e),De);return Pe.row=function(Je){return arguments.length?Pe.response((_e=Je)==null?Z:$(Je)):_e},Pe}function Z(me){return U.parse(me.responseText)}function $(me){return function(_e){return U.parse(_e.responseText,me)}}U.parse=function(me,_e){var De;return U.parseRows(me,function(Pe,Je){if(De)return De(Pe,Je-1);var ot=function(ze){for(var Ue={},je=Pe.length,ut=0;ut=ot)return Pe;if(ut)return ut=!1,De;var Gt=ze;if(me.charCodeAt(Gt)===34){for(var or=Gt;or++24?(isFinite(M)&&(clearTimeout(dl),dl=setTimeout(Nc,M)),Bi=0):(Bi=1,Qd(Nc))}e.timer.flush=function(){hv(),vv()};function hv(){for(var y=Date.now(),M=Kn;M;)y>=M.t&&M.c(y-M.t)&&(M.c=null),M=M.n;return y}function vv(){for(var y,M=Kn,D=1/0;M;)M.c?(M.t=0;--X)ze.push(U[me[De[X]][2]]);for(X=+Je;X1&&Ea(y[D[N-2]],y[D[N-1]],y[U])<=0;)--N;D[N++]=U}return D.slice(0,N)}function Ku(y,M){return y[0]-M[0]||y[1]-M[1]}e.geom.polygon=function(y){return He(y,Zf),y};var Zf=e.geom.polygon.prototype=[];Zf.area=function(){for(var y=-1,M=this.length,D,N=this[M-1],U=0;++yGe)X=X.L;else if($=M-an(X,D),$>Ge){if(!X.R){N=X;break}X=X.R}else{Z>-Ge?(N=X.P,U=X):$>-Ge?(N=X,U=X.N):N=U=X;break}var ae=oo(y);if(du.insert(N,ae),!(!N&&!U)){if(N===U){wa(N),U=oo(N.site),du.insert(ae,U),ae.edge=U.edge=Xs(N.site,ae.site),Cr(N),Cr(U);return}if(!U){ae.edge=Xs(N.site,ae.site);return}wa(N),wa(U);var me=N.site,_e=me.x,De=me.y,Pe=y.x-_e,Je=y.y-De,ot=U.site,ze=ot.x-_e,Ue=ot.y-De,je=2*(Pe*Ue-Je*ze),ut=Pe*Pe+Je*Je,nt=ze*ze+Ue*Ue,We={x:(Ue*ut-Je*nt)/je+_e,y:(Pe*nt-ze*ut)/je+De};us(U.edge,me,ot,We),ae.edge=Xs(me,y,null,We),U.edge=Xs(y,ot,null,We),Cr(N),Cr(U)}}function pu(y,M){var D=y.site,N=D.x,U=D.y,Z=U-M;if(!Z)return N;var $=y.P;if(!$)return-1/0;D=$.site;var X=D.x,ae=D.y,me=ae-M;if(!me)return X;var _e=X-N,De=1/Z-1/me,Pe=_e/me;return De?(-Pe+Math.sqrt(Pe*Pe-2*De*(_e*_e/(-2*me)-ae+me/2+U-Z/2)))/De+N:(N+X)/2}function an(y,M){var D=y.N;if(D)return pu(D,M);var N=y.site;return N.y===M?N.x:1/0}function yl(y){this.site=y,this.edges=[]}yl.prototype.prepare=function(){for(var y=this.edges,M=y.length,D;M--;)D=y[M].edge,(!D.b||!D.a)&&y.splice(M,1);return y.sort($u),y.length};function bs(y){for(var M=y[0][0],D=y[1][0],N=y[0][1],U=y[1][1],Z,$,X,ae,me=Go,_e=me.length,De,Pe,Je,ot,ze,Ue;_e--;)if(De=me[_e],!(!De||!De.prepare()))for(Je=De.edges,ot=Je.length,Pe=0;PeGe||I(ae-$)>Ge)&&(Je.splice(Pe,0,new _l(mu(De.site,Ue,I(X-M)Ge?{x:M,y:I(Z-M)Ge?{x:I($-U)Ge?{x:D,y:I(Z-D)Ge?{x:I($-N)=-bt)){var Pe=ae*ae+me*me,Je=_e*_e+Ue*Ue,ot=(Ue*Pe-me*Je)/De,ze=(ae*Je-_e*Pe)/De,Ue=ze+X,je=pv.pop()||new ef;je.arc=y,je.site=U,je.x=ot+$,je.y=Ue+Math.sqrt(ot*ot+ze*ze),je.cy=Ue,y.circle=je;for(var ut=null,nt=Qu._;nt;)if(je.y0)){if(ze/=Je,Je<0){if(ze0){if(ze>Pe)return;ze>De&&(De=ze)}if(ze=D-X,!(!Je&&ze<0)){if(ze/=Je,Je<0){if(ze>Pe)return;ze>De&&(De=ze)}else if(Je>0){if(ze0)){if(ze/=ot,ot<0){if(ze0){if(ze>Pe)return;ze>De&&(De=ze)}if(ze=N-ae,!(!ot&&ze<0)){if(ze/=ot,ot<0){if(ze>Pe)return;ze>De&&(De=ze)}else if(ot>0){if(ze0&&(U.a={x:X+De*Je,y:ae+De*ot}),Pe<1&&(U.b={x:X+Pe*Je,y:ae+Pe*ot}),U}}}}}}function ws(y){for(var M=ml,D=Ta(y[0][0],y[0][1],y[1][0],y[1][1]),N=M.length,U;N--;)U=M[N],(!gl(U,y)||!D(U)||I(U.a.x-U.b.x)=Z)return;if(_e>Pe){if(!N)N={x:ot,y:$};else if(N.y>=X)return;D={x:ot,y:X}}else{if(!N)N={x:ot,y:X};else if(N.y<$)return;D={x:ot,y:$}}}else if(Ue=(_e-Pe)/(Je-De),je=ze-Ue*ot,Ue<-1||Ue>1)if(_e>Pe){if(!N)N={x:($-je)/Ue,y:$};else if(N.y>=X)return;D={x:(X-je)/Ue,y:X}}else{if(!N)N={x:(X-je)/Ue,y:X};else if(N.y<$)return;D={x:($-je)/Ue,y:$}}else if(De=Z)return;D={x:Z,y:Ue*Z+je}}else{if(!N)N={x:Z,y:Ue*Z+je};else if(N.x=_e&&je.x<=Pe&&je.y>=De&&je.y<=Je?[[_e,Je],[Pe,Je],[Pe,De],[_e,De]]:[];ut.point=ae[ze]}),me}function X(ae){return ae.map(function(me,_e){return{x:Math.round(N(me,_e)/Ge)*Ge,y:Math.round(U(me,_e)/Ge)*Ge,i:_e}})}return $.links=function(ae){return yu(X(ae)).edges.filter(function(me){return me.l&&me.r}).map(function(me){return{source:ae[me.l.i],target:ae[me.r.i]}})},$.triangles=function(ae){var me=[];return yu(X(ae)).cells.forEach(function(_e,De){for(var Pe=_e.site,Je=_e.edges.sort($u),ot=-1,ze=Je.length,Ue,je,ut=Je[ze-1].edge,nt=ut.l===Pe?ut.r:ut.l;++otnt&&(nt=_e.x),_e.y>We&&(We=_e.y),Je.push(_e.x),ot.push(_e.y);else for(ze=0;zent&&(nt=Gt),or>We&&(We=or),Je.push(Gt),ot.push(or)}var fr=nt-je,lr=We-ut;fr>lr?We=ut+fr:nt=je+lr;function Dr(Ur,Kr,Ba,ri,$a,jt,Jr,oa){if(!(isNaN(Ba)||isNaN(ri)))if(Ur.leaf){var sa=Ur.x,Ei=Ur.y;if(sa!=null)if(I(sa-Ba)+I(Ei-ri)<.01)Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa);else{var Oi=Ur.point;Ur.x=Ur.y=Ur.point=null,Ir(Ur,Oi,sa,Ei,$a,jt,Jr,oa),Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa)}else Ur.x=Ba,Ur.y=ri,Ur.point=Kr}else Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa)}function Ir(Ur,Kr,Ba,ri,$a,jt,Jr,oa){var sa=($a+Jr)*.5,Ei=(jt+oa)*.5,Oi=Ba>=sa,$i=ri>=Ei,xi=$i<<1|Oi;Ur.leaf=!1,Ur=Ur.nodes[xi]||(Ur.nodes[xi]=gn()),Oi?$a=sa:Jr=sa,$i?jt=Ei:oa=Ei,Dr(Ur,Kr,Ba,ri,$a,jt,Jr,oa)}var ea=gn();if(ea.add=function(Ur){Dr(ea,Ur,+De(Ur,++ze),+Pe(Ur,ze),je,ut,nt,We)},ea.visit=function(Ur){Pn(Ur,ea,je,ut,nt,We)},ea.find=function(Ur){return rp(ea,Ur[0],Ur[1],je,ut,nt,We)},ze=-1,M==null){for(;++zeZ||Pe>$||Je=Gt,lr=D>=or,Dr=lr<<1|fr,Ir=Dr+4;DrD&&(Z=M.slice(D,Z),X[$]?X[$]+=Z:X[++$]=Z),(N=N[0])===(U=U[0])?X[$]?X[$]+=U:X[++$]=U:(X[++$]=null,ae.push({i:$,x:Eo(N,U)})),D=Xf.lastIndex;return D=0&&!(N=e.interpolators[D](y,M)););return N}e.interpolators=[function(y,M){var D=typeof M;return(D==="string"?si.has(M.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(M)?tf:Zo:M instanceof ya?tf:Array.isArray(M)?Yo:D==="object"&&isNaN(M)?nn:Eo)(y,M)}],e.interpolateArray=Yo;function Yo(y,M){var D=[],N=[],U=y.length,Z=M.length,$=Math.min(y.length,M.length),X;for(X=0;X<$;++X)D.push(on(y[X],M[X]));for(;X=0?y.slice(0,M):y,N=M>=0?y.slice(M+1):"in";return D=Sm.get(D)||js,N=Wo.get(N)||Ce,km(N(D.apply(null,t.call(arguments,1))))};function km(y){return function(M){return M<=0?0:M>=1?1:y(M)}}function Js(y){return function(M){return 1-y(1-M)}}function Dn(y){return function(M){return .5*(M<.5?y(2*M):2-y(2-2*M))}}function Cm(y){return y*y}function xl(y){return y*y*y}function bl(y){if(y<=0)return 0;if(y>=1)return 1;var M=y*y,D=M*y;return 4*(y<.5?D:3*(y-M)+D-.75)}function gv(y){return function(M){return Math.pow(M,y)}}function Em(y){return 1-Math.cos(y*Tr)}function Lm(y){return Math.pow(2,10*(y-1))}function Oc(y){return 1-Math.sqrt(1-y*y)}function Pm(y,M){var D;return arguments.length<2&&(M=.45),arguments.length?D=M/gr*Math.asin(1/y):(y=1,D=M/4),function(N){return 1+y*Math.pow(2,-10*N)*Math.sin((N-D)*gr/M)}}function Dm(y){return y||(y=1.70158),function(M){return M*M*((y+1)*M-y)}}function zm(y){return y<1/2.75?7.5625*y*y:y<2/2.75?7.5625*(y-=1.5/2.75)*y+.75:y<2.5/2.75?7.5625*(y-=2.25/2.75)*y+.9375:7.5625*(y-=2.625/2.75)*y+.984375}e.interpolateHcl=_v;function _v(y,M){y=e.hcl(y),M=e.hcl(M);var D=y.h,N=y.c,U=y.l,Z=M.h-D,$=M.c-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.c:N),isNaN(Z)?(Z=0,D=isNaN(D)?M.h:D):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return Ne(D+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateHsl=Im;function Im(y,M){y=e.hsl(y),M=e.hsl(M);var D=y.h,N=y.s,U=y.l,Z=M.h-D,$=M.s-N,X=M.l-U;return isNaN($)&&($=0,N=isNaN(N)?M.s:N),isNaN(Z)?(Z=0,D=isNaN(D)?M.h:D):Z>180?Z-=360:Z<-180&&(Z+=360),function(ae){return se(D+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateLab=Rm;function Rm(y,M){y=e.lab(y),M=e.lab(M);var D=y.l,N=y.a,U=y.b,Z=M.l-D,$=M.a-N,X=M.b-U;return function(ae){return Yt(D+Z*ae,N+$*ae,U+X*ae)+""}}e.interpolateRound=xv;function xv(y,M){return M-=y,function(D){return Math.round(y+M*D)}}e.transform=function(y){var M=i.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(D){if(D!=null){M.setAttribute("transform",D);var N=M.transform.baseVal.consolidate()}return new ap(N?N.matrix:wv)})(y)};function ap(y){var M=[y.a,y.b],D=[y.c,y.d],N=bv(M),U=ip(M,D),Z=bv(Fm(D,M,-U))||0;M[0]*D[1]180?M+=360:M-y>180&&(y+=360),N.push({i:D.push(gu(D)+"rotate(",null,")")-2,x:Eo(y,M)})):M&&D.push(gu(D)+"rotate("+M+")")}function op(y,M,D,N){y!==M?N.push({i:D.push(gu(D)+"skewX(",null,")")-2,x:Eo(y,M)}):M&&D.push(gu(D)+"skewX("+M+")")}function sp(y,M,D,N){if(y[0]!==M[0]||y[1]!==M[1]){var U=D.push(gu(D)+"scale(",null,",",null,")");N.push({i:U-4,x:Eo(y[0],M[0])},{i:U-2,x:Eo(y[1],M[1])})}else(M[0]!==1||M[1]!==1)&&D.push(gu(D)+"scale("+M+")")}function lp(y,M){var D=[],N=[];return y=e.transform(y),M=e.transform(M),np(y.translate,M.translate,D,N),qm(y.rotate,M.rotate,D,N),op(y.skew,M.skew,D,N),sp(y.scale,M.scale,D,N),y=M=null,function(U){for(var Z=-1,$=N.length,X;++Z<$;)D[(X=N[Z]).i]=X.x(U);return D.join("")}}function Nm(y,M){return M=(M-=y=+y)||1/M,function(D){return(D-y)/M}}function cs(y,M){return M=(M-=y=+y)||1/M,function(D){return Math.max(0,Math.min(1,(D-y)/M))}}e.layout={},e.layout.bundle=function(){return function(y){for(var M=[],D=-1,N=y.length;++D0?Z=We:(D.c=null,D.t=NaN,D=null,M.end({type:"end",alpha:Z=0})):We>0&&(M.start({type:"start",alpha:Z=We}),D=qc(y.tick)),y):Z},y.start=function(){var We,Gt=Je.length,or=ot.length,fr=N[0],lr=N[1],Dr,Ir;for(We=0;We=0;)Z.push(_e=me[ae]),_e.parent=X,_e.depth=X.depth+1;D&&(X.value=0),X.children=me}else D&&(X.value=+D.call(N,X,X.depth)||0),delete X.children;return hs(U,function(De){var Pe,Je;y&&(Pe=De.children)&&Pe.sort(y),D&&(Je=De.parent)&&(Je.value+=De.value)}),$}return N.sort=function(U){return arguments.length?(y=U,N):y},N.children=function(U){return arguments.length?(M=U,N):M},N.value=function(U){return arguments.length?(D=U,N):D},N.revalue=function(U){return D&&(rf(U,function(Z){Z.children&&(Z.value=0)}),hs(U,function(Z){var $;Z.children||(Z.value=+D.call(N,Z,Z.depth)||0),($=Z.parent)&&($.value+=Z.value)})),U},N};function Ml(y,M){return e.rebind(y,M,"sort","children","value"),y.nodes=y,y.links=cp,y}function rf(y,M){for(var D=[y];(y=D.pop())!=null;)if(M(y),(U=y.children)&&(N=U.length))for(var N,U;--N>=0;)D.push(U[N])}function hs(y,M){for(var D=[y],N=[];(y=D.pop())!=null;)if(N.push(y),($=y.children)&&(Z=$.length))for(var U=-1,Z,$;++UU&&(U=X),N.push(X)}for($=0;$N&&(D=M,N=U);return D}function Ri(y){return y.reduce(Hm,0)}function Hm(y,M){return y+M[1]}e.layout.histogram=function(){var y=!0,M=Number,D=dp,N=Zc;function U(Z,Pe){for(var X=[],ae=Z.map(M,this),me=D.call(this,ae,Pe),_e=N.call(this,me,ae,Pe),De,Pe=-1,Je=ae.length,ot=_e.length-1,ze=y?1:1/Je,Ue;++Pe0)for(Pe=-1;++Pe=me[0]&&Ue<=me[1]&&(De=X[e.bisect(_e,Ue,1,ot)-1],De.y+=ze,De.push(Z[Pe]));return X}return U.value=function(Z){return arguments.length?(M=Z,U):M},U.range=function(Z){return arguments.length?(D=fa(Z),U):D},U.bins=function(Z){return arguments.length?(N=typeof Z=="number"?function($){return kv($,Z)}:fa(Z),U):N},U.frequency=function(Z){return arguments.length?(y=!!Z,U):y},U};function Zc(y,M){return kv(y,Math.ceil(Math.log(M.length)/Math.LN2+1))}function kv(y,M){for(var D=-1,N=+y[0],U=(y[1]-N)/M,Z=[];++D<=M;)Z[D]=U*D+N;return Z}function dp(y){return[e.min(y),e.max(y)]}e.layout.pack=function(){var y=e.layout.hierarchy().sort(nf),M=0,D=[1,1],N;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me=D[0],_e=D[1],De=N==null?Math.sqrt:typeof N=="function"?N:function(){return N};if(ae.x=ae.y=0,hs(ae,function(Je){Je.r=+De(Je.value)}),hs(ae,Jf),M){var Pe=M*(N?1:Math.max(2*ae.r/me,2*ae.r/_e))/2;hs(ae,function(Je){Je.r+=Pe}),hs(ae,Jf),hs(ae,function(Je){Je.r-=Pe})}return kl(ae,me/2,_e/2,N?1:1/Math.max(2*ae.r/me,2*ae.r/_e)),X}return U.size=function(Z){return arguments.length?(D=Z,U):D},U.radius=function(Z){return arguments.length?(N=Z==null||typeof Z=="function"?Z:+Z,U):N},U.padding=function(Z){return arguments.length?(M=+Z,U):M},Ml(U,y)};function nf(y,M){return y.value-M.value}function _u(y,M){var D=y._pack_next;y._pack_next=M,M._pack_prev=y,M._pack_next=D,D._pack_prev=M}function Cv(y,M){y._pack_next=M,M._pack_prev=y}function _n(y,M){var D=M.x-y.x,N=M.y-y.y,U=y.r+M.r;return .999*U*U>D*D+N*N}function Jf(y){if(!(M=y.children)||!(Pe=M.length))return;var M,D=1/0,N=-1/0,U=1/0,Z=-1/0,$,X,ae,me,_e,De,Pe;function Je(We){D=Math.min(We.x-We.r,D),N=Math.max(We.x+We.r,N),U=Math.min(We.y-We.r,U),Z=Math.max(We.y+We.r,Z)}if(M.forEach(Ks),$=M[0],$.x=-$.r,$.y=0,Je($),Pe>1&&(X=M[1],X.x=X.r,X.y=0,Je(X),Pe>2))for(ae=M[2],Cl($,X,ae),Je(ae),_u($,ae),$._pack_prev=ae,_u(ae,X),X=$._pack_next,me=3;meUe.x&&(Ue=Gt),Gt.depth>je.depth&&(je=Gt)});var ut=M(ze,Ue)/2-ze.x,nt=D[0]/(Ue.x+M(Ue,ze)/2+ut),We=D[1]/(je.depth||1);rf(Je,function(Gt){Gt.x=(Gt.x+ut)*nt,Gt.y=Gt.depth*We})}return Pe}function Z(_e){for(var De={A:null,children:[_e]},Pe=[De],Je;(Je=Pe.pop())!=null;)for(var ot=Je.children,ze,Ue=0,je=ot.length;Ue0&&(El(Gm(ze,_e,Pe),_e,Gt),je+=Gt,ut+=Gt),nt+=ze.m,je+=Je.m,We+=Ue.m,ut+=ot.m;ze&&!Ss(ot)&&(ot.t=ze,ot.m+=nt-ut),Je&&!Ms(Ue)&&(Ue.t=Je,Ue.m+=je-We,Pe=_e)}return Pe}function me(_e){_e.x*=D[0],_e.y=_e.depth*D[1]}return U.separation=function(_e){return arguments.length?(M=_e,U):M},U.size=function(_e){return arguments.length?(N=(D=_e)==null?me:null,U):N?null:D},U.nodeSize=function(_e){return arguments.length?(N=(D=_e)==null?null:me,U):N?D:null},Ml(U,y)};function Qs(y,M){return y.parent==M.parent?1:2}function Ms(y){var M=y.children;return M.length?M[0]:y.t}function Ss(y){var M=y.children,D;return(D=M.length)?M[D-1]:y.t}function El(y,M,D){var N=D/(M.i-y.i);M.c-=N,M.s+=D,y.c+=N,M.z+=D,M.m+=D}function pp(y){for(var M=0,D=0,N=y.children,U=N.length,Z;--U>=0;)Z=N[U],Z.z+=M,Z.m+=M,M+=Z.s+(D+=Z.c)}function Gm(y,M,D){return y.a.parent===M.parent?y.a:D}e.layout.cluster=function(){var y=e.layout.hierarchy().sort(null).value(null),M=Qs,D=[1,1],N=!1;function U(Z,$){var X=y.call(this,Z,$),ae=X[0],me,_e=0;hs(ae,function(ze){var Ue=ze.children;Ue&&Ue.length?(ze.x=Ym(Ue),ze.y=Zm(Ue)):(ze.x=me?_e+=M(ze,me):0,ze.y=0,me=ze)});var De=mp(ae),Pe=yp(ae),Je=De.x-M(De,Pe)/2,ot=Pe.x+M(Pe,De)/2;return hs(ae,N?function(ze){ze.x=(ze.x-ae.x)*D[0],ze.y=(ae.y-ze.y)*D[1]}:function(ze){ze.x=(ze.x-Je)/(ot-Je)*D[0],ze.y=(1-(ae.y?ze.y/ae.y:1))*D[1]}),X}return U.separation=function(Z){return arguments.length?(M=Z,U):M},U.size=function(Z){return arguments.length?(N=(D=Z)==null,U):N?null:D},U.nodeSize=function(Z){return arguments.length?(N=(D=Z)!=null,U):N?D:null},Ml(U,y)};function Zm(y){return 1+e.max(y,function(M){return M.y})}function Ym(y){return y.reduce(function(M,D){return M+D.x},0)/y.length}function mp(y){var M=y.children;return M&&M.length?mp(M[0]):y}function yp(y){var M=y.children,D;return M&&(D=M.length)?yp(M[D-1]):y}e.layout.treemap=function(){var y=e.layout.hierarchy(),M=Math.round,D=[1,1],N=null,U=Ev,Z=!1,$,X="squarify",ae=.5*(1+Math.sqrt(5));function me(ze,Ue){for(var je=-1,ut=ze.length,nt,We;++je0;)ut.push(We=nt[lr-1]),ut.area+=We.area,X!=="squarify"||(or=Pe(ut,fr))<=Gt?(nt.pop(),Gt=or):(ut.area-=ut.pop().area,Je(ut,fr,je,!1),fr=Math.min(je.dx,je.dy),ut.length=ut.area=0,Gt=1/0);ut.length&&(Je(ut,fr,je,!0),ut.length=ut.area=0),Ue.forEach(_e)}}function De(ze){var Ue=ze.children;if(Ue&&Ue.length){var je=U(ze),ut=Ue.slice(),nt,We=[];for(me(ut,je.dx*je.dy/ze.value),We.area=0;nt=ut.pop();)We.push(nt),We.area+=nt.area,nt.z!=null&&(Je(We,nt.z?je.dx:je.dy,je,!ut.length),We.length=We.area=0);Ue.forEach(De)}}function Pe(ze,Ue){for(var je=ze.area,ut,nt=0,We=1/0,Gt=-1,or=ze.length;++Gtnt&&(nt=ut));return je*=je,Ue*=Ue,je?Math.max(Ue*nt*ae/je,je/(Ue*We*ae)):1/0}function Je(ze,Ue,je,ut){var nt=-1,We=ze.length,Gt=je.x,or=je.y,fr=Ue?M(ze.area/Ue):0,lr;if(Ue==je.dx){for((ut||fr>je.dy)&&(fr=je.dy);++ntje.dx)&&(fr=je.dx);++nt1);return y+M*N*Math.sqrt(-2*Math.log(Z)/Z)}},logNormal:function(){var y=e.random.normal.apply(e,arguments);return function(){return Math.exp(y())}},bates:function(y){var M=e.random.irwinHall(y);return function(){return M()/y}},irwinHall:function(y){return function(){for(var M=0,D=0;D2?Wm:gp,me=N?cs:Nm;return U=ae(y,M,me,D),Z=ae(M,y,me,on),X}function X(ae){return U(ae)}return X.invert=function(ae){return Z(ae)},X.domain=function(ae){return arguments.length?(y=ae.map(Number),$()):y},X.range=function(ae){return arguments.length?(M=ae,$()):M},X.rangeRound=function(ae){return X.range(ae).interpolate(xv)},X.clamp=function(ae){return arguments.length?(N=ae,$()):N},X.interpolate=function(ae){return arguments.length?(D=ae,$()):D},X.ticks=function(ae){return zv(y,ae)},X.tickFormat=function(ae,me){return d3_scale_linearTickFormat(y,ae,me)},X.nice=function(ae){return wp(y,ae),$()},X.copy=function(){return xp(y,M,D,N)},$()}function bp(y,M){return e.rebind(y,M,"range","rangeRound","interpolate","clamp")}function wp(y,M){return Pv(y,_p(Dv(y,M)[2])),Pv(y,_p(Dv(y,M)[2])),y}function Dv(y,M){M==null&&(M=10);var D=Kf(y),N=D[1]-D[0],U=Math.pow(10,Math.floor(Math.log(N/M)/Math.LN10)),Z=M/N*U;return Z<=.15?U*=10:Z<=.35?U*=5:Z<=.75&&(U*=2),D[0]=Math.ceil(D[0]/U)*U,D[1]=Math.floor(D[1]/U)*U+U*.5,D[2]=U,D}function zv(y,M){return e.range.apply(e,Dv(y,M))}var xu={s:1,g:1,p:1,r:1,e:1};function Ll(y){return-Math.floor(Math.log(y)/Math.LN10+.01)}function Qf(y,M){var D=Ll(M[2]);return y in xu?Math.abs(D-Ll(Math.max(I(M[0]),I(M[1]))))+ +(y!=="e"):D-(y==="%")*2}e.scale.log=function(){return Iv(e.scale.linear().domain([0,1]),10,!0,[1,10])};function Iv(y,M,D,N){function U(X){return(D?Math.log(X<0?0:X):-Math.log(X>0?0:-X))/Math.log(M)}function Z(X){return D?Math.pow(M,X):-Math.pow(M,-X)}function $(X){return y(U(X))}return $.invert=function(X){return Z(y.invert(X))},$.domain=function(X){return arguments.length?(D=X[0]>=0,y.domain((N=X.map(Number)).map(U)),$):N},$.base=function(X){return arguments.length?(M=+X,y.domain(N.map(U)),$):M},$.nice=function(){var X=Pv(N.map(U),D?Math:Wc);return y.domain(X),N=X.map(Z),$},$.ticks=function(){var X=Kf(N),ae=[],me=X[0],_e=X[1],De=Math.floor(U(me)),Pe=Math.ceil(U(_e)),Je=M%1?2:M;if(isFinite(Pe-De)){if(D){for(;De0;ot--)ae.push(Z(De)*ot);for(De=0;ae[De]_e;Pe--);ae=ae.slice(De,Pe)}return ae},$.copy=function(){return Iv(y.copy(),M,D,N)},bp($,y)}var Wc={floor:function(y){return-Math.ceil(-y)},ceil:function(y){return-Math.floor(-y)}};e.scale.pow=function(){return Xc(e.scale.linear(),1,[0,1])};function Xc(y,M,D){var N=jc(M),U=jc(1/M);function Z($){return y(N($))}return Z.invert=function($){return U(y.invert($))},Z.domain=function($){return arguments.length?(y.domain((D=$.map(Number)).map(N)),Z):D},Z.ticks=function($){return zv(D,$)},Z.tickFormat=function($,X){return d3_scale_linearTickFormat(D,$,X)},Z.nice=function($){return Z.domain(wp(D,$))},Z.exponent=function($){return arguments.length?(N=jc(M=$),U=jc(1/M),y.domain(D.map(N)),Z):M},Z.copy=function(){return Xc(y.copy(),M,D)},bp(Z,y)}function jc(y){return function(M){return M<0?-Math.pow(-M,y):Math.pow(M,y)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Pl([],{t:"range",a:[[]]})};function Pl(y,M){var D,N,U;function Z(X){return N[((D.get(X)||(M.t==="range"?D.set(X,y.push(X)):NaN))-1)%N.length]}function $(X,ae){return e.range(y.length).map(function(me){return X+ae*me})}return Z.domain=function(X){if(!arguments.length)return y;y=[],D=new z;for(var ae=-1,me=X.length,_e;++ae0?D[Z-1]:y[0],ZPe?0:1;if(_e=Er)return ae(_e,ot)+(me?ae(me,1-ot):"")+"Z";var ze,Ue,je,ut,nt=0,We=0,Gt,or,fr,lr,Dr,Ir,ea,Ur,Kr=[];if((ut=(+$.apply(this,arguments)||0)/2)&&(je=N===Dl?Math.sqrt(me*me+_e*_e):+N.apply(this,arguments),ot||(We*=-1),_e&&(We=Ki(je/_e*Math.sin(ut))),me&&(nt=Ki(je/me*Math.sin(ut)))),_e){Gt=_e*Math.cos(De+We),or=_e*Math.sin(De+We),fr=_e*Math.cos(Pe-We),lr=_e*Math.sin(Pe-We);var Ba=Math.abs(Pe-De-2*We)<=dt?0:1;if(We&&zl(Gt,or,fr,lr)===ot^Ba){var ri=(De+Pe)/2;Gt=_e*Math.cos(ri),or=_e*Math.sin(ri),fr=lr=null}}else Gt=or=0;if(me){Dr=me*Math.cos(Pe-nt),Ir=me*Math.sin(Pe-nt),ea=me*Math.cos(De+nt),Ur=me*Math.sin(De+nt);var $a=Math.abs(De-Pe+2*nt)<=dt?0:1;if(nt&&zl(Dr,Ir,ea,Ur)===1-ot^$a){var jt=(De+Pe)/2;Dr=me*Math.cos(jt),Ir=me*Math.sin(jt),ea=Ur=null}}else Dr=Ir=0;if(Je>Ge&&(ze=Math.min(Math.abs(_e-me)/2,+D.apply(this,arguments)))>.001){Ue=me<_e^ot?0:1;var Jr=ze,oa=ze;if(Je0?0:1}function wu(y,M,D,N,U){var Z=y[0]-M[0],$=y[1]-M[1],X=(U?N:-N)/Math.sqrt(Z*Z+$*$),ae=X*$,me=-X*Z,_e=y[0]+ae,De=y[1]+me,Pe=M[0]+ae,Je=M[1]+me,ot=(_e+Pe)/2,ze=(De+Je)/2,Ue=Pe-_e,je=Je-De,ut=Ue*Ue+je*je,nt=D-N,We=_e*Je-Pe*De,Gt=(je<0?-1:1)*Math.sqrt(Math.max(0,nt*nt*ut-We*We)),or=(We*je-Ue*Gt)/ut,fr=(-We*Ue-je*Gt)/ut,lr=(We*je+Ue*Gt)/ut,Dr=(-We*Ue+je*Gt)/ut,Ir=or-ot,ea=fr-ze,Ur=lr-ot,Kr=Dr-ze;return Ir*Ir+ea*ea>Ur*Ur+Kr*Kr&&(or=lr,fr=Dr),[[or-ae,fr-me],[or*D/nt,fr*D/nt]]}function ec(){return!0}function ks(y){var M=vu,D=pl,N=ec,U=Xo,Z=U.key,$=.7;function X(ae){var me=[],_e=[],De=-1,Pe=ae.length,Je,ot=fa(M),ze=fa(D);function Ue(){me.push("M",U(y(_e),$))}for(;++De1?y.join("L"):y+"Z"}function lf(y){return y.join("L")+"Z"}function jm(y){for(var M=0,D=y.length,N=y[0],U=[N[0],",",N[1]];++M1&&U.push("H",N[0]),U.join("")}function uf(y){for(var M=0,D=y.length,N=y[0],U=[N[0],",",N[1]];++M1){X=M[1],Z=y[ae],ae++,N+="C"+(U[0]+$[0])+","+(U[1]+$[1])+","+(Z[0]-X[0])+","+(Z[1]-X[1])+","+Z[0]+","+Z[1];for(var me=2;me9&&(Z=D*3/Math.sqrt(Z),$[X]=Z*N,$[X+1]=Z*U));for(X=-1;++X<=ae;)Z=(y[Math.min(ae,X+1)][0]-y[Math.max(0,X-1)][0])/(6*(1+$[X]*$[X])),M.push([Z||0,$[X]*Z||0]);return M}function Lp(y){return y.length<3?Xo(y):y[0]+ff(y,$m(y))}e.svg.line.radial=function(){var y=ks(Bv);return y.radius=y.x,delete y.x,y.angle=y.y,delete y.y,y};function Bv(y){for(var M,D=-1,N=y.length,U,Z;++Ddt)+",1 "+De}function me(_e,De,Pe,Je){return"Q 0,0 "+Je}return Z.radius=function(_e){return arguments.length?(D=fa(_e),Z):D},Z.source=function(_e){return arguments.length?(y=fa(_e),Z):y},Z.target=function(_e){return arguments.length?(M=fa(_e),Z):M},Z.startAngle=function(_e){return arguments.length?(N=fa(_e),Z):N},Z.endAngle=function(_e){return arguments.length?(U=fa(_e),Z):U},Z};function Pp(y){return y.radius}e.svg.diagonal=function(){var y=eh,M=Ov,D=Uv;function N(U,Z){var $=y.call(this,U,Z),X=M.call(this,U,Z),ae=($.y+X.y)/2,me=[$,{x:$.x,y:ae},{x:X.x,y:ae},X];return me=me.map(D),"M"+me[0]+"C"+me[1]+" "+me[2]+" "+me[3]}return N.source=function(U){return arguments.length?(y=fa(U),N):y},N.target=function(U){return arguments.length?(M=fa(U),N):M},N.projection=function(U){return arguments.length?(D=U,N):D},N};function Uv(y){return[y.x,y.y]}e.svg.diagonal.radial=function(){var y=e.svg.diagonal(),M=Uv,D=y.projection;return y.projection=function(N){return arguments.length?D(Dp(M=N)):M},y};function Dp(y){return function(){var M=y.apply(this,arguments),D=M[0],N=M[1]-Tr;return[D*Math.cos(N),D*Math.sin(N)]}}e.svg.symbol=function(){var y=df,M=zp;function D(N,U){return(rh.get(y.call(this,N,U))||th)(M.call(this,N,U))}return D.type=function(N){return arguments.length?(y=fa(N),D):y},D.size=function(N){return arguments.length?(M=fa(N),D):M},D};function zp(){return 64}function df(){return"circle"}function th(y){var M=Math.sqrt(y/dt);return"M0,"+M+"A"+M+","+M+" 0 1,1 0,"+-M+"A"+M+","+M+" 0 1,1 0,"+M+"Z"}var rh=e.map({circle:th,cross:function(y){var M=Math.sqrt(y/5)/2;return"M"+-3*M+","+-M+"H"+-M+"V"+-3*M+"H"+M+"V"+-M+"H"+3*M+"V"+M+"H"+M+"V"+3*M+"H"+-M+"V"+M+"H"+-3*M+"Z"},diamond:function(y){var M=Math.sqrt(y/(2*Vv)),D=M*Vv;return"M0,"+-M+"L"+D+",0 0,"+M+" "+-D+",0Z"},square:function(y){var M=Math.sqrt(y)/2;return"M"+-M+","+-M+"L"+M+","+-M+" "+M+","+M+" "+-M+","+M+"Z"},"triangle-down":function(y){var M=Math.sqrt(y/Au),D=M*Au/2;return"M0,"+D+"L"+M+","+-D+" "+-M+","+-D+"Z"},"triangle-up":function(y){var M=Math.sqrt(y/Au),D=M*Au/2;return"M0,"+-D+"L"+M+","+D+" "+-M+","+D+"Z"}});e.svg.symbolTypes=rh.keys();var Au=Math.sqrt(3),Vv=Math.tan(30*Hr);pt.transition=function(y){for(var M=so||++Ci,D=fi(y),N=[],U,Z,$=Es||{time:Date.now(),ease:bl,delay:0,duration:250},X=-1,ae=this.length;++X0;)De[--ut].call(y,je);if(Ue>=1)return $.event&&$.event.end.call(y,y.__data__,M),--Z.count?delete Z[N]:delete y[D],1}$||(X=U.time,ae=qc(Pe,0,X),$=Z[N]={tween:new z,time:X,timer:ae,delay:U.delay,duration:U.duration,ease:U.ease,index:M},U=null,++Z.count)}e.svg.axis=function(){var y=e.scale.linear(),M=Rl,D=6,N=6,U=3,Z=[10],$=null,X;function ae(me){me.each(function(){var _e=e.select(this),De=this.__chart__||y,Pe=this.__chart__=y.copy(),Je=$==null?Pe.ticks?Pe.ticks.apply(Pe,Z):Pe.domain():$,ot=X==null?Pe.tickFormat?Pe.tickFormat.apply(Pe,Z):Ce:X,ze=_e.selectAll(".tick").data(Je,Pe),Ue=ze.enter().insert("g",".domain").attr("class","tick").style("opacity",Ge),je=e.transition(ze.exit()).style("opacity",Ge).remove(),ut=e.transition(ze.order()).style("opacity",1),nt=Math.max(D,0)+U,We,Gt=Yc(Pe),or=_e.selectAll(".domain").data([0]),fr=(or.enter().append("path").attr("class","domain"),e.transition(or));Ue.append("line"),Ue.append("text");var lr=Ue.select("line"),Dr=ut.select("line"),Ir=ze.select("text").text(ot),ea=Ue.select("text"),Ur=ut.select("text"),Kr=M==="top"||M==="left"?-1:1,Ba,ri,$a,jt;if(M==="bottom"||M==="top"?(We=mf,Ba="x",$a="y",ri="x2",jt="y2",Ir.attr("dy",Kr<0?"0em":".71em").style("text-anchor","middle"),fr.attr("d","M"+Gt[0]+","+Kr*N+"V0H"+Gt[1]+"V"+Kr*N)):(We=Fl,Ba="y",$a="x",ri="y2",jt="x2",Ir.attr("dy",".32em").style("text-anchor",Kr<0?"end":"start"),fr.attr("d","M"+Kr*N+","+Gt[0]+"H0V"+Gt[1]+"H"+Kr*N)),lr.attr(jt,Kr*D),ea.attr($a,Kr*nt),Dr.attr(ri,0).attr(jt,Kr*D),Ur.attr(Ba,0).attr($a,Kr*nt),Pe.rangeBand){var Jr=Pe,oa=Jr.rangeBand()/2;De=Pe=function(sa){return Jr(sa)+oa}}else De.rangeBand?De=Pe:je.call(We,Pe,De);Ue.call(We,De,Pe),ut.call(We,Pe,Pe)})}return ae.scale=function(me){return arguments.length?(y=me,ae):y},ae.orient=function(me){return arguments.length?(M=me in rc?me+"":Rl,ae):M},ae.ticks=function(){return arguments.length?(Z=r(arguments),ae):Z},ae.tickValues=function(me){return arguments.length?($=me,ae):$},ae.tickFormat=function(me){return arguments.length?(X=me,ae):X},ae.tickSize=function(me){var _e=arguments.length;return _e?(D=+me,N=+arguments[_e-1],ae):D},ae.innerTickSize=function(me){return arguments.length?(D=+me,ae):D},ae.outerTickSize=function(me){return arguments.length?(N=+me,ae):N},ae.tickPadding=function(me){return arguments.length?(U=+me,ae):U},ae.tickSubdivide=function(){return arguments.length&&ae},ae};var Rl="bottom",rc={top:1,right:1,bottom:1,left:1};function mf(y,M,D){y.attr("transform",function(N){var U=M(N);return"translate("+(isFinite(U)?U:D(N))+",0)"})}function Fl(y,M,D){y.attr("transform",function(N){var U=M(N);return"translate(0,"+(isFinite(U)?U:D(N))+")"})}e.svg.brush=function(){var y=it(_e,"brushstart","brush","brushend"),M=null,D=null,N=[0,0],U=[0,0],Z,$,X=!0,ae=!0,me=nh[0];function _e(ze){ze.each(function(){var Ue=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",ot).on("touchstart.brush",ot),je=Ue.selectAll(".background").data([0]);je.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ue.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var ut=Ue.selectAll(".resize").data(me,Ce);ut.exit().remove(),ut.enter().append("g").attr("class",function(or){return"resize "+or}).style("cursor",function(or){return Ls[or]}).append("rect").attr("x",function(or){return/[ew]$/.test(or)?-3:null}).attr("y",function(or){return/^[ns]/.test(or)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),ut.style("display",_e.empty()?"none":null);var nt=e.transition(Ue),We=e.transition(je),Gt;M&&(Gt=Yc(M),We.attr("x",Gt[0]).attr("width",Gt[1]-Gt[0]),Pe(nt)),D&&(Gt=Yc(D),We.attr("y",Gt[0]).attr("height",Gt[1]-Gt[0]),Je(nt)),De(nt)})}_e.event=function(ze){ze.each(function(){var Ue=y.of(this,arguments),je={x:N,y:U,i:Z,j:$},ut=this.__chart__||je;this.__chart__=je,so?e.select(this).transition().each("start.brush",function(){Z=ut.i,$=ut.j,N=ut.x,U=ut.y,Ue({type:"brushstart"})}).tween("brush:brush",function(){var nt=Yo(N,je.x),We=Yo(U,je.y);return Z=$=null,function(Gt){N=je.x=nt(Gt),U=je.y=We(Gt),Ue({type:"brush",mode:"resize"})}}).each("end.brush",function(){Z=je.i,$=je.j,Ue({type:"brush",mode:"resize"}),Ue({type:"brushend"})}):(Ue({type:"brushstart"}),Ue({type:"brush",mode:"resize"}),Ue({type:"brushend"}))})};function De(ze){ze.selectAll(".resize").attr("transform",function(Ue){return"translate("+N[+/e$/.test(Ue)]+","+U[+/^s/.test(Ue)]+")"})}function Pe(ze){ze.select(".extent").attr("x",N[0]),ze.selectAll(".extent,.n>rect,.s>rect").attr("width",N[1]-N[0])}function Je(ze){ze.select(".extent").attr("y",U[0]),ze.selectAll(".extent,.e>rect,.w>rect").attr("height",U[1]-U[0])}function ot(){var ze=this,Ue=e.select(e.event.target),je=y.of(ze,arguments),ut=e.select(ze),nt=Ue.datum(),We=!/^(n|s)$/.test(nt)&&M,Gt=!/^(e|w)$/.test(nt)&&D,or=Ue.classed("extent"),fr=Mr(ze),lr,Dr=e.mouse(ze),Ir,ea=e.select(s(ze)).on("keydown.brush",Ba).on("keyup.brush",ri);if(e.event.changedTouches?ea.on("touchmove.brush",$a).on("touchend.brush",Jr):ea.on("mousemove.brush",$a).on("mouseup.brush",Jr),ut.interrupt().selectAll("*").interrupt(),or)Dr[0]=N[0]-Dr[0],Dr[1]=U[0]-Dr[1];else if(nt){var Ur=+/w$/.test(nt),Kr=+/^n/.test(nt);Ir=[N[1-Ur]-Dr[0],U[1-Kr]-Dr[1]],Dr[0]=N[Ur],Dr[1]=U[Kr]}else e.event.altKey&&(lr=Dr.slice());ut.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ue.style("cursor")),je({type:"brushstart"}),$a();function Ba(){e.event.keyCode==32&&(or||(lr=null,Dr[0]-=N[1],Dr[1]-=U[1],or=2),Ke())}function ri(){e.event.keyCode==32&&or==2&&(Dr[0]+=N[1],Dr[1]+=U[1],or=0,Ke())}function $a(){var oa=e.mouse(ze),sa=!1;Ir&&(oa[0]+=Ir[0],oa[1]+=Ir[1]),or||(e.event.altKey?(lr||(lr=[(N[0]+N[1])/2,(U[0]+U[1])/2]),Dr[0]=N[+(oa[0]{(function(e,t){typeof G1=="object"&&typeof _7!="undefined"?t(G1):(e=e||self,t(e.d3=e.d3||{}))})(G1,function(e){"use strict";var t=new Date,r=new Date;function i(Be,ft,mt,Ar){function dr(Tt){return Be(Tt=arguments.length===0?new Date:new Date(+Tt)),Tt}return dr.floor=function(Tt){return Be(Tt=new Date(+Tt)),Tt},dr.ceil=function(Tt){return Be(Tt=new Date(Tt-1)),ft(Tt,1),Be(Tt),Tt},dr.round=function(Tt){var wt=dr(Tt),Vt=dr.ceil(Tt);return Tt-wt0))return Kt;do Kt.push(Ht=new Date(+Tt)),ft(Tt,Vt),Be(Tt);while(Ht=wt)for(;Be(wt),!Tt(wt);)wt.setTime(wt-1)},function(wt,Vt){if(wt>=wt)if(Vt<0)for(;++Vt<=0;)for(;ft(wt,-1),!Tt(wt););else for(;--Vt>=0;)for(;ft(wt,1),!Tt(wt););})},mt&&(dr.count=function(Tt,wt){return t.setTime(+Tt),r.setTime(+wt),Be(t),Be(r),Math.floor(mt(t,r))},dr.every=function(Tt){return Tt=Math.floor(Tt),!isFinite(Tt)||!(Tt>0)?null:Tt>1?dr.filter(Ar?function(wt){return Ar(wt)%Tt===0}:function(wt){return dr.count(0,wt)%Tt===0}):dr}),dr}var a=i(function(){},function(Be,ft){Be.setTime(+Be+ft)},function(Be,ft){return ft-Be});a.every=function(Be){return Be=Math.floor(Be),!isFinite(Be)||!(Be>0)?null:Be>1?i(function(ft){ft.setTime(Math.floor(ft/Be)*Be)},function(ft,mt){ft.setTime(+ft+mt*Be)},function(ft,mt){return(mt-ft)/Be}):a};var s=a.range,l=1e3,f=6e4,h=36e5,v=864e5,m=6048e5,b=i(function(Be){Be.setTime(Be-Be.getMilliseconds())},function(Be,ft){Be.setTime(+Be+ft*l)},function(Be,ft){return(ft-Be)/l},function(Be){return Be.getUTCSeconds()}),T=b.range,S=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l)},function(Be,ft){Be.setTime(+Be+ft*f)},function(Be,ft){return(ft-Be)/f},function(Be){return Be.getMinutes()}),C=S.range,P=i(function(Be){Be.setTime(Be-Be.getMilliseconds()-Be.getSeconds()*l-Be.getMinutes()*f)},function(Be,ft){Be.setTime(+Be+ft*h)},function(Be,ft){return(ft-Be)/h},function(Be){return Be.getHours()}),E=P.range,I=i(function(Be){Be.setHours(0,0,0,0)},function(Be,ft){Be.setDate(Be.getDate()+ft)},function(Be,ft){return(ft-Be-(ft.getTimezoneOffset()-Be.getTimezoneOffset())*f)/v},function(Be){return Be.getDate()-1}),q=I.range;function B(Be){return i(function(ft){ft.setDate(ft.getDate()-(ft.getDay()+7-Be)%7),ft.setHours(0,0,0,0)},function(ft,mt){ft.setDate(ft.getDate()+mt*7)},function(ft,mt){return(mt-ft-(mt.getTimezoneOffset()-ft.getTimezoneOffset())*f)/m})}var z=B(0),O=B(1),H=B(2),V=B(3),W=B(4),J=B(5),re=B(6),oe=z.range,ne=O.range,fe=H.range,ve=V.range,Ce=W.range,Se=J.range,Te=re.range,pe=i(function(Be){Be.setDate(1),Be.setHours(0,0,0,0)},function(Be,ft){Be.setMonth(Be.getMonth()+ft)},function(Be,ft){return ft.getMonth()-Be.getMonth()+(ft.getFullYear()-Be.getFullYear())*12},function(Be){return Be.getMonth()}),Ae=pe.range,Me=i(function(Be){Be.setMonth(0,1),Be.setHours(0,0,0,0)},function(Be,ft){Be.setFullYear(Be.getFullYear()+ft)},function(Be,ft){return ft.getFullYear()-Be.getFullYear()},function(Be){return Be.getFullYear()});Me.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(ft){ft.setFullYear(Math.floor(ft.getFullYear()/Be)*Be),ft.setMonth(0,1),ft.setHours(0,0,0,0)},function(ft,mt){ft.setFullYear(ft.getFullYear()+mt*Be)})};var Le=Me.range,Ke=i(function(Be){Be.setUTCSeconds(0,0)},function(Be,ft){Be.setTime(+Be+ft*f)},function(Be,ft){return(ft-Be)/f},function(Be){return Be.getUTCMinutes()}),ht=Ke.range,it=i(function(Be){Be.setUTCMinutes(0,0,0)},function(Be,ft){Be.setTime(+Be+ft*h)},function(Be,ft){return(ft-Be)/h},function(Be){return Be.getUTCHours()}),lt=it.range,He=i(function(Be){Be.setUTCHours(0,0,0,0)},function(Be,ft){Be.setUTCDate(Be.getUTCDate()+ft)},function(Be,ft){return(ft-Be)/v},function(Be){return Be.getUTCDate()-1}),_t=He.range;function at(Be){return i(function(ft){ft.setUTCDate(ft.getUTCDate()-(ft.getUTCDay()+7-Be)%7),ft.setUTCHours(0,0,0,0)},function(ft,mt){ft.setUTCDate(ft.getUTCDate()+mt*7)},function(ft,mt){return(mt-ft)/m})}var At=at(0),kt=at(1),pt=at(2),ge=at(3),Re=at(4),xe=at(5),$e=at(6),vt=At.range,et=kt.range,Nt=pt.range,Mt=ge.range,Ct=Re.range,Rt=xe.range,Ut=$e.range,xt=i(function(Be){Be.setUTCDate(1),Be.setUTCHours(0,0,0,0)},function(Be,ft){Be.setUTCMonth(Be.getUTCMonth()+ft)},function(Be,ft){return ft.getUTCMonth()-Be.getUTCMonth()+(ft.getUTCFullYear()-Be.getUTCFullYear())*12},function(Be){return Be.getUTCMonth()}),Et=xt.range,ir=i(function(Be){Be.setUTCMonth(0,1),Be.setUTCHours(0,0,0,0)},function(Be,ft){Be.setUTCFullYear(Be.getUTCFullYear()+ft)},function(Be,ft){return ft.getUTCFullYear()-Be.getUTCFullYear()},function(Be){return Be.getUTCFullYear()});ir.every=function(Be){return!isFinite(Be=Math.floor(Be))||!(Be>0)?null:i(function(ft){ft.setUTCFullYear(Math.floor(ft.getUTCFullYear()/Be)*Be),ft.setUTCMonth(0,1),ft.setUTCHours(0,0,0,0)},function(ft,mt){ft.setUTCFullYear(ft.getUTCFullYear()+mt*Be)})};var Wt=ir.range;e.timeDay=I,e.timeDays=q,e.timeFriday=J,e.timeFridays=Se,e.timeHour=P,e.timeHours=E,e.timeInterval=i,e.timeMillisecond=a,e.timeMilliseconds=s,e.timeMinute=S,e.timeMinutes=C,e.timeMonday=O,e.timeMondays=ne,e.timeMonth=pe,e.timeMonths=Ae,e.timeSaturday=re,e.timeSaturdays=Te,e.timeSecond=b,e.timeSeconds=T,e.timeSunday=z,e.timeSundays=oe,e.timeThursday=W,e.timeThursdays=Ce,e.timeTuesday=H,e.timeTuesdays=fe,e.timeWednesday=V,e.timeWednesdays=ve,e.timeWeek=z,e.timeWeeks=oe,e.timeYear=Me,e.timeYears=Le,e.utcDay=He,e.utcDays=_t,e.utcFriday=xe,e.utcFridays=Rt,e.utcHour=it,e.utcHours=lt,e.utcMillisecond=a,e.utcMilliseconds=s,e.utcMinute=Ke,e.utcMinutes=ht,e.utcMonday=kt,e.utcMondays=et,e.utcMonth=xt,e.utcMonths=Et,e.utcSaturday=$e,e.utcSaturdays=Ut,e.utcSecond=b,e.utcSeconds=T,e.utcSunday=At,e.utcSundays=vt,e.utcThursday=Re,e.utcThursdays=Ct,e.utcTuesday=pt,e.utcTuesdays=Nt,e.utcWednesday=ge,e.utcWednesdays=Mt,e.utcWeek=At,e.utcWeeks=vt,e.utcYear=ir,e.utcYears=Wt,Object.defineProperty(e,"__esModule",{value:!0})})});var s0=de((Z1,x7)=>{(function(e,t){typeof Z1=="object"&&typeof x7!="undefined"?t(Z1,q3()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(Z1,function(e,t){"use strict";function r(Fe){if(0<=Fe.y&&Fe.y<100){var Ge=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ge.setFullYear(Fe.y),Ge}return new Date(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L)}function i(Fe){if(0<=Fe.y&&Fe.y<100){var Ge=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ge.setUTCFullYear(Fe.y),Ge}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function a(Fe,Ge,bt){return{y:Fe,m:Ge,d:bt,H:0,M:0,S:0,L:0}}function s(Fe){var Ge=Fe.dateTime,bt=Fe.date,dt=Fe.time,gr=Fe.periods,Er=Fe.days,Tr=Fe.shortDays,Hr=Fe.months,_a=Fe.shortMonths,ka=T(gr),Ea=S(gr),Ii=T(Er),Ki=S(Er),yn=T(Tr),Xi=S(Tr),Jn=T(Hr),En=S(Hr),Vi=T(_a),pa=S(_a),Gr={a:Dt,A:Ft,b:tr,B:Yt,c:null,d:pe,e:pe,f:ht,H:Ae,I:Me,j:Le,L:Ke,m:it,M:lt,p:wr,q:Yr,Q:wt,s:Vt,S:He,u:_t,U:at,V:At,w:kt,W:pt,x:null,X:null,y:ge,Y:Re,Z:xe,"%":Tt},Qa={a:Br,A:ca,b:ua,B:Na,c:null,d:$e,e:$e,f:Ct,H:vt,I:et,j:Nt,L:Mt,m:Rt,M:Ut,p:ii,q:Wr,Q:wt,s:Vt,S:xt,u:Et,U:ir,V:Wt,w:Be,W:ft,x:null,X:null,y:mt,Y:Ar,Z:dr,"%":Tt},Zr={a:se,A:ce,b:Ee,B:Ne,c:rt,d:W,e:W,f:ve,H:re,I:re,j:J,L:fe,m:V,M:oe,p:ee,q:H,Q:Se,s:Te,S:ne,u:P,U:E,V:I,w:C,W:q,x:Ve,X:yt,y:z,Y:B,Z:O,"%":Ce};Gr.x=vi(bt,Gr),Gr.X=vi(dt,Gr),Gr.c=vi(Ge,Gr),Qa.x=vi(bt,Qa),Qa.X=vi(dt,Qa),Qa.c=vi(Ge,Qa);function vi(pr,$r){return function(ga){var nr=[],wi=-1,La=0,si=pr.length,fa,Ln,Co;for(ga instanceof Date||(ga=new Date(+ga));++wi53)return null;"w"in nr||(nr.w=1),"Z"in nr?(La=i(a(nr.y,0,1)),si=La.getUTCDay(),La=si>4||si===0?t.utcMonday.ceil(La):t.utcMonday(La),La=t.utcDay.offset(La,(nr.V-1)*7),nr.y=La.getUTCFullYear(),nr.m=La.getUTCMonth(),nr.d=La.getUTCDate()+(nr.w+6)%7):(La=r(a(nr.y,0,1)),si=La.getDay(),La=si>4||si===0?t.timeMonday.ceil(La):t.timeMonday(La),La=t.timeDay.offset(La,(nr.V-1)*7),nr.y=La.getFullYear(),nr.m=La.getMonth(),nr.d=La.getDate()+(nr.w+6)%7)}else("W"in nr||"U"in nr)&&("w"in nr||(nr.w="u"in nr?nr.u%7:"W"in nr?1:0),si="Z"in nr?i(a(nr.y,0,1)).getUTCDay():r(a(nr.y,0,1)).getDay(),nr.m=0,nr.d="W"in nr?(nr.w+6)%7+nr.W*7-(si+5)%7:nr.w+nr.U*7-(si+6)%7);return"Z"in nr?(nr.H+=nr.Z/100|0,nr.M+=nr.Z%100,i(nr)):r(nr)}}function le(pr,$r,ga,nr){for(var wi=0,La=$r.length,si=ga.length,fa,Ln;wi=si)return-1;if(fa=$r.charCodeAt(wi++),fa===37){if(fa=$r.charAt(wi++),Ln=Zr[fa in l?$r.charAt(wi++):fa],!Ln||(nr=Ln(pr,ga,nr))<0)return-1}else if(fa!=ga.charCodeAt(nr++))return-1}return nr}function ee(pr,$r,ga){var nr=ka.exec($r.slice(ga));return nr?(pr.p=Ea[nr[0].toLowerCase()],ga+nr[0].length):-1}function se(pr,$r,ga){var nr=yn.exec($r.slice(ga));return nr?(pr.w=Xi[nr[0].toLowerCase()],ga+nr[0].length):-1}function ce(pr,$r,ga){var nr=Ii.exec($r.slice(ga));return nr?(pr.w=Ki[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ee(pr,$r,ga){var nr=Vi.exec($r.slice(ga));return nr?(pr.m=pa[nr[0].toLowerCase()],ga+nr[0].length):-1}function Ne(pr,$r,ga){var nr=Jn.exec($r.slice(ga));return nr?(pr.m=En[nr[0].toLowerCase()],ga+nr[0].length):-1}function rt(pr,$r,ga){return le(pr,Ge,$r,ga)}function Ve(pr,$r,ga){return le(pr,bt,$r,ga)}function yt(pr,$r,ga){return le(pr,dt,$r,ga)}function Dt(pr){return Tr[pr.getDay()]}function Ft(pr){return Er[pr.getDay()]}function tr(pr){return _a[pr.getMonth()]}function Yt(pr){return Hr[pr.getMonth()]}function wr(pr){return gr[+(pr.getHours()>=12)]}function Yr(pr){return 1+~~(pr.getMonth()/3)}function Br(pr){return Tr[pr.getUTCDay()]}function ca(pr){return Er[pr.getUTCDay()]}function ua(pr){return _a[pr.getUTCMonth()]}function Na(pr){return Hr[pr.getUTCMonth()]}function ii(pr){return gr[+(pr.getUTCHours()>=12)]}function Wr(pr){return 1+~~(pr.getUTCMonth()/3)}return{format:function(pr){var $r=vi(pr+="",Gr);return $r.toString=function(){return pr},$r},parse:function(pr){var $r=ya(pr+="",!1);return $r.toString=function(){return pr},$r},utcFormat:function(pr){var $r=vi(pr+="",Qa);return $r.toString=function(){return pr},$r},utcParse:function(pr){var $r=ya(pr+="",!0);return $r.toString=function(){return pr},$r}}}var l={"-":"",_:" ",0:"0"},f=/^\s*\d+/,h=/^%/,v=/[\\^$*+?|[\]().{}]/g;function m(Fe,Ge,bt){var dt=Fe<0?"-":"",gr=(dt?-Fe:Fe)+"",Er=gr.length;return dt+(Er68?1900:2e3),bt+dt[0].length):-1}function O(Fe,Ge,bt){var dt=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ge.slice(bt,bt+6));return dt?(Fe.Z=dt[1]?0:-(dt[2]+(dt[3]||"00")),bt+dt[0].length):-1}function H(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+1));return dt?(Fe.q=dt[0]*3-3,bt+dt[0].length):-1}function V(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.m=dt[0]-1,bt+dt[0].length):-1}function W(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.d=+dt[0],bt+dt[0].length):-1}function J(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+3));return dt?(Fe.m=0,Fe.d=+dt[0],bt+dt[0].length):-1}function re(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.H=+dt[0],bt+dt[0].length):-1}function oe(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.M=+dt[0],bt+dt[0].length):-1}function ne(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+2));return dt?(Fe.S=+dt[0],bt+dt[0].length):-1}function fe(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+3));return dt?(Fe.L=+dt[0],bt+dt[0].length):-1}function ve(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt,bt+6));return dt?(Fe.L=Math.floor(dt[0]/1e3),bt+dt[0].length):-1}function Ce(Fe,Ge,bt){var dt=h.exec(Ge.slice(bt,bt+1));return dt?bt+dt[0].length:-1}function Se(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt));return dt?(Fe.Q=+dt[0],bt+dt[0].length):-1}function Te(Fe,Ge,bt){var dt=f.exec(Ge.slice(bt));return dt?(Fe.s=+dt[0],bt+dt[0].length):-1}function pe(Fe,Ge){return m(Fe.getDate(),Ge,2)}function Ae(Fe,Ge){return m(Fe.getHours(),Ge,2)}function Me(Fe,Ge){return m(Fe.getHours()%12||12,Ge,2)}function Le(Fe,Ge){return m(1+t.timeDay.count(t.timeYear(Fe),Fe),Ge,3)}function Ke(Fe,Ge){return m(Fe.getMilliseconds(),Ge,3)}function ht(Fe,Ge){return Ke(Fe,Ge)+"000"}function it(Fe,Ge){return m(Fe.getMonth()+1,Ge,2)}function lt(Fe,Ge){return m(Fe.getMinutes(),Ge,2)}function He(Fe,Ge){return m(Fe.getSeconds(),Ge,2)}function _t(Fe){var Ge=Fe.getDay();return Ge===0?7:Ge}function at(Fe,Ge){return m(t.timeSunday.count(t.timeYear(Fe)-1,Fe),Ge,2)}function At(Fe,Ge){var bt=Fe.getDay();return Fe=bt>=4||bt===0?t.timeThursday(Fe):t.timeThursday.ceil(Fe),m(t.timeThursday.count(t.timeYear(Fe),Fe)+(t.timeYear(Fe).getDay()===4),Ge,2)}function kt(Fe){return Fe.getDay()}function pt(Fe,Ge){return m(t.timeMonday.count(t.timeYear(Fe)-1,Fe),Ge,2)}function ge(Fe,Ge){return m(Fe.getFullYear()%100,Ge,2)}function Re(Fe,Ge){return m(Fe.getFullYear()%1e4,Ge,4)}function xe(Fe){var Ge=Fe.getTimezoneOffset();return(Ge>0?"-":(Ge*=-1,"+"))+m(Ge/60|0,"0",2)+m(Ge%60,"0",2)}function $e(Fe,Ge){return m(Fe.getUTCDate(),Ge,2)}function vt(Fe,Ge){return m(Fe.getUTCHours(),Ge,2)}function et(Fe,Ge){return m(Fe.getUTCHours()%12||12,Ge,2)}function Nt(Fe,Ge){return m(1+t.utcDay.count(t.utcYear(Fe),Fe),Ge,3)}function Mt(Fe,Ge){return m(Fe.getUTCMilliseconds(),Ge,3)}function Ct(Fe,Ge){return Mt(Fe,Ge)+"000"}function Rt(Fe,Ge){return m(Fe.getUTCMonth()+1,Ge,2)}function Ut(Fe,Ge){return m(Fe.getUTCMinutes(),Ge,2)}function xt(Fe,Ge){return m(Fe.getUTCSeconds(),Ge,2)}function Et(Fe){var Ge=Fe.getUTCDay();return Ge===0?7:Ge}function ir(Fe,Ge){return m(t.utcSunday.count(t.utcYear(Fe)-1,Fe),Ge,2)}function Wt(Fe,Ge){var bt=Fe.getUTCDay();return Fe=bt>=4||bt===0?t.utcThursday(Fe):t.utcThursday.ceil(Fe),m(t.utcThursday.count(t.utcYear(Fe),Fe)+(t.utcYear(Fe).getUTCDay()===4),Ge,2)}function Be(Fe){return Fe.getUTCDay()}function ft(Fe,Ge){return m(t.utcMonday.count(t.utcYear(Fe)-1,Fe),Ge,2)}function mt(Fe,Ge){return m(Fe.getUTCFullYear()%100,Ge,2)}function Ar(Fe,Ge){return m(Fe.getUTCFullYear()%1e4,Ge,4)}function dr(){return"+0000"}function Tt(){return"%"}function wt(Fe){return+Fe}function Vt(Fe){return Math.floor(+Fe/1e3)}var Kt;Ht({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ht(Fe){return Kt=s(Fe),e.timeFormat=Kt.format,e.timeParse=Kt.parse,e.utcFormat=Kt.utcFormat,e.utcParse=Kt.utcParse,Kt}var Ot="%Y-%m-%dT%H:%M:%S.%LZ";function er(Fe){return Fe.toISOString()}var Mr=Date.prototype.toISOString?er:e.utcFormat(Ot);function xr(Fe){var Ge=new Date(Fe);return isNaN(Ge)?null:Ge}var Pt=+new Date("2000-01-01T00:00:00.000Z")?xr:e.utcParse(Ot);e.isoFormat=Mr,e.isoParse=Pt,e.timeFormatDefaultLocale=Ht,e.timeFormatLocale=s,Object.defineProperty(e,"__esModule",{value:!0})})});var N3=de((Y1,b7)=>{(function(e,t){typeof Y1=="object"&&typeof b7!="undefined"?t(Y1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(Y1,function(e){"use strict";function t(V){return Math.abs(V=Math.round(V))>=1e21?V.toLocaleString("en").replace(/,/g,""):V.toString(10)}function r(V,W){if((J=(V=W?V.toExponential(W-1):V.toExponential()).indexOf("e"))<0)return null;var J,re=V.slice(0,J);return[re.length>1?re[0]+re.slice(2):re,+V.slice(J+1)]}function i(V){return V=r(Math.abs(V)),V?V[1]:NaN}function a(V,W){return function(J,re){for(var oe=J.length,ne=[],fe=0,ve=V[0],Ce=0;oe>0&&ve>0&&(Ce+ve+1>re&&(ve=Math.max(1,re-Ce)),ne.push(J.substring(oe-=ve,oe+ve)),!((Ce+=ve+1)>re));)ve=V[fe=(fe+1)%V.length];return ne.reverse().join(W)}}function s(V){return function(W){return W.replace(/[0-9]/g,function(J){return V[+J]})}}var l=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function f(V){if(!(W=l.exec(V)))throw new Error("invalid format: "+V);var W;return new h({fill:W[1],align:W[2],sign:W[3],symbol:W[4],zero:W[5],width:W[6],comma:W[7],precision:W[8]&&W[8].slice(1),trim:W[9],type:W[10]})}f.prototype=h.prototype;function h(V){this.fill=V.fill===void 0?" ":V.fill+"",this.align=V.align===void 0?">":V.align+"",this.sign=V.sign===void 0?"-":V.sign+"",this.symbol=V.symbol===void 0?"":V.symbol+"",this.zero=!!V.zero,this.width=V.width===void 0?void 0:+V.width,this.comma=!!V.comma,this.precision=V.precision===void 0?void 0:+V.precision,this.trim=!!V.trim,this.type=V.type===void 0?"":V.type+""}h.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function v(V){e:for(var W=V.length,J=1,re=-1,oe;J0&&(re=0);break}return re>0?V.slice(0,re)+V.slice(oe+1):V}var m;function b(V,W){var J=r(V,W);if(!J)return V+"";var re=J[0],oe=J[1],ne=oe-(m=Math.max(-8,Math.min(8,Math.floor(oe/3)))*3)+1,fe=re.length;return ne===fe?re:ne>fe?re+new Array(ne-fe+1).join("0"):ne>0?re.slice(0,ne)+"."+re.slice(ne):"0."+new Array(1-ne).join("0")+r(V,Math.max(0,W+ne-1))[0]}function T(V,W){var J=r(V,W);if(!J)return V+"";var re=J[0],oe=J[1];return oe<0?"0."+new Array(-oe).join("0")+re:re.length>oe+1?re.slice(0,oe+1)+"."+re.slice(oe+1):re+new Array(oe-re.length+2).join("0")}var S={"%":function(V,W){return(V*100).toFixed(W)},b:function(V){return Math.round(V).toString(2)},c:function(V){return V+""},d:t,e:function(V,W){return V.toExponential(W)},f:function(V,W){return V.toFixed(W)},g:function(V,W){return V.toPrecision(W)},o:function(V){return Math.round(V).toString(8)},p:function(V,W){return T(V*100,W)},r:T,s:b,X:function(V){return Math.round(V).toString(16).toUpperCase()},x:function(V){return Math.round(V).toString(16)}};function C(V){return V}var P=Array.prototype.map,E=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function I(V){var W=V.grouping===void 0||V.thousands===void 0?C:a(P.call(V.grouping,Number),V.thousands+""),J=V.currency===void 0?"":V.currency[0]+"",re=V.currency===void 0?"":V.currency[1]+"",oe=V.decimal===void 0?".":V.decimal+"",ne=V.numerals===void 0?C:s(P.call(V.numerals,String)),fe=V.percent===void 0?"%":V.percent+"",ve=V.minus===void 0?"-":V.minus+"",Ce=V.nan===void 0?"NaN":V.nan+"";function Se(pe){pe=f(pe);var Ae=pe.fill,Me=pe.align,Le=pe.sign,Ke=pe.symbol,ht=pe.zero,it=pe.width,lt=pe.comma,He=pe.precision,_t=pe.trim,at=pe.type;at==="n"?(lt=!0,at="g"):S[at]||(He===void 0&&(He=12),_t=!0,at="g"),(ht||Ae==="0"&&Me==="=")&&(ht=!0,Ae="0",Me="=");var At=Ke==="$"?J:Ke==="#"&&/[boxX]/.test(at)?"0"+at.toLowerCase():"",kt=Ke==="$"?re:/[%p]/.test(at)?fe:"",pt=S[at],ge=/[defgprs%]/.test(at);He=He===void 0?6:/[gprs]/.test(at)?Math.max(1,Math.min(21,He)):Math.max(0,Math.min(20,He));function Re(xe){var $e=At,vt=kt,et,Nt,Mt;if(at==="c")vt=pt(xe)+vt,xe="";else{xe=+xe;var Ct=xe<0||1/xe<0;if(xe=isNaN(xe)?Ce:pt(Math.abs(xe),He),_t&&(xe=v(xe)),Ct&&+xe==0&&Le!=="+"&&(Ct=!1),$e=(Ct?Le==="("?Le:ve:Le==="-"||Le==="("?"":Le)+$e,vt=(at==="s"?E[8+m/3]:"")+vt+(Ct&&Le==="("?")":""),ge){for(et=-1,Nt=xe.length;++etMt||Mt>57){vt=(Mt===46?oe+xe.slice(et+1):xe.slice(et))+vt,xe=xe.slice(0,et);break}}}lt&&!ht&&(xe=W(xe,1/0));var Rt=$e.length+xe.length+vt.length,Ut=Rt>1)+$e+xe+vt+Ut.slice(Rt);break;default:xe=Ut+$e+xe+vt;break}return ne(xe)}return Re.toString=function(){return pe+""},Re}function Te(pe,Ae){var Me=Se((pe=f(pe),pe.type="f",pe)),Le=Math.max(-8,Math.min(8,Math.floor(i(Ae)/3)))*3,Ke=Math.pow(10,-Le),ht=E[8+Le/3];return function(it){return Me(Ke*it)+ht}}return{format:Se,formatPrefix:Te}}var q;B({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function B(V){return q=I(V),e.format=q.format,e.formatPrefix=q.formatPrefix,q}function z(V){return Math.max(0,-i(Math.abs(V)))}function O(V,W){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(i(W)/3)))*3-i(Math.abs(V)))}function H(V,W){return V=Math.abs(V),W=Math.abs(W)-V,Math.max(0,i(W)-i(V))+1}e.FormatSpecifier=h,e.formatDefaultLocale=B,e.formatLocale=I,e.formatSpecifier=f,e.precisionFixed=z,e.precisionPrefix=O,e.precisionRound=H,Object.defineProperty(e,"__esModule",{value:!0})})});var T7=de((Ame,w7)=>{"use strict";w7.exports=function(e){for(var t=e.length,r,i=0;i13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var Da=de((Mme,A7)=>{"use strict";var aj=T7();A7.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&aj(r))return!1}else if(t!=="number")return!1;return e-e<1}});var Hi=de((Sme,M7)=>{"use strict";M7.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var B3=de((W1,S7)=>{(function(e,t){typeof W1=="object"&&typeof S7!="undefined"?t(W1):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(W1,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),i=0;i>2],m+=t[(f[h]&3)<<4|f[h+1]>>4],m+=t[(f[h+1]&15)<<2|f[h+2]>>6],m+=t[f[h+2]&63];return v%3===2?m=m.substring(0,m.length-1)+"=":v%3===1&&(m=m.substring(0,m.length-2)+"=="),m},s=function(l){var f=l.length*.75,h=l.length,v,m=0,b,T,S,C;l[l.length-1]==="="&&(f--,l[l.length-2]==="="&&f--);var P=new ArrayBuffer(f),E=new Uint8Array(P);for(v=0;v>4,E[m++]=(T&15)<<4|S>>2,E[m++]=(S&3)<<6|C&63;return P};e.decode=s,e.encode=a,Object.defineProperty(e,"__esModule",{value:!0})})});var cc=de((kme,k7)=>{"use strict";k7.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var il=de(Pu=>{"use strict";var ij=B3().decode,nj=cc(),O3=Array.isArray,oj=ArrayBuffer,sj=DataView;function C7(e){return oj.isView(e)&&!(e instanceof sj)}Pu.isTypedArray=C7;function X1(e){return O3(e)||C7(e)}Pu.isArrayOrTypedArray=X1;function lj(e){return!X1(e[0])}Pu.isArray1D=lj;Pu.ensureArray=function(e,t){return O3(e)||(e=[]),e.length=t,e};var fo={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};fo.uint8c=fo.u1c;fo.uint8=fo.u1;fo.int8=fo.i1;fo.uint16=fo.u2;fo.int16=fo.i2;fo.uint32=fo.u4;fo.int32=fo.i4;fo.float32=fo.f4;fo.float64=fo.f8;function U3(e){return e.constructor===ArrayBuffer}Pu.isArrayBuffer=U3;Pu.decodeTypedArraySpec=function(e){var t=[],r=uj(e),i=r.dtype,a=fo[i];if(!a)throw new Error('Error in dtype: "'+i+'"');var s=a.BYTES_PER_ELEMENT,l=r.bdata;U3(l)||(l=ij(l));var f=r.shape===void 0?[l.byteLength/s]:(""+r.shape).split(",");f.reverse();var h=f.length,v,m,b=+f[0],T=s*b,S=0;if(h===1)t=new a(l);else if(h===2)for(v=+f[1],m=0;m{"use strict";var L7=Da(),H3=il().isArrayOrTypedArray;I7.exports=function(t,r){if(L7(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var i=r.split("."),a,s,l,f;for(f=0;f{"use strict";var l0=wy(),dj=/^\w*$/,pj=0,R7=1,j1=2,F7=3,$v=4;q7.exports=function(t,r,i,a){i=i||"name",a=a||"value";var s,l,f,h={};r&&r.length?(f=l0(t,r),l=f.get()):l=t,r=r||"";var v={};if(l)for(s=0;s2)return h[S]=h[S]|j1,b.set(T,null);if(m){for(s=S;s{"use strict";var mj=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,yj=/^[^\.\[\]]+$/;B7.exports=function(e,t){for(;t;){var r=e.match(mj);if(r)e=r[1];else if(e.match(yj))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var J1=de((Dme,U7)=>{"use strict";var gj=Da();U7.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var i=Math.log(Math.min(r[0],r[1]))/Math.LN10;return gj(i)||(i=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),i}});var G7=de((zme,H7)=>{"use strict";var V7=il().isArrayOrTypedArray,Ty=cc();H7.exports=function e(t,r){for(var i in r){var a=r[i],s=t[i];if(s!==a)if(i.charAt(0)==="_"||typeof a=="function"){if(i in t)continue;t[i]=a}else if(V7(a)&&V7(s)&&Ty(a[0])){if(i==="customdata"||i==="ids")continue;for(var l=Math.min(a.length,s.length),f=0;f{"use strict";function _j(e,t){var r=e%t;return r<0?r+t:r}function xj(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Z7.exports={mod:_j,modHalf:xj}});var Tf=de((Rme,K1)=>{(function(e){var t=/^\s+/,r=/\s+$/,i=0,a=e.round,s=e.min,l=e.max,f=e.random;function h(ge,Re){if(ge=ge||"",Re=Re||{},ge instanceof h)return ge;if(!(this instanceof h))return new h(ge,Re);var xe=v(ge);this._originalInput=ge,this._r=xe.r,this._g=xe.g,this._b=xe.b,this._a=xe.a,this._roundA=a(100*this._a)/100,this._format=Re.format||xe.format,this._gradientType=Re.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=xe.ok,this._tc_id=i++}h.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var ge=this.toRgb();return(ge.r*299+ge.g*587+ge.b*114)/1e3},getLuminance:function(){var ge=this.toRgb(),Re,xe,$e,vt,et,Nt;return Re=ge.r/255,xe=ge.g/255,$e=ge.b/255,Re<=.03928?vt=Re/12.92:vt=e.pow((Re+.055)/1.055,2.4),xe<=.03928?et=xe/12.92:et=e.pow((xe+.055)/1.055,2.4),$e<=.03928?Nt=$e/12.92:Nt=e.pow(($e+.055)/1.055,2.4),.2126*vt+.7152*et+.0722*Nt},setAlpha:function(ge){return this._a=pe(ge),this._roundA=a(100*this._a)/100,this},toHsv:function(){var ge=S(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,v:ge.v,a:this._a}},toHsvString:function(){var ge=S(this._r,this._g,this._b),Re=a(ge.h*360),xe=a(ge.s*100),$e=a(ge.v*100);return this._a==1?"hsv("+Re+", "+xe+"%, "+$e+"%)":"hsva("+Re+", "+xe+"%, "+$e+"%, "+this._roundA+")"},toHsl:function(){var ge=b(this._r,this._g,this._b);return{h:ge.h*360,s:ge.s,l:ge.l,a:this._a}},toHslString:function(){var ge=b(this._r,this._g,this._b),Re=a(ge.h*360),xe=a(ge.s*100),$e=a(ge.l*100);return this._a==1?"hsl("+Re+", "+xe+"%, "+$e+"%)":"hsla("+Re+", "+xe+"%, "+$e+"%, "+this._roundA+")"},toHex:function(ge){return P(this._r,this._g,this._b,ge)},toHexString:function(ge){return"#"+this.toHex(ge)},toHex8:function(ge){return E(this._r,this._g,this._b,this._a,ge)},toHex8String:function(ge){return"#"+this.toHex8(ge)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(Ae(this._r,255)*100)+"%",g:a(Ae(this._g,255)*100)+"%",b:a(Ae(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(Ae(this._r,255)*100)+"%, "+a(Ae(this._g,255)*100)+"%, "+a(Ae(this._b,255)*100)+"%)":"rgba("+a(Ae(this._r,255)*100)+"%, "+a(Ae(this._g,255)*100)+"%, "+a(Ae(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:Se[P(this._r,this._g,this._b,!0)]||!1},toFilter:function(ge){var Re="#"+I(this._r,this._g,this._b,this._a),xe=Re,$e=this._gradientType?"GradientType = 1, ":"";if(ge){var vt=h(ge);xe="#"+I(vt._r,vt._g,vt._b,vt._a)}return"progid:DXImageTransform.Microsoft.gradient("+$e+"startColorstr="+Re+",endColorstr="+xe+")"},toString:function(ge){var Re=!!ge;ge=ge||this._format;var xe=!1,$e=this._a<1&&this._a>=0,vt=!Re&&$e&&(ge==="hex"||ge==="hex6"||ge==="hex3"||ge==="hex4"||ge==="hex8"||ge==="name");return vt?ge==="name"&&this._a===0?this.toName():this.toRgbString():(ge==="rgb"&&(xe=this.toRgbString()),ge==="prgb"&&(xe=this.toPercentageRgbString()),(ge==="hex"||ge==="hex6")&&(xe=this.toHexString()),ge==="hex3"&&(xe=this.toHexString(!0)),ge==="hex4"&&(xe=this.toHex8String(!0)),ge==="hex8"&&(xe=this.toHex8String()),ge==="name"&&(xe=this.toName()),ge==="hsl"&&(xe=this.toHslString()),ge==="hsv"&&(xe=this.toHsvString()),xe||this.toHexString())},clone:function(){return h(this.toString())},_applyModification:function(ge,Re){var xe=ge.apply(null,[this].concat([].slice.call(Re)));return this._r=xe._r,this._g=xe._g,this._b=xe._b,this.setAlpha(xe._a),this},lighten:function(){return this._applyModification(O,arguments)},brighten:function(){return this._applyModification(H,arguments)},darken:function(){return this._applyModification(V,arguments)},desaturate:function(){return this._applyModification(q,arguments)},saturate:function(){return this._applyModification(B,arguments)},greyscale:function(){return this._applyModification(z,arguments)},spin:function(){return this._applyModification(W,arguments)},_applyCombination:function(ge,Re){return ge.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(fe,arguments)},complement:function(){return this._applyCombination(J,arguments)},monochromatic:function(){return this._applyCombination(ve,arguments)},splitcomplement:function(){return this._applyCombination(ne,arguments)},triad:function(){return this._applyCombination(re,arguments)},tetrad:function(){return this._applyCombination(oe,arguments)}},h.fromRatio=function(ge,Re){if(typeof ge=="object"){var xe={};for(var $e in ge)ge.hasOwnProperty($e)&&($e==="a"?xe[$e]=ge[$e]:xe[$e]=lt(ge[$e]));ge=xe}return h(ge,Re)};function v(ge){var Re={r:0,g:0,b:0},xe=1,$e=null,vt=null,et=null,Nt=!1,Mt=!1;return typeof ge=="string"&&(ge=kt(ge)),typeof ge=="object"&&(At(ge.r)&&At(ge.g)&&At(ge.b)?(Re=m(ge.r,ge.g,ge.b),Nt=!0,Mt=String(ge.r).substr(-1)==="%"?"prgb":"rgb"):At(ge.h)&&At(ge.s)&&At(ge.v)?($e=lt(ge.s),vt=lt(ge.v),Re=C(ge.h,$e,vt),Nt=!0,Mt="hsv"):At(ge.h)&&At(ge.s)&&At(ge.l)&&($e=lt(ge.s),et=lt(ge.l),Re=T(ge.h,$e,et),Nt=!0,Mt="hsl"),ge.hasOwnProperty("a")&&(xe=ge.a)),xe=pe(xe),{ok:Nt,format:ge.format||Mt,r:s(255,l(Re.r,0)),g:s(255,l(Re.g,0)),b:s(255,l(Re.b,0)),a:xe}}function m(ge,Re,xe){return{r:Ae(ge,255)*255,g:Ae(Re,255)*255,b:Ae(xe,255)*255}}function b(ge,Re,xe){ge=Ae(ge,255),Re=Ae(Re,255),xe=Ae(xe,255);var $e=l(ge,Re,xe),vt=s(ge,Re,xe),et,Nt,Mt=($e+vt)/2;if($e==vt)et=Nt=0;else{var Ct=$e-vt;switch(Nt=Mt>.5?Ct/(2-$e-vt):Ct/($e+vt),$e){case ge:et=(Re-xe)/Ct+(Re1&&(xt-=1),xt<1/6?Rt+(Ut-Rt)*6*xt:xt<1/2?Ut:xt<2/3?Rt+(Ut-Rt)*(2/3-xt)*6:Rt}if(Re===0)$e=vt=et=xe;else{var Mt=xe<.5?xe*(1+Re):xe+Re-xe*Re,Ct=2*xe-Mt;$e=Nt(Ct,Mt,ge+1/3),vt=Nt(Ct,Mt,ge),et=Nt(Ct,Mt,ge-1/3)}return{r:$e*255,g:vt*255,b:et*255}}function S(ge,Re,xe){ge=Ae(ge,255),Re=Ae(Re,255),xe=Ae(xe,255);var $e=l(ge,Re,xe),vt=s(ge,Re,xe),et,Nt,Mt=$e,Ct=$e-vt;if(Nt=$e===0?0:Ct/$e,$e==vt)et=0;else{switch($e){case ge:et=(Re-xe)/Ct+(Re>1)+720)%360;--Re;)$e.h=($e.h+vt)%360,et.push(h($e));return et}function ve(ge,Re){Re=Re||6;for(var xe=h(ge).toHsv(),$e=xe.h,vt=xe.s,et=xe.v,Nt=[],Mt=1/Re;Re--;)Nt.push(h({h:$e,s:vt,v:et})),et=(et+Mt)%1;return Nt}h.mix=function(ge,Re,xe){xe=xe===0?0:xe||50;var $e=h(ge).toRgb(),vt=h(Re).toRgb(),et=xe/100,Nt={r:(vt.r-$e.r)*et+$e.r,g:(vt.g-$e.g)*et+$e.g,b:(vt.b-$e.b)*et+$e.b,a:(vt.a-$e.a)*et+$e.a};return h(Nt)},h.readability=function(ge,Re){var xe=h(ge),$e=h(Re);return(e.max(xe.getLuminance(),$e.getLuminance())+.05)/(e.min(xe.getLuminance(),$e.getLuminance())+.05)},h.isReadable=function(ge,Re,xe){var $e=h.readability(ge,Re),vt,et;switch(et=!1,vt=pt(xe),vt.level+vt.size){case"AAsmall":case"AAAlarge":et=$e>=4.5;break;case"AAlarge":et=$e>=3;break;case"AAAsmall":et=$e>=7;break}return et},h.mostReadable=function(ge,Re,xe){var $e=null,vt=0,et,Nt,Mt,Ct;xe=xe||{},Nt=xe.includeFallbackColors,Mt=xe.level,Ct=xe.size;for(var Rt=0;Rtvt&&(vt=et,$e=h(Re[Rt]));return h.isReadable(ge,$e,{level:Mt,size:Ct})||!Nt?$e:(xe.includeFallbackColors=!1,h.mostReadable(ge,["#fff","#000"],xe))};var Ce=h.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Se=h.hexNames=Te(Ce);function Te(ge){var Re={};for(var xe in ge)ge.hasOwnProperty(xe)&&(Re[ge[xe]]=xe);return Re}function pe(ge){return ge=parseFloat(ge),(isNaN(ge)||ge<0||ge>1)&&(ge=1),ge}function Ae(ge,Re){Ke(ge)&&(ge="100%");var xe=ht(ge);return ge=s(Re,l(0,parseFloat(ge))),xe&&(ge=parseInt(ge*Re,10)/100),e.abs(ge-Re)<1e-6?1:ge%Re/parseFloat(Re)}function Me(ge){return s(1,l(0,ge))}function Le(ge){return parseInt(ge,16)}function Ke(ge){return typeof ge=="string"&&ge.indexOf(".")!=-1&&parseFloat(ge)===1}function ht(ge){return typeof ge=="string"&&ge.indexOf("%")!=-1}function it(ge){return ge.length==1?"0"+ge:""+ge}function lt(ge){return ge<=1&&(ge=ge*100+"%"),ge}function He(ge){return e.round(parseFloat(ge)*255).toString(16)}function _t(ge){return Le(ge)/255}var at=function(){var ge="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",xe="(?:"+Re+")|(?:"+ge+")",$e="[\\s|\\(]+("+xe+")[,|\\s]+("+xe+")[,|\\s]+("+xe+")\\s*\\)?",vt="[\\s|\\(]+("+xe+")[,|\\s]+("+xe+")[,|\\s]+("+xe+")[,|\\s]+("+xe+")\\s*\\)?";return{CSS_UNIT:new RegExp(xe),rgb:new RegExp("rgb"+$e),rgba:new RegExp("rgba"+vt),hsl:new RegExp("hsl"+$e),hsla:new RegExp("hsla"+vt),hsv:new RegExp("hsv"+$e),hsva:new RegExp("hsva"+vt),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function At(ge){return!!at.CSS_UNIT.exec(ge)}function kt(ge){ge=ge.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(Ce[ge])ge=Ce[ge],Re=!0;else if(ge=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var xe;return(xe=at.rgb.exec(ge))?{r:xe[1],g:xe[2],b:xe[3]}:(xe=at.rgba.exec(ge))?{r:xe[1],g:xe[2],b:xe[3],a:xe[4]}:(xe=at.hsl.exec(ge))?{h:xe[1],s:xe[2],l:xe[3]}:(xe=at.hsla.exec(ge))?{h:xe[1],s:xe[2],l:xe[3],a:xe[4]}:(xe=at.hsv.exec(ge))?{h:xe[1],s:xe[2],v:xe[3]}:(xe=at.hsva.exec(ge))?{h:xe[1],s:xe[2],v:xe[3],a:xe[4]}:(xe=at.hex8.exec(ge))?{r:Le(xe[1]),g:Le(xe[2]),b:Le(xe[3]),a:_t(xe[4]),format:Re?"name":"hex8"}:(xe=at.hex6.exec(ge))?{r:Le(xe[1]),g:Le(xe[2]),b:Le(xe[3]),format:Re?"name":"hex"}:(xe=at.hex4.exec(ge))?{r:Le(xe[1]+""+xe[1]),g:Le(xe[2]+""+xe[2]),b:Le(xe[3]+""+xe[3]),a:_t(xe[4]+""+xe[4]),format:Re?"name":"hex8"}:(xe=at.hex3.exec(ge))?{r:Le(xe[1]+""+xe[1]),g:Le(xe[2]+""+xe[2]),b:Le(xe[3]+""+xe[3]),format:Re?"name":"hex"}:!1}function pt(ge){var Re,xe;return ge=ge||{level:"AA",size:"small"},Re=(ge.level||"AA").toUpperCase(),xe=(ge.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),xe!=="small"&&xe!=="large"&&(xe="small"),{level:Re,size:xe}}typeof K1!="undefined"&&K1.exports?K1.exports=h:window.tinycolor=h})(Math)});var hn=de(Sy=>{"use strict";var Y7=cc(),Ay=Array.isArray;function bj(e,t){var r,i;for(r=0;r{"use strict";W7.exports=function(e){var t=e.variantValues,r=e.editType,i=e.colorEditType;i===void 0&&(i=r);var a={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(a.valType="enumerated",a.values=a.extras,a.extras=void 0,a.min=void 0,a.max=void 0);var s={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:i},weight:a,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(s.size.dflt="auto"),e.autoColor&&(s.color.dflt="auto"),e.arrayOk&&(s.family.arrayOk=!0,s.weight.arrayOk=!0,s.style.arrayOk=!0,e.noFontVariant||(s.variant.arrayOk=!0),e.noFontTextcase||(s.textcase.arrayOk=!0),e.noFontLineposition||(s.lineposition.arrayOk=!0),e.noFontShadow||(s.shadow.arrayOk=!0),s.size.arrayOk=!0,s.color.arrayOk=!0),s}});var ky=de((Nme,X7)=>{"use strict";X7.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var f0=de((Bme,K7)=>{"use strict";var j7=ky(),J7=qo(),G3=J7({editType:"none"});G3.family.dflt=j7.HOVERFONT;G3.size.dflt=j7.HOVERFONTSIZE;K7.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:G3,grouptitlefont:J7({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var e_=de((Ome,Q7)=>{"use strict";var wj=qo(),Q1=f0().hoverlabel,$1=hn().extendFlat;Q7.exports={hoverlabel:{bgcolor:$1({},Q1.bgcolor,{arrayOk:!0}),bordercolor:$1({},Q1.bordercolor,{arrayOk:!0}),font:wj({arrayOk:!0,editType:"none"}),align:$1({},Q1.align,{arrayOk:!0}),namelength:$1({},Q1.namelength,{arrayOk:!0}),editType:"none"}}});var ms=de((Ume,$7)=>{"use strict";var Tj=qo(),Aj=e_();$7.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:Tj({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:Aj.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var ed=de((Vme,r8)=>{"use strict";var Mj=Tf(),t_={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},e8=t_.RdBu;function Sj(e,t){if(t||(t=e8),!e)return t;function r(){try{e=t_[e]||JSON.parse(e)}catch(i){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),t8(e)?e:t}function t8(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r{"use strict";td.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];td.defaultLine="#444";td.lightLine="#eee";td.background="#fff";td.borderLine="#BEC8D9";td.lightFraction=100*10/11});var Ua=de((Gme,a8)=>{"use strict";var Rs=Tf(),Cj=Da(),Ej=il().isTypedArray,$n=a8.exports={},r_=Af();$n.defaults=r_.defaults;var Lj=$n.defaultLine=r_.defaultLine;$n.lightLine=r_.lightLine;var Y3=$n.background=r_.background;$n.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};$n.rgb=function(e){return $n.tinyRGB(Rs(e))};$n.opacity=function(e){return e?Rs(e).getAlpha():0};$n.addOpacity=function(e,t){var r=Rs(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};$n.combine=function(e,t){var r=Rs(e).toRgb();if(r.a===1)return Rs(e).toRgbString();var i=Rs(t||Y3).toRgb(),a=i.a===1?i:{r:255*(1-i.a)+i.r*i.a,g:255*(1-i.a)+i.g*i.a,b:255*(1-i.a)+i.b*i.a},s={r:a.r*(1-r.a)+r.r*r.a,g:a.g*(1-r.a)+r.g*r.a,b:a.b*(1-r.a)+r.b*r.a};return Rs(s).toRgbString()};$n.interpolate=function(e,t,r){var i=Rs(e).toRgb(),a=Rs(t).toRgb(),s={r:r*i.r+(1-r)*a.r,g:r*i.g+(1-r)*a.g,b:r*i.b+(1-r)*a.b};return Rs(s).toRgbString()};$n.contrast=function(e,t,r){var i=Rs(e);i.getAlpha()!==1&&(i=Rs($n.combine(e,Y3)));var a=i.isDark()?t?i.lighten(t):Y3:r?i.darken(r):Lj;return a.toString()};$n.stroke=function(e,t){var r=Rs(t);e.style({stroke:$n.tinyRGB(r),"stroke-opacity":r.getAlpha()})};$n.fill=function(e,t){var r=Rs(t);e.style({fill:$n.tinyRGB(r),"fill-opacity":r.getAlpha()})};$n.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,i,a,s;for(r=0;r=0)))return e;if(s===3)i[s]>1&&(i[s]=1);else if(i[s]>=1)return e}var l=Math.round(i[0]*255)+", "+Math.round(i[1]*255)+", "+Math.round(i[2]*255);return a?"rgba("+l+", "+i[3]+")":"rgb("+l+")"}});var a_=de((Zme,i8)=>{"use strict";i8.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var c0=de(n8=>{"use strict";n8.counter=function(e,t,r,i){var a=(t||"")+(r?"":"$"),s=i===!1?"":"^";return e==="xy"?new RegExp(s+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+a):new RegExp(s+e+"([2-9]|[1-9][0-9]+)?"+a)}});var u8=de(Fs=>{"use strict";var W3=Da(),o8=Tf(),s8=hn().extendFlat,Pj=ms(),Dj=ed(),zj=Ua(),Ij=a_().DESELECTDIM,h0=wy(),l8=c0().counter,Rj=u0().modHalf,Mf=il().isArrayOrTypedArray,bh=il().isTypedArraySpec,wh=il().decodeTypedArraySpec;Fs.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(Mf(e)?e:bh(e)?wh(e):r)}},enumerated:{coerceFunction:function(e,t,r,i){i.coerceNumber&&(e=+e),i.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,i=0;ii.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,i){if((i.extras||[]).indexOf(e)!==-1){t.set(e);return}bh(e)&&(e=wh(e)),e%1||!W3(e)||i.min!==void 0&&ei.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,i){if(typeof e!="string"){var a=typeof e=="number";i.strict===!0||!a?t.set(r):t.set(String(e))}else i.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){bh(e)&&(e=wh(e)),o8(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function i(a){return o8(a).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(i)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(Dj.get(e,r))}},angle:{coerceFunction:function(e,t,r){bh(e)&&(e=wh(e)),e==="auto"?t.set("auto"):W3(e)?t.set(Rj(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,i){var a=i.regex||l8(r);if(typeof e=="string"&&a.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!l8(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,i){if((i.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var a=e.split("+"),s=0;s{"use strict";var f8={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},c8={};function h8(e,t){for(var r in e){var i=e[r];i.valType?t[r]=i.dflt:(t[r]||(t[r]={}),h8(i,t[r]))}}h8(f8,c8);v8.exports={configAttributes:f8,dfltConfig:c8}});var j3=de((jme,d8)=>{"use strict";var X3=ja(),Fj=Da(),Cy=[];d8.exports=function(e,t){if(Cy.indexOf(e)!==-1)return;Cy.push(e);var r=1e3;Fj(t)?r=t:t==="long"&&(r=3e3);var i=X3.select("body").selectAll(".plotly-notifier").data([0]);i.enter().append("div").classed("plotly-notifier",!0);var a=i.selectAll(".notifier-note").data(Cy);function s(l){l.duration(700).style("opacity",0).each("end",function(f){var h=Cy.indexOf(f);h!==-1&&Cy.splice(h,1),X3.select(this).remove()})}a.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(l){var f=X3.select(this);f.append("button").classed("notifier-close",!0).html("×").on("click",function(){f.transition().call(s)});for(var h=f.append("p"),v=l.split(//g),m=0;m{"use strict";var v0=rd().dfltConfig,J3=j3(),K3=p8.exports={};K3.log=function(){var e;if(v0.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};K3.warn=function(){var e;if(v0.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};K3.error=function(){var e;if(v0.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var n_=de((Kme,m8)=>{"use strict";m8.exports=function(){}});var Q3=de((Qme,y8)=>{"use strict";y8.exports=function(t,r){if(r instanceof RegExp){for(var i=r.toString(),a=0;a{g8.exports=qj;function qj(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var b8=de((eye,x8)=>{x8.exports=Nj;function Nj(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var T8=de((tye,w8)=>{w8.exports=Bj;function Bj(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var $3=de((rye,A8)=>{A8.exports=Oj;function Oj(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var S8=de((aye,M8)=>{M8.exports=Uj;function Uj(e,t){if(e===t){var r=t[1],i=t[2],a=t[3],s=t[6],l=t[7],f=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=i,e[9]=s,e[11]=t[14],e[12]=a,e[13]=l,e[14]=f}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var C8=de((iye,k8)=>{k8.exports=Vj;function Vj(e,t){var r=t[0],i=t[1],a=t[2],s=t[3],l=t[4],f=t[5],h=t[6],v=t[7],m=t[8],b=t[9],T=t[10],S=t[11],C=t[12],P=t[13],E=t[14],I=t[15],q=r*f-i*l,B=r*h-a*l,z=r*v-s*l,O=i*h-a*f,H=i*v-s*f,V=a*v-s*h,W=m*P-b*C,J=m*E-T*C,re=m*I-S*C,oe=b*E-T*P,ne=b*I-S*P,fe=T*I-S*E,ve=q*fe-B*ne+z*oe+O*re-H*J+V*W;return ve?(ve=1/ve,e[0]=(f*fe-h*ne+v*oe)*ve,e[1]=(a*ne-i*fe-s*oe)*ve,e[2]=(P*V-E*H+I*O)*ve,e[3]=(T*H-b*V-S*O)*ve,e[4]=(h*re-l*fe-v*J)*ve,e[5]=(r*fe-a*re+s*J)*ve,e[6]=(E*z-C*V-I*B)*ve,e[7]=(m*V-T*z+S*B)*ve,e[8]=(l*ne-f*re+v*W)*ve,e[9]=(i*re-r*ne-s*W)*ve,e[10]=(C*H-P*z+I*q)*ve,e[11]=(b*z-m*H-S*q)*ve,e[12]=(f*J-l*oe-h*W)*ve,e[13]=(r*oe-i*J+a*W)*ve,e[14]=(P*B-C*O-E*q)*ve,e[15]=(m*O-b*B+T*q)*ve,e):null}});var L8=de((nye,E8)=>{E8.exports=Hj;function Hj(e,t){var r=t[0],i=t[1],a=t[2],s=t[3],l=t[4],f=t[5],h=t[6],v=t[7],m=t[8],b=t[9],T=t[10],S=t[11],C=t[12],P=t[13],E=t[14],I=t[15];return e[0]=f*(T*I-S*E)-b*(h*I-v*E)+P*(h*S-v*T),e[1]=-(i*(T*I-S*E)-b*(a*I-s*E)+P*(a*S-s*T)),e[2]=i*(h*I-v*E)-f*(a*I-s*E)+P*(a*v-s*h),e[3]=-(i*(h*S-v*T)-f*(a*S-s*T)+b*(a*v-s*h)),e[4]=-(l*(T*I-S*E)-m*(h*I-v*E)+C*(h*S-v*T)),e[5]=r*(T*I-S*E)-m*(a*I-s*E)+C*(a*S-s*T),e[6]=-(r*(h*I-v*E)-l*(a*I-s*E)+C*(a*v-s*h)),e[7]=r*(h*S-v*T)-l*(a*S-s*T)+m*(a*v-s*h),e[8]=l*(b*I-S*P)-m*(f*I-v*P)+C*(f*S-v*b),e[9]=-(r*(b*I-S*P)-m*(i*I-s*P)+C*(i*S-s*b)),e[10]=r*(f*I-v*P)-l*(i*I-s*P)+C*(i*v-s*f),e[11]=-(r*(f*S-v*b)-l*(i*S-s*b)+m*(i*v-s*f)),e[12]=-(l*(b*E-T*P)-m*(f*E-h*P)+C*(f*T-h*b)),e[13]=r*(b*E-T*P)-m*(i*E-a*P)+C*(i*T-a*b),e[14]=-(r*(f*E-h*P)-l*(i*E-a*P)+C*(i*h-a*f)),e[15]=r*(f*T-h*b)-l*(i*T-a*b)+m*(i*h-a*f),e}});var D8=de((oye,P8)=>{P8.exports=Gj;function Gj(e){var t=e[0],r=e[1],i=e[2],a=e[3],s=e[4],l=e[5],f=e[6],h=e[7],v=e[8],m=e[9],b=e[10],T=e[11],S=e[12],C=e[13],P=e[14],E=e[15],I=t*l-r*s,q=t*f-i*s,B=t*h-a*s,z=r*f-i*l,O=r*h-a*l,H=i*h-a*f,V=v*C-m*S,W=v*P-b*S,J=v*E-T*S,re=m*P-b*C,oe=m*E-T*C,ne=b*E-T*P;return I*ne-q*oe+B*re+z*J-O*W+H*V}});var I8=de((sye,z8)=>{z8.exports=Zj;function Zj(e,t,r){var i=t[0],a=t[1],s=t[2],l=t[3],f=t[4],h=t[5],v=t[6],m=t[7],b=t[8],T=t[9],S=t[10],C=t[11],P=t[12],E=t[13],I=t[14],q=t[15],B=r[0],z=r[1],O=r[2],H=r[3];return e[0]=B*i+z*f+O*b+H*P,e[1]=B*a+z*h+O*T+H*E,e[2]=B*s+z*v+O*S+H*I,e[3]=B*l+z*m+O*C+H*q,B=r[4],z=r[5],O=r[6],H=r[7],e[4]=B*i+z*f+O*b+H*P,e[5]=B*a+z*h+O*T+H*E,e[6]=B*s+z*v+O*S+H*I,e[7]=B*l+z*m+O*C+H*q,B=r[8],z=r[9],O=r[10],H=r[11],e[8]=B*i+z*f+O*b+H*P,e[9]=B*a+z*h+O*T+H*E,e[10]=B*s+z*v+O*S+H*I,e[11]=B*l+z*m+O*C+H*q,B=r[12],z=r[13],O=r[14],H=r[15],e[12]=B*i+z*f+O*b+H*P,e[13]=B*a+z*h+O*T+H*E,e[14]=B*s+z*v+O*S+H*I,e[15]=B*l+z*m+O*C+H*q,e}});var F8=de((lye,R8)=>{R8.exports=Yj;function Yj(e,t,r){var i=r[0],a=r[1],s=r[2],l,f,h,v,m,b,T,S,C,P,E,I;return t===e?(e[12]=t[0]*i+t[4]*a+t[8]*s+t[12],e[13]=t[1]*i+t[5]*a+t[9]*s+t[13],e[14]=t[2]*i+t[6]*a+t[10]*s+t[14],e[15]=t[3]*i+t[7]*a+t[11]*s+t[15]):(l=t[0],f=t[1],h=t[2],v=t[3],m=t[4],b=t[5],T=t[6],S=t[7],C=t[8],P=t[9],E=t[10],I=t[11],e[0]=l,e[1]=f,e[2]=h,e[3]=v,e[4]=m,e[5]=b,e[6]=T,e[7]=S,e[8]=C,e[9]=P,e[10]=E,e[11]=I,e[12]=l*i+m*a+C*s+t[12],e[13]=f*i+b*a+P*s+t[13],e[14]=h*i+T*a+E*s+t[14],e[15]=v*i+S*a+I*s+t[15]),e}});var N8=de((uye,q8)=>{q8.exports=Wj;function Wj(e,t,r){var i=r[0],a=r[1],s=r[2];return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*a,e[5]=t[5]*a,e[6]=t[6]*a,e[7]=t[7]*a,e[8]=t[8]*s,e[9]=t[9]*s,e[10]=t[10]*s,e[11]=t[11]*s,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var O8=de((fye,B8)=>{B8.exports=Xj;function Xj(e,t,r,i){var a=i[0],s=i[1],l=i[2],f=Math.sqrt(a*a+s*s+l*l),h,v,m,b,T,S,C,P,E,I,q,B,z,O,H,V,W,J,re,oe,ne,fe,ve,Ce;return Math.abs(f)<1e-6?null:(f=1/f,a*=f,s*=f,l*=f,h=Math.sin(r),v=Math.cos(r),m=1-v,b=t[0],T=t[1],S=t[2],C=t[3],P=t[4],E=t[5],I=t[6],q=t[7],B=t[8],z=t[9],O=t[10],H=t[11],V=a*a*m+v,W=s*a*m+l*h,J=l*a*m-s*h,re=a*s*m-l*h,oe=s*s*m+v,ne=l*s*m+a*h,fe=a*l*m+s*h,ve=s*l*m-a*h,Ce=l*l*m+v,e[0]=b*V+P*W+B*J,e[1]=T*V+E*W+z*J,e[2]=S*V+I*W+O*J,e[3]=C*V+q*W+H*J,e[4]=b*re+P*oe+B*ne,e[5]=T*re+E*oe+z*ne,e[6]=S*re+I*oe+O*ne,e[7]=C*re+q*oe+H*ne,e[8]=b*fe+P*ve+B*Ce,e[9]=T*fe+E*ve+z*Ce,e[10]=S*fe+I*ve+O*Ce,e[11]=C*fe+q*ve+H*Ce,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var V8=de((cye,U8)=>{U8.exports=jj;function jj(e,t,r){var i=Math.sin(r),a=Math.cos(r),s=t[4],l=t[5],f=t[6],h=t[7],v=t[8],m=t[9],b=t[10],T=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=s*a+v*i,e[5]=l*a+m*i,e[6]=f*a+b*i,e[7]=h*a+T*i,e[8]=v*a-s*i,e[9]=m*a-l*i,e[10]=b*a-f*i,e[11]=T*a-h*i,e}});var G8=de((hye,H8)=>{H8.exports=Jj;function Jj(e,t,r){var i=Math.sin(r),a=Math.cos(r),s=t[0],l=t[1],f=t[2],h=t[3],v=t[8],m=t[9],b=t[10],T=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=s*a-v*i,e[1]=l*a-m*i,e[2]=f*a-b*i,e[3]=h*a-T*i,e[8]=s*i+v*a,e[9]=l*i+m*a,e[10]=f*i+b*a,e[11]=h*i+T*a,e}});var Y8=de((vye,Z8)=>{Z8.exports=Kj;function Kj(e,t,r){var i=Math.sin(r),a=Math.cos(r),s=t[0],l=t[1],f=t[2],h=t[3],v=t[4],m=t[5],b=t[6],T=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=s*a+v*i,e[1]=l*a+m*i,e[2]=f*a+b*i,e[3]=h*a+T*i,e[4]=v*a-s*i,e[5]=m*a-l*i,e[6]=b*a-f*i,e[7]=T*a-h*i,e}});var X8=de((dye,W8)=>{W8.exports=Qj;function Qj(e,t,r){var i,a,s,l=r[0],f=r[1],h=r[2],v=Math.sqrt(l*l+f*f+h*h);return Math.abs(v)<1e-6?null:(v=1/v,l*=v,f*=v,h*=v,i=Math.sin(t),a=Math.cos(t),s=1-a,e[0]=l*l*s+a,e[1]=f*l*s+h*i,e[2]=h*l*s-f*i,e[3]=0,e[4]=l*f*s-h*i,e[5]=f*f*s+a,e[6]=h*f*s+l*i,e[7]=0,e[8]=l*h*s+f*i,e[9]=f*h*s-l*i,e[10]=h*h*s+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var J8=de((pye,j8)=>{j8.exports=$j;function $j(e,t,r){var i=t[0],a=t[1],s=t[2],l=t[3],f=i+i,h=a+a,v=s+s,m=i*f,b=i*h,T=i*v,S=a*h,C=a*v,P=s*v,E=l*f,I=l*h,q=l*v;return e[0]=1-(S+P),e[1]=b+q,e[2]=T-I,e[3]=0,e[4]=b-q,e[5]=1-(m+P),e[6]=C+E,e[7]=0,e[8]=T+I,e[9]=C-E,e[10]=1-(m+S),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var Q8=de((mye,K8)=>{K8.exports=eJ;function eJ(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var eS=de((yye,$8)=>{$8.exports=tJ;function tJ(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var rS=de((gye,tS)=>{tS.exports=rJ;function rJ(e,t){var r=Math.sin(t),i=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var iS=de((_ye,aS)=>{aS.exports=aJ;function aJ(e,t){var r=Math.sin(t),i=Math.cos(t);return e[0]=i,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var oS=de((xye,nS)=>{nS.exports=iJ;function iJ(e,t){var r=Math.sin(t),i=Math.cos(t);return e[0]=i,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ew=de((bye,sS)=>{sS.exports=nJ;function nJ(e,t){var r=t[0],i=t[1],a=t[2],s=t[3],l=r+r,f=i+i,h=a+a,v=r*l,m=i*l,b=i*f,T=a*l,S=a*f,C=a*h,P=s*l,E=s*f,I=s*h;return e[0]=1-b-C,e[1]=m+I,e[2]=T-E,e[3]=0,e[4]=m-I,e[5]=1-v-C,e[6]=S+P,e[7]=0,e[8]=T+E,e[9]=S-P,e[10]=1-v-b,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var uS=de((wye,lS)=>{lS.exports=oJ;function oJ(e,t,r,i,a,s,l){var f=1/(r-t),h=1/(a-i),v=1/(s-l);return e[0]=s*2*f,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s*2*h,e[6]=0,e[7]=0,e[8]=(r+t)*f,e[9]=(a+i)*h,e[10]=(l+s)*v,e[11]=-1,e[12]=0,e[13]=0,e[14]=l*s*2*v,e[15]=0,e}});var cS=de((Tye,fS)=>{fS.exports=sJ;function sJ(e,t,r,i,a){var s=1/Math.tan(t/2),l=1/(i-a);return e[0]=s/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(a+i)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*i*l,e[15]=0,e}});var vS=de((Aye,hS)=>{hS.exports=lJ;function lJ(e,t,r,i){var a=Math.tan(t.upDegrees*Math.PI/180),s=Math.tan(t.downDegrees*Math.PI/180),l=Math.tan(t.leftDegrees*Math.PI/180),f=Math.tan(t.rightDegrees*Math.PI/180),h=2/(l+f),v=2/(a+s);return e[0]=h,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=v,e[6]=0,e[7]=0,e[8]=-((l-f)*h*.5),e[9]=(a-s)*v*.5,e[10]=i/(r-i),e[11]=-1,e[12]=0,e[13]=0,e[14]=i*r/(r-i),e[15]=0,e}});var pS=de((Mye,dS)=>{dS.exports=uJ;function uJ(e,t,r,i,a,s,l){var f=1/(t-r),h=1/(i-a),v=1/(s-l);return e[0]=-2*f,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*h,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*v,e[11]=0,e[12]=(t+r)*f,e[13]=(a+i)*h,e[14]=(l+s)*v,e[15]=1,e}});var yS=de((Sye,mS)=>{var fJ=$3();mS.exports=cJ;function cJ(e,t,r,i){var a,s,l,f,h,v,m,b,T,S,C=t[0],P=t[1],E=t[2],I=i[0],q=i[1],B=i[2],z=r[0],O=r[1],H=r[2];return Math.abs(C-z)<1e-6&&Math.abs(P-O)<1e-6&&Math.abs(E-H)<1e-6?fJ(e):(m=C-z,b=P-O,T=E-H,S=1/Math.sqrt(m*m+b*b+T*T),m*=S,b*=S,T*=S,a=q*T-B*b,s=B*m-I*T,l=I*b-q*m,S=Math.sqrt(a*a+s*s+l*l),S?(S=1/S,a*=S,s*=S,l*=S):(a=0,s=0,l=0),f=b*l-T*s,h=T*a-m*l,v=m*s-b*a,S=Math.sqrt(f*f+h*h+v*v),S?(S=1/S,f*=S,h*=S,v*=S):(f=0,h=0,v=0),e[0]=a,e[1]=f,e[2]=m,e[3]=0,e[4]=s,e[5]=h,e[6]=b,e[7]=0,e[8]=l,e[9]=v,e[10]=T,e[11]=0,e[12]=-(a*C+s*P+l*E),e[13]=-(f*C+h*P+v*E),e[14]=-(m*C+b*P+T*E),e[15]=1,e)}});var _S=de((kye,gS)=>{gS.exports=hJ;function hJ(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var tw=de((Cye,xS)=>{xS.exports={create:_8(),clone:b8(),copy:T8(),identity:$3(),transpose:S8(),invert:C8(),adjoint:L8(),determinant:D8(),multiply:I8(),translate:F8(),scale:N8(),rotate:O8(),rotateX:V8(),rotateY:G8(),rotateZ:Y8(),fromRotation:X8(),fromRotationTranslation:J8(),fromScaling:Q8(),fromTranslation:eS(),fromXRotation:rS(),fromYRotation:iS(),fromZRotation:oS(),fromQuat:ew(),frustum:uS(),perspective:cS(),perspectiveFromFieldOfView:vS(),ortho:pS(),lookAt:yS(),str:_S()}});var o_=de(Sn=>{"use strict";var vJ=tw();Sn.init2dArray=function(e,t){for(var r=new Array(e),i=0;i{"use strict";var dJ=ja(),bS=Th(),pJ=o_(),mJ=tw();function yJ(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function gJ(e){var t=dJ.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function wS(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function _J(e,t){TS("global",e,t)}function TS(e,t,r){var i="plotly.js-style-"+e,a=document.getElementById(i);if(!(a&&a.matches(".no-inline-styles"))){a||(a=document.createElement("style"),a.setAttribute("id",i),a.appendChild(document.createTextNode("")),document.head.appendChild(a));var s=a.sheet;s?s.insertRule?s.insertRule(t+"{"+r+"}",0):s.addRule?s.addRule(t,r,0):bS.warn("addStyleRule failed"):bS.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function xJ(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&wS(r)}function bJ(e,t,r,i,a,s){var l=i.split(":"),f=a.split(":"),h="data-btn-style-event-added";s||(s=document),s.querySelectorAll(e).forEach(function(v){v.getAttribute(h)||(v.addEventListener("mouseenter",function(){var m=this.querySelector(r);m&&(m.style[l[0]]=l[1])}),v.addEventListener("mouseleave",function(){var m=this.querySelector(r);m&&(t&&this.matches(t)?m.style[l[0]]=l[1]:m.style[f[0]]=f[1])}),v.setAttribute(h,!0))})}function wJ(e){var t=MS(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(i){var a=AS(i);if(a){var s=pJ.convertCssMatrix(a);r=mJ.multiply(r,r,s)}}),r}function AS(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(i){return+i})}function MS(e){for(var t=[];TJ(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function TJ(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function AJ(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}SS.exports={getGraphDiv:yJ,isPlotDiv:gJ,removeElement:wS,addStyleRule:_J,addRelatedStyleRule:TS,deleteRelatedStyleRule:xJ,setStyleOnHover:bJ,getFullTransformMatrix:wJ,getElementTransformMatrix:AS,getElementAndAncestors:MS,equalDomRects:AJ}});var Ly=de((Pye,kS)=>{"use strict";kS.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var nl=de((Dye,IS)=>{"use strict";var ES=hn().extendFlat,MJ=cc(),LS={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},PS={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},SJ=LS.flags.slice().concat(["fullReplot"]),kJ=PS.flags.slice().concat("layoutReplot");IS.exports={traces:LS,layout:PS,traceFlags:function(){return CS(SJ)},layoutFlags:function(){return CS(kJ)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var i=r.split("+"),a=0;a{"use strict";rw.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};rw.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var aw=de((Iye,RS)=>{"use strict";RS.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Hl=de(s_=>{"use strict";var FS=aw(),Rye=FS.FORMAT_LINK,Fye=FS.DATE_FORMAT_LINK;function iw(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var i=[],a=0;a{"use strict";function Ah(e,t){return t?t.d2l(e):e}function qS(e,t){return t?t.l2d(e):e}function CJ(e){return e.x0}function EJ(e){return e.x1}function LJ(e){return e.y0}function PJ(e){return e.y1}function NS(e){return e.x0shift||0}function BS(e){return e.x1shift||0}function OS(e){return e.y0shift||0}function US(e){return e.y1shift||0}function l_(e,t){return Ah(e.x1,t)+BS(e)-Ah(e.x0,t)-NS(e)}function u_(e,t,r){return Ah(e.y1,r)+US(e)-Ah(e.y0,r)-OS(e)}function DJ(e,t){return Math.abs(l_(e,t))}function zJ(e,t,r){return Math.abs(u_(e,t,r))}function IJ(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(l_(e,t),2)+Math.pow(u_(e,t,r),2))}function RJ(e,t){return qS((Ah(e.x1,t)+BS(e)+Ah(e.x0,t)+NS(e))/2,t)}function FJ(e,t,r){return qS((Ah(e.y1,r)+US(e)+Ah(e.y0,r)+OS(e))/2,r)}function qJ(e,t,r){return e.type!=="line"?void 0:u_(e,t,r)/l_(e,t)}VS.exports={x0:CJ,x1:EJ,y0:LJ,y1:PJ,slope:qJ,dx:l_,dy:u_,width:DJ,height:zJ,length:IJ,xcenter:RJ,ycenter:FJ}});var ZS=de((Bye,GS)=>{"use strict";var NJ=nl().overrideAll,ad=ms(),HS=qo(),BJ=hc().dash,Mh=hn().extendFlat,OJ=Hl().shapeTexttemplateAttrs,UJ=f_();GS.exports=NJ({newshape:{visible:Mh({},ad.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:Mh({},ad.legend,{}),legendgroup:Mh({},ad.legendgroup,{}),legendgrouptitle:{text:Mh({},ad.legendgrouptitle.text,{}),font:HS({})},legendrank:Mh({},ad.legendrank,{}),legendwidth:Mh({},ad.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:Mh({},BJ,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:Mh({},ad.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:OJ({newshape:!0},{keys:Object.keys(UJ)}),font:HS({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var WS=de((Oye,YS)=>{"use strict";var VJ=hc().dash,HJ=hn().extendFlat;YS.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:HJ({},VJ,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var c_=de((Uye,XS)=>{"use strict";XS.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var d0=de((Vye,QS)=>{"use strict";var nw=qo(),GJ=Ly(),h_=Af(),jS=ZS(),JS=WS(),ZJ=c_(),KS=hn().extendFlat,v_=nw({editType:"calc"});v_.family.dflt='"Open Sans", verdana, arial, sans-serif';v_.size.dflt=12;v_.color.dflt=h_.defaultLine;QS.exports={font:v_,title:{text:{valType:"string",editType:"layoutstyle"},font:nw({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:nw({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:KS(ZJ({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:h_.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:h_.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:h_.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:jS.newshape,activeshape:jS.activeshape,newselection:JS.newselection,activeselection:JS.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:KS({},GJ.transition,{editType:"none"})}});var $S=p7(()=>{});var YJ={};var e9=p7(()=>{$S()});var la=de(za=>{"use strict";var p0=Th(),t9=n_(),r9=Q3(),WJ=cc(),XJ=Ey().addStyleRule,a9=hn(),jJ=ms(),JJ=d0(),KJ=a9.extendFlat,ow=a9.extendDeepAll;za.modules={};za.allCategories={};za.allTypes=[];za.subplotsRegistry={};za.componentsRegistry={};za.layoutArrayContainers=[];za.layoutArrayRegexes=[];za.traceLayoutAttributes={};za.localeRegistry={};za.apiMethodRegistry={};za.collectableSubplotTypes=null;za.register=function(t){if(za.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r{"use strict";var aK=s0().timeFormat,d9=Da(),sw=Th(),kh=u0().mod,g0=Hi(),Gl=g0.BADNUM,qs=g0.ONEDAY,Py=g0.ONEHOUR,Sh=g0.ONEMIN,y0=g0.ONESEC,Dy=g0.EPOCHJD,vc=la(),l9=s0().utcFormat,iK=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,nK=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,u9=new Date().getFullYear()-70;function dc(e){return e&&vc.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}kn.dateTick0=function(e,t){var r=oK(e,!!t);if(t<2)return r;var i=kn.dateTime2ms(r,e);return i+=qs*(t-1),kn.ms2DateTime(i,0,e)};function oK(e,t){return dc(e)?t?vc.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:vc.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}kn.dfltRange=function(e){return dc(e)?vc.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};kn.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var p_,m_;kn.dateTime2ms=function(e,t){if(kn.isJSDate(e)){var r=e.getTimezoneOffset()*Sh,i=(e.getUTCMinutes()-e.getMinutes())*Sh+(e.getUTCSeconds()-e.getSeconds())*y0+(e.getUTCMilliseconds()-e.getMilliseconds());if(i){var a=3*Sh;r=r-a/2+kh(i-r+a/2,a)}return e=Number(e)-r,e>=p_&&e<=m_?e:Gl}if(typeof e!="string"&&typeof e!="number")return Gl;e=String(e);var s=dc(t),l=e.charAt(0);s&&(l==="G"||l==="g")&&(e=e.substr(1),t="");var f=s&&t.substr(0,7)==="chinese",h=e.match(f?nK:iK);if(!h)return Gl;var v=h[1],m=h[3]||"1",b=Number(h[5]||1),T=Number(h[7]||0),S=Number(h[9]||0),C=Number(h[11]||0);if(s){if(v.length===2)return Gl;v=Number(v);var P;try{var E=vc.getComponentMethod("calendars","getCal")(t);if(f){var I=m.charAt(m.length-1)==="i";m=parseInt(m,10),P=E.newDate(v,E.toMonthIndex(v,m,I),b)}else P=E.newDate(v,Number(m),b)}catch(B){return Gl}return P?(P.toJD()-Dy)*qs+T*Py+S*Sh+C*y0:Gl}v.length===2?v=(Number(v)+2e3-u9)%100+u9:v=Number(v),m-=1;var q=new Date(Date.UTC(2e3,m,b,T,S));return q.setUTCFullYear(v),q.getUTCMonth()!==m||q.getUTCDate()!==b?Gl:q.getTime()+C*y0};p_=kn.MIN_MS=kn.dateTime2ms("-9999");m_=kn.MAX_MS=kn.dateTime2ms("9999-12-31 23:59:59.9999");kn.isDateTime=function(e,t){return kn.dateTime2ms(e,t)!==Gl};function m0(e,t){return String(e+Math.pow(10,t)).substr(1)}var d_=90*qs,f9=3*Py,c9=5*Sh;kn.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=p_&&e<=m_))return Gl;t||(t=0);var i=Math.floor(kh(e+.05,1)*10),a=Math.round(e-i/10),s,l,f,h,v,m;if(dc(r)){var b=Math.floor(a/qs)+Dy,T=Math.floor(kh(e,qs));try{s=vc.getComponentMethod("calendars","getCal")(r).fromJD(b).formatDate("yyyy-mm-dd")}catch(S){s=l9("G%Y-%m-%d")(new Date(a))}if(s.charAt(0)==="-")for(;s.length<11;)s="-0"+s.substr(1);else for(;s.length<10;)s="0"+s;l=t=p_+qs&&e<=m_-qs))return Gl;var t=Math.floor(kh(e+.05,1)*10),r=new Date(Math.round(e-t/10)),i=aK("%Y-%m-%d")(r),a=r.getHours(),s=r.getMinutes(),l=r.getSeconds(),f=r.getUTCMilliseconds()*10+t;return p9(i,a,s,l,f)};function p9(e,t,r,i,a){if((t||r||i||a)&&(e+=" "+m0(t,2)+":"+m0(r,2),(i||a)&&(e+=":"+m0(i,2),a))){for(var s=4;a%10===0;)s-=1,a/=10;e+="."+m0(a,s)}return e}kn.cleanDate=function(e,t,r){if(e===Gl)return t;if(kn.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(dc(r))return sw.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=kn.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!kn.isDateTime(e,r))return sw.error("unrecognized date",e),t;return e};var sK=/%\d?f/g,lK=/%h/g,uK={1:"1",2:"1",3:"2",4:"2"};function h9(e,t,r,i){e=e.replace(sK,function(s){var l=Math.min(+s.charAt(1)||6,6),f=(t/1e3%1+2).toFixed(l).substr(2).replace(/0+$/,"")||"0";return f});var a=new Date(Math.floor(t+.05));if(e=e.replace(lK,function(){return uK[r("%q")(a)]}),dc(i))try{e=vc.getComponentMethod("calendars","worldCalFmt")(e,t,i)}catch(s){return"Invalid"}return r(e)(a)}var fK=[59,59.9,59.99,59.999,59.9999];function cK(e,t){var r=kh(e+.05,qs),i=m0(Math.floor(r/Py),2)+":"+m0(kh(Math.floor(r/Sh),60),2);if(t!=="M"){d9(t)||(t=0);var a=Math.min(kh(e/y0,60),fK[t]),s=(100+a).toFixed(t).substr(1);t>0&&(s=s.replace(/0+$/,"").replace(/[\.]$/,"")),i+=":"+s}return i}kn.formatDate=function(e,t,r,i,a,s){if(a=dc(a)&&a,!t)if(r==="y")t=s.year;else if(r==="m")t=s.month;else if(r==="d")t=s.dayMonth+` diff --git a/dist/plotly-strict.js b/dist/plotly-strict.js index 98c9c80e765..d3c33745b3e 100644 --- a/dist/plotly-strict.js +++ b/dist/plotly-strict.js @@ -1,5 +1,5 @@ /** -* plotly.js (strict) v3.0.3 +* plotly.js (strict) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -69,7 +69,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly-strict.min.js b/dist/plotly-strict.min.js index 18f368fd94d..e49303878b7 100644 --- a/dist/plotly-strict.min.js +++ b/dist/plotly-strict.min.js @@ -1,5 +1,5 @@ /** -* plotly.js (strict - minified) v3.0.3 +* plotly.js (strict - minified) v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var wtt=Object.create;var EM=Object.defineProperty,Ttt=Object.defineProperties,Att=Object.getOwnPropertyDescriptor,Stt=Object.getOwnPropertyDescriptors,Mtt=Object.getOwnPropertyNames,pee=Object.getOwnPropertySymbols,Ett=Object.getPrototypeOf,yee=Object.prototype.hasOwnProperty,ktt=Object.prototype.propertyIsEnumerable;var vee=(e,t,r)=>t in e?EM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mee=(e,t)=>{for(var r in t||(t={}))yee.call(t,r)&&vee(e,r,t[r]);if(pee)for(var r of pee(t))ktt.call(t,r)&&vee(e,r,t[r]);return e},gee=(e,t)=>Ttt(e,Stt(t));var Bf=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_ee=(e,t)=>{for(var r in t)EM(e,r,{get:t[r],enumerable:!0})},xee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Mtt(t))!yee.call(e,i)&&i!==r&&EM(e,i,{get:()=>t[i],enumerable:!(n=Att(t,i))||n.enumerable});return e};var Ctt=(e,t,r)=>(r=e!=null?wtt(Ett(e)):{},xee(t||!e||!e.__esModule?EM(r,"default",{value:e,enumerable:!0}):r,e)),O1=e=>xee(EM({},"__esModule",{value:!0}),e);var rL=Ae(bee=>{"use strict";bee.version="3.0.3"});var Tee=Ae((wee,iL)=>{(function(t,r,n){r[t]=r[t]||n(),typeof iL!="undefined"&&iL.exports&&(iL.exports=r[t])})("Promise",typeof window!="undefined"?window:wee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(k,E,A,L){return Object.defineProperty(k,E,{value:A,writable:!0,configurable:L!==!1})}}catch(v){t=function(E,A,L){return E[A]=L,E}}n=function(){var k,E,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),E?E.next=A:k=A,E=A,A=void 0},drain:function(){var C=k;for(k=E=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(v,k){n.add(v,k),r||(r=a(n.drain))}function s(v){var k,E=typeof v;return v!=null&&(E=="object"||E=="function")&&(k=v.then),typeof k=="function"?k:!1}function u(){for(var v=0;v0&&o(u,E))}catch(A){c.call(new d(E),A)}}}function c(v){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=v,k.state=2,k.chain.length>0&&o(u,k))}function h(v,k,E,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(X){return t.call(X)},n=self.document;function i(X){return X&&(X.ownerDocument||X.document||X).documentElement}function a(X){return X&&(X.ownerDocument&&X.ownerDocument.defaultView||X.document&&X||X.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(X){r=function(se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=se[Le];return We}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(X){var o=this.Element.prototype,s=o.setAttribute,u=o.setAttributeNS,l=this.CSSStyleDeclaration.prototype,f=l.setProperty;o.setAttribute=function(se,Le){s.call(this,se,Le+"")},o.setAttributeNS=function(se,Le,We){u.call(this,se,Le,We+"")},l.setProperty=function(se,Le,We){f.call(this,se,Le+"",We)}}e.ascending=c;function c(X,se){return Xse?1:X>=se?0:NaN}e.descending=function(X,se){return seX?1:se>=X?0:NaN},e.min=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}return Ye},e.max=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}return Ye},e.extent=function(X,se){var Le=-1,We=X.length,Ye,it,Nt;if(arguments.length===1){for(;++Le=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt1)return Nt/(er-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function p(X){return{left:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)<0?We=it+1:Ye=it}return We},right:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)>0?Ye=it:We=it+1}return We}}}var x=p(c);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(X){return p(X.length===1?function(se,Le){return c(X(se),Le)}:X)},e.shuffle=function(X,se,Le){(We=arguments.length)<3&&(Le=X.length,We<2&&(se=0));for(var We=Le-se,Ye,it;We;)it=Math.random()*We--|0,Ye=X[We+se],X[We+se]=X[it+se],X[it+se]=Ye;return X},e.permute=function(X,se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=X[se[Le]];return We},e.pairs=function(X){for(var se=0,Le=X.length-1,We,Ye=X[0],it=new Array(Le<0?0:Le);se=0;)for(Nt=X[se],Le=Nt.length;--Le>=0;)it[--Ye]=Nt[Le];return it};var v=Math.abs;e.range=function(X,se,Le){if(arguments.length<3&&(Le=1,arguments.length<2&&(se=X,X=0)),(se-X)/Le===1/0)throw new Error("infinite range");var We=[],Ye=k(v(Le)),it=-1,Nt;if(X*=Ye,se*=Ye,Le*=Ye,Le<0)for(;(Nt=X+Le*++it)>se;)We.push(Nt/Ye);else for(;(Nt=X+Le*++it)=se.length)return Ye?Ye.call(X,er):We?er.sort(We):er;for(var wr=-1,ni=er.length,Wr=se[_r++],Ci,Ji,ai,Ti=new A,Bi;++wr=se.length)return mt;var _r=[],wr=Le[er++];return mt.forEach(function(ni,Wr){_r.push({key:ni,values:Nt(Wr,er)})}),wr?_r.sort(function(ni,Wr){return wr(ni.key,Wr.key)}):_r}return X.map=function(mt,er){return it(er,mt,0)},X.entries=function(mt){return Nt(it(e.map,mt,0),0)},X.key=function(mt){return se.push(mt),X},X.sortKeys=function(mt){return Le[se.length-1]=mt,X},X.sortValues=function(mt){return We=mt,X},X.rollup=function(mt){return Ye=mt,X},X},e.set=function(X){var se=new U;if(X)for(var Le=0,We=X.length;Le=0&&(We=X.slice(Le+1),X=X.slice(0,Le)),X)return arguments.length<2?this[X].on(We):this[X].on(We,se);if(arguments.length===2){if(se==null)for(X in this)this.hasOwnProperty(X)&&this[X].on(We,null);return this}};function ne(X){var se=[],Le=new A;function We(){for(var Ye=se,it=-1,Nt=Ye.length,mt;++it=0&&(Le=X.slice(0,se))!=="xmlns"&&(X=X.slice(se+1)),Ze.hasOwnProperty(Le)?{space:Ze[Le],local:X}:X}},Re.attr=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node();return X=e.ns.qualify(X),X.local?Le.getAttributeNS(X.space,X.local):Le.getAttribute(X)}for(se in X)this.each(et(se,X[se]));return this}return this.each(et(X,se))};function et(X,se){X=e.ns.qualify(X);function Le(){this.removeAttribute(X)}function We(){this.removeAttributeNS(X.space,X.local)}function Ye(){this.setAttribute(X,se)}function it(){this.setAttributeNS(X.space,X.local,se)}function Nt(){var er=se.apply(this,arguments);er==null?this.removeAttribute(X):this.setAttribute(X,er)}function mt(){var er=se.apply(this,arguments);er==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,er)}return se==null?X.local?We:Le:typeof se=="function"?X.local?mt:Nt:X.local?it:Ye}function gt(X){return X.trim().replace(/\s+/g," ")}Re.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node(),We=(X=Qe(X)).length,Ye=-1;if(se=Le.classList){for(;++Ye=0;)(it=Le[We])&&(Ye&&Ye!==it.nextSibling&&Ye.parentNode.insertBefore(it,Ye),Ye=it);return this},Re.sort=function(X){X=nt.apply(this,arguments);for(var se=-1,Le=this.length;++se=se&&(se=Ye+1);!(er=Nt[se])&&++se0&&(X=X.slice(0,Ye));var Nt=Je.get(X);Nt&&(X=Nt,it=Vt);function mt(){var wr=this[We];wr&&(this.removeEventListener(X,wr,wr.$),delete this[We])}function er(){var wr=it(se,r(arguments));mt.call(this),this.addEventListener(X,this[We]=wr,wr.$=Le),wr._=se}function _r(){var wr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),ni;for(var Wr in this)if(ni=Wr.match(wr)){var Ci=this[Wr];this.removeEventListener(ni[1],Ci,Ci.$),delete this[Wr]}}return Ye?se?er:mt:se?W:_r}var Je=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Je.forEach(function(X){"on"+X in n&&Je.remove(X)});function Mt(X,se){return function(Le){var We=e.event;e.event=Le,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=We}}}function Vt(X,se){var Le=Mt(X,se);return function(We){var Ye=this,it=We.relatedTarget;(!it||it!==Ye&&!(it.compareDocumentPosition(Ye)&8))&&Le.call(Ye,We)}}var Kt,ir=0;function fr(X){var se=".dragsuppress-"+ ++ir,Le="click"+se,We=e.select(a(X)).on("touchmove"+se,be).on("dragstart"+se,be).on("selectstart"+se,be);if(Kt==null&&(Kt="onselectstart"in X?!1:G(X.style,"userSelect")),Kt){var Ye=i(X).style,it=Ye[Kt];Ye[Kt]="none"}return function(Nt){if(We.on(se,null),Kt&&(Ye[Kt]=it),Nt){var mt=function(){We.on(Le,null)};We.on(Le,function(){be(),mt()},!0),setTimeout(mt,0)}}}e.mouse=function(X){return De(X,ze())};var Ot=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function De(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Le=X.ownerSVGElement||X;if(Le.createSVGPoint){var We=Le.createSVGPoint();if(Ot<0){var Ye=a(X);if(Ye.scrollX||Ye.scrollY){Le=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var it=Le[0][0].getScreenCTM();Ot=!(it.f||it.e),Le.remove()}}return Ot?(We.x=se.pageX,We.y=se.pageY):(We.x=se.clientX,We.y=se.clientY),We=We.matrixTransform(X.getScreenCTM().inverse()),[We.x,We.y]}var Nt=X.getBoundingClientRect();return[se.clientX-Nt.left-X.clientLeft,se.clientY-Nt.top-X.clientTop]}e.touch=function(X,se,Le){if(arguments.length<3&&(Le=se,se=ze().changedTouches),se){for(var We=0,Ye=se.length,it;We0?1:X<0?-1:0}function St(X,se,Le){return(se[0]-X[0])*(Le[1]-X[1])-(se[1]-X[1])*(Le[0]-X[0])}function Zt(X){return X>1?0:X<-1?Ie:Math.acos(X)}function qr(X){return X>1?ue:X<-1?-ue:Math.asin(X)}function Lr(X){return((X=Math.exp(X))-1/X)/2}function vr(X){return((X=Math.exp(X))+1/X)/2}function Er(X){return((X=Math.exp(2*X))-1)/(X+1)}function si(X){return(X=Math.sin(X/2))*X}var Ei=Math.SQRT2,Si=2,xi=4;e.interpolateZoom=function(X,se){var Le=X[0],We=X[1],Ye=X[2],it=se[0],Nt=se[1],mt=se[2],er=it-Le,_r=Nt-We,wr=er*er+_r*_r,ni,Wr;if(wr0&&(qo=qo.transition().duration(Nt)),qo.call(Wi.event)}function vl(){Ti&&Ti.domain(ai.range().map(function(qo){return(qo-X.x)/X.k}).map(ai.invert)),en&&en.domain(Bi.range().map(function(qo){return(qo-X.y)/X.k}).map(Bi.invert))}function wl(qo){mt++||qo({type:"zoomstart"})}function au(qo){vl(),qo({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Al(qo){--mt||(qo({type:"zoomend"}),Le=null)}function nu(){var qo=this,Rl=Ji.of(qo,arguments),pu=0,xu=e.select(a(qo)).on(_r,xf).on(wr,hf),of=bi(e.mouse(qo)),ff=fr(qo);ys.call(qo),wl(Rl);function xf(){pu=1,Ko(e.mouse(qo),of),au(Rl)}function hf(){xu.on(_r,null).on(wr,null),ff(pu),Al(Rl)}}function Bu(){var qo=this,Rl=Ji.of(qo,arguments),pu={},xu=0,of,ff=".zoom-"+e.event.changedTouches[0].identifier,xf="touchmove"+ff,hf="touchend"+ff,dc=[],Gt=e.select(qo),jr=fr(qo);Mn(),wl(Rl),Gt.on(er,null).on(Wr,Mn);function _i(){var ha=e.touches(qo);return of=X.k,ha.forEach(function(Io){Io.identifier in pu&&(pu[Io.identifier]=bi(Io))}),ha}function Mn(){var ha=e.event.target;e.select(ha).on(xf,Ta).on(hf,fa),dc.push(ha);for(var Io=e.event.changedTouches,Vs=0,Hs=Io.length;Vs1){var Ps=is[0],qs=is[1],Do=Ps[0]-qs[0],kn=Ps[1]-qs[1];xu=Do*Do+kn*kn}}function Ta(){var ha=e.touches(qo),Io,Vs,Hs,is;ys.call(qo);for(var su=0,Ps=ha.length;su1?1:se,Le=Le<0?0:Le>1?1:Le,Ye=Le<=.5?Le*(1+se):Le+se-Le*se,We=2*Le-Ye;function it(mt){return mt>360?mt-=360:mt<0&&(mt+=360),mt<60?We+(Ye-We)*mt/60:mt<180?Ye:mt<240?We+(Ye-We)*(240-mt)/60:We}function Nt(mt){return Math.round(it(mt)*255)}return new ki(Nt(X+120),Nt(X),Nt(X-120))}e.hcl=Bt;function Bt(X,se,Le){return this instanceof Bt?(this.h=+X,this.c=+se,void(this.l=+Le)):arguments.length<2?X instanceof Bt?new Bt(X.h,X.c,X.l):X instanceof zr?Yr(X.l,X.a,X.b):Yr((X=Or((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new Bt(X,se,Le)}var sr=Bt.prototype=new Di;sr.brighter=function(X){return new Bt(this.h,this.c,Math.min(100,this.l+Tr*(arguments.length?X:1)))},sr.darker=function(X){return new Bt(this.h,this.c,Math.max(0,this.l-Tr*(arguments.length?X:1)))},sr.rgb=function(){return br(this.h,this.c,this.l).rgb()};function br(X,se,Le){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new zr(Le,Math.cos(X*=de)*se,Math.sin(X)*se)}e.lab=zr;function zr(X,se,Le){return this instanceof zr?(this.l=+X,this.a=+se,void(this.b=+Le)):arguments.length<2?X instanceof zr?new zr(X.l,X.a,X.b):X instanceof Bt?br(X.h,X.c,X.l):Or((X=ki(X)).r,X.g,X.b):new zr(X,se,Le)}var Tr=18,Rr=.95047,Br=1,oi=1.08883,vi=zr.prototype=new Di;vi.brighter=function(X){return new zr(Math.min(100,this.l+Tr*(arguments.length?X:1)),this.a,this.b)},vi.darker=function(X){return new zr(Math.max(0,this.l-Tr*(arguments.length?X:1)),this.a,this.b)},vi.rgb=function(){return Pi(this.l,this.a,this.b)};function Pi(X,se,Le){var We=(X+16)/116,Ye=We+se/500,it=We-Le/200;return Ye=Ni(Ye)*Rr,We=Ni(We)*Br,it=Ni(it)*oi,new ki(ti(3.2404542*Ye-1.5371385*We-.4985314*it),ti(-.969266*Ye+1.8760108*We+.041556*it),ti(.0556434*Ye-.2040259*We+1.0572252*it))}function Yr(X,se,Le){return X>0?new Bt(Math.atan2(Le,se)*ht,Math.sqrt(se*se+Le*Le),X):new Bt(NaN,NaN,X)}function Ni(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function Ur(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ti(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=ki;function ki(X,se,Le){return this instanceof ki?(this.r=~~X,this.g=~~se,void(this.b=~~Le)):arguments.length<2?X instanceof ki?new ki(X.r,X.g,X.b):sn(""+X,ki,Dt):new ki(X,se,Le)}function ji(X){return new ki(X>>16,X>>8&255,X&255)}function Vi(X){return ji(X)+""}var zi=ki.prototype=new Di;zi.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Le=this.g,We=this.b,Ye=30;return!se&&!Le&&!We?new ki(Ye,Ye,Ye):(se&&se>4,We=We>>4|We,Ye=er&240,Ye=Ye>>4|Ye,it=er&15,it=it<<4|it):X.length===7&&(We=(er&16711680)>>16,Ye=(er&65280)>>8,it=er&255)),se(We,Ye,it))}function fi(X,se,Le){var We=Math.min(X/=255,se/=255,Le/=255),Ye=Math.max(X,se,Le),it=Ye-We,Nt,mt,er=(Ye+We)/2;return it?(mt=er<.5?it/(Ye+We):it/(2-Ye-We),X==Ye?Nt=(se-Le)/it+(se0&&er<1?0:Nt),new Lt(Nt,mt,er)}function Or(X,se,Le){X=st(X),se=st(se),Le=st(Le);var We=Ur((.4124564*X+.3575761*se+.1804375*Le)/Rr),Ye=Ur((.2126729*X+.7151522*se+.072175*Le)/Br),it=Ur((.0193339*X+.119192*se+.9503041*Le)/oi);return zr(116*Ye-16,500*(We-Ye),200*(Ye-it))}function st(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function Wt(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var tr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});tr.forEach(function(X,se){tr.set(X,ji(se))});function or(X){return typeof X=="function"?X:function(){return X}}e.functor=or,e.xhr=Nr(H);function Nr(X){return function(se,Le,We){return arguments.length===2&&typeof Le=="function"&&(We=Le,Le=null),hi(se,Le,X,We)}}function hi(X,se,Le,We){var Ye={},it=e.dispatch("beforesend","progress","load","error"),Nt={},mt=new XMLHttpRequest,er=null;self.XDomainRequest&&!("withCredentials"in mt)&&/^(http(s)?:)?\/\//.test(X)&&(mt=new XDomainRequest),"onload"in mt?mt.onload=mt.onerror=_r:mt.onreadystatechange=function(){mt.readyState>3&&_r()};function _r(){var wr=mt.status,ni;if(!wr&&Qr(mt)||wr>=200&&wr<300||wr===304){try{ni=Le.call(Ye,mt)}catch(Wr){it.error.call(Ye,Wr);return}it.load.call(Ye,ni)}else it.error.call(Ye,mt)}return mt.onprogress=function(wr){var ni=e.event;e.event=wr;try{it.progress.call(Ye,mt)}finally{e.event=ni}},Ye.header=function(wr,ni){return wr=(wr+"").toLowerCase(),arguments.length<2?Nt[wr]:(ni==null?delete Nt[wr]:Nt[wr]=ni+"",Ye)},Ye.mimeType=function(wr){return arguments.length?(se=wr==null?null:wr+"",Ye):se},Ye.responseType=function(wr){return arguments.length?(er=wr,Ye):er},Ye.response=function(wr){return Le=wr,Ye},["get","post"].forEach(function(wr){Ye[wr]=function(){return Ye.send.apply(Ye,[wr].concat(r(arguments)))}}),Ye.send=function(wr,ni,Wr){if(arguments.length===2&&typeof ni=="function"&&(Wr=ni,ni=null),mt.open(wr,X,!0),se!=null&&!("accept"in Nt)&&(Nt.accept=se+",*/*"),mt.setRequestHeader)for(var Ci in Nt)mt.setRequestHeader(Ci,Nt[Ci]);return se!=null&&mt.overrideMimeType&&mt.overrideMimeType(se),er!=null&&(mt.responseType=er),Wr!=null&&Ye.on("error",Wr).on("load",function(Ji){Wr(null,Ji)}),it.beforesend.call(Ye,mt),mt.send(ni==null?null:ni),Ye},Ye.abort=function(){return mt.abort(),Ye},e.rebind(Ye,it,"on"),We==null?Ye:Ye.get(Gi(We))}function Gi(X){return X.length===1?function(se,Le){X(se==null?Le:null)}:X}function Qr(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Le=new RegExp('["'+X+` +"use strict";var Plotly=(()=>{var wtt=Object.create;var EM=Object.defineProperty,Ttt=Object.defineProperties,Att=Object.getOwnPropertyDescriptor,Stt=Object.getOwnPropertyDescriptors,Mtt=Object.getOwnPropertyNames,pee=Object.getOwnPropertySymbols,Ett=Object.getPrototypeOf,yee=Object.prototype.hasOwnProperty,ktt=Object.prototype.propertyIsEnumerable;var vee=(e,t,r)=>t in e?EM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mee=(e,t)=>{for(var r in t||(t={}))yee.call(t,r)&&vee(e,r,t[r]);if(pee)for(var r of pee(t))ktt.call(t,r)&&vee(e,r,t[r]);return e},gee=(e,t)=>Ttt(e,Stt(t));var Bf=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_ee=(e,t)=>{for(var r in t)EM(e,r,{get:t[r],enumerable:!0})},xee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Mtt(t))!yee.call(e,i)&&i!==r&&EM(e,i,{get:()=>t[i],enumerable:!(n=Att(t,i))||n.enumerable});return e};var Ctt=(e,t,r)=>(r=e!=null?wtt(Ett(e)):{},xee(t||!e||!e.__esModule?EM(r,"default",{value:e,enumerable:!0}):r,e)),O1=e=>xee(EM({},"__esModule",{value:!0}),e);var rL=Ae(bee=>{"use strict";bee.version="3.0.2"});var Tee=Ae((wee,iL)=>{(function(t,r,n){r[t]=r[t]||n(),typeof iL!="undefined"&&iL.exports&&(iL.exports=r[t])})("Promise",typeof window!="undefined"?window:wee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(k){return setImmediate(k)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(k,E,A,L){return Object.defineProperty(k,E,{value:A,writable:!0,configurable:L!==!1})}}catch(v){t=function(E,A,L){return E[A]=L,E}}n=function(){var k,E,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),E?E.next=A:k=A,E=A,A=void 0},drain:function(){var C=k;for(k=E=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(v,k){n.add(v,k),r||(r=a(n.drain))}function s(v){var k,E=typeof v;return v!=null&&(E=="object"||E=="function")&&(k=v.then),typeof k=="function"?k:!1}function u(){for(var v=0;v0&&o(u,E))}catch(A){c.call(new d(E),A)}}}function c(v){var k=this;k.triggered||(k.triggered=!0,k.def&&(k=k.def),k.msg=v,k.state=2,k.chain.length>0&&o(u,k))}function h(v,k,E,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(X){return t.call(X)},n=self.document;function i(X){return X&&(X.ownerDocument||X.document||X).documentElement}function a(X){return X&&(X.ownerDocument&&X.ownerDocument.defaultView||X.document&&X||X.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(X){r=function(se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=se[Le];return We}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(X){var o=this.Element.prototype,s=o.setAttribute,u=o.setAttributeNS,l=this.CSSStyleDeclaration.prototype,f=l.setProperty;o.setAttribute=function(se,Le){s.call(this,se,Le+"")},o.setAttributeNS=function(se,Le,We){u.call(this,se,Le,We+"")},l.setProperty=function(se,Le,We){f.call(this,se,Le+"",We)}}e.ascending=c;function c(X,se){return Xse?1:X>=se?0:NaN}e.descending=function(X,se){return seX?1:se>=X?0:NaN},e.min=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++Leit&&(Ye=it)}return Ye},e.max=function(X,se){var Le=-1,We=X.length,Ye,it;if(arguments.length===1){for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}else{for(;++Le=it){Ye=it;break}for(;++LeYe&&(Ye=it)}return Ye},e.extent=function(X,se){var Le=-1,We=X.length,Ye,it,Nt;if(arguments.length===1){for(;++Le=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt=it){Ye=Nt=it;break}for(;++Leit&&(Ye=it),Nt1)return Nt/(er-1)},e.deviation=function(){var X=e.variance.apply(this,arguments);return X&&Math.sqrt(X)};function p(X){return{left:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)<0?We=it+1:Ye=it}return We},right:function(se,Le,We,Ye){for(arguments.length<3&&(We=0),arguments.length<4&&(Ye=se.length);We>>1;X(se[it],Le)>0?Ye=it:We=it+1}return We}}}var x=p(c);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(X){return p(X.length===1?function(se,Le){return c(X(se),Le)}:X)},e.shuffle=function(X,se,Le){(We=arguments.length)<3&&(Le=X.length,We<2&&(se=0));for(var We=Le-se,Ye,it;We;)it=Math.random()*We--|0,Ye=X[We+se],X[We+se]=X[it+se],X[it+se]=Ye;return X},e.permute=function(X,se){for(var Le=se.length,We=new Array(Le);Le--;)We[Le]=X[se[Le]];return We},e.pairs=function(X){for(var se=0,Le=X.length-1,We,Ye=X[0],it=new Array(Le<0?0:Le);se=0;)for(Nt=X[se],Le=Nt.length;--Le>=0;)it[--Ye]=Nt[Le];return it};var v=Math.abs;e.range=function(X,se,Le){if(arguments.length<3&&(Le=1,arguments.length<2&&(se=X,X=0)),(se-X)/Le===1/0)throw new Error("infinite range");var We=[],Ye=k(v(Le)),it=-1,Nt;if(X*=Ye,se*=Ye,Le*=Ye,Le<0)for(;(Nt=X+Le*++it)>se;)We.push(Nt/Ye);else for(;(Nt=X+Le*++it)=se.length)return Ye?Ye.call(X,er):We?er.sort(We):er;for(var wr=-1,ni=er.length,Wr=se[_r++],Ci,Ji,ai,Ti=new A,Bi;++wr=se.length)return mt;var _r=[],wr=Le[er++];return mt.forEach(function(ni,Wr){_r.push({key:ni,values:Nt(Wr,er)})}),wr?_r.sort(function(ni,Wr){return wr(ni.key,Wr.key)}):_r}return X.map=function(mt,er){return it(er,mt,0)},X.entries=function(mt){return Nt(it(e.map,mt,0),0)},X.key=function(mt){return se.push(mt),X},X.sortKeys=function(mt){return Le[se.length-1]=mt,X},X.sortValues=function(mt){return We=mt,X},X.rollup=function(mt){return Ye=mt,X},X},e.set=function(X){var se=new U;if(X)for(var Le=0,We=X.length;Le=0&&(We=X.slice(Le+1),X=X.slice(0,Le)),X)return arguments.length<2?this[X].on(We):this[X].on(We,se);if(arguments.length===2){if(se==null)for(X in this)this.hasOwnProperty(X)&&this[X].on(We,null);return this}};function ne(X){var se=[],Le=new A;function We(){for(var Ye=se,it=-1,Nt=Ye.length,mt;++it=0&&(Le=X.slice(0,se))!=="xmlns"&&(X=X.slice(se+1)),Ze.hasOwnProperty(Le)?{space:Ze[Le],local:X}:X}},Re.attr=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node();return X=e.ns.qualify(X),X.local?Le.getAttributeNS(X.space,X.local):Le.getAttribute(X)}for(se in X)this.each(et(se,X[se]));return this}return this.each(et(X,se))};function et(X,se){X=e.ns.qualify(X);function Le(){this.removeAttribute(X)}function We(){this.removeAttributeNS(X.space,X.local)}function Ye(){this.setAttribute(X,se)}function it(){this.setAttributeNS(X.space,X.local,se)}function Nt(){var er=se.apply(this,arguments);er==null?this.removeAttribute(X):this.setAttribute(X,er)}function mt(){var er=se.apply(this,arguments);er==null?this.removeAttributeNS(X.space,X.local):this.setAttributeNS(X.space,X.local,er)}return se==null?X.local?We:Le:typeof se=="function"?X.local?mt:Nt:X.local?it:Ye}function gt(X){return X.trim().replace(/\s+/g," ")}Re.classed=function(X,se){if(arguments.length<2){if(typeof X=="string"){var Le=this.node(),We=(X=Qe(X)).length,Ye=-1;if(se=Le.classList){for(;++Ye=0;)(it=Le[We])&&(Ye&&Ye!==it.nextSibling&&Ye.parentNode.insertBefore(it,Ye),Ye=it);return this},Re.sort=function(X){X=nt.apply(this,arguments);for(var se=-1,Le=this.length;++se=se&&(se=Ye+1);!(er=Nt[se])&&++se0&&(X=X.slice(0,Ye));var Nt=Je.get(X);Nt&&(X=Nt,it=Vt);function mt(){var wr=this[We];wr&&(this.removeEventListener(X,wr,wr.$),delete this[We])}function er(){var wr=it(se,r(arguments));mt.call(this),this.addEventListener(X,this[We]=wr,wr.$=Le),wr._=se}function _r(){var wr=new RegExp("^__on([^.]+)"+e.requote(X)+"$"),ni;for(var Wr in this)if(ni=Wr.match(wr)){var Ci=this[Wr];this.removeEventListener(ni[1],Ci,Ci.$),delete this[Wr]}}return Ye?se?er:mt:se?W:_r}var Je=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Je.forEach(function(X){"on"+X in n&&Je.remove(X)});function Mt(X,se){return function(Le){var We=e.event;e.event=Le,se[0]=this.__data__;try{X.apply(this,se)}finally{e.event=We}}}function Vt(X,se){var Le=Mt(X,se);return function(We){var Ye=this,it=We.relatedTarget;(!it||it!==Ye&&!(it.compareDocumentPosition(Ye)&8))&&Le.call(Ye,We)}}var Kt,ir=0;function fr(X){var se=".dragsuppress-"+ ++ir,Le="click"+se,We=e.select(a(X)).on("touchmove"+se,be).on("dragstart"+se,be).on("selectstart"+se,be);if(Kt==null&&(Kt="onselectstart"in X?!1:G(X.style,"userSelect")),Kt){var Ye=i(X).style,it=Ye[Kt];Ye[Kt]="none"}return function(Nt){if(We.on(se,null),Kt&&(Ye[Kt]=it),Nt){var mt=function(){We.on(Le,null)};We.on(Le,function(){be(),mt()},!0),setTimeout(mt,0)}}}e.mouse=function(X){return De(X,ze())};var Ot=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function De(X,se){se.changedTouches&&(se=se.changedTouches[0]);var Le=X.ownerSVGElement||X;if(Le.createSVGPoint){var We=Le.createSVGPoint();if(Ot<0){var Ye=a(X);if(Ye.scrollX||Ye.scrollY){Le=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var it=Le[0][0].getScreenCTM();Ot=!(it.f||it.e),Le.remove()}}return Ot?(We.x=se.pageX,We.y=se.pageY):(We.x=se.clientX,We.y=se.clientY),We=We.matrixTransform(X.getScreenCTM().inverse()),[We.x,We.y]}var Nt=X.getBoundingClientRect();return[se.clientX-Nt.left-X.clientLeft,se.clientY-Nt.top-X.clientTop]}e.touch=function(X,se,Le){if(arguments.length<3&&(Le=se,se=ze().changedTouches),se){for(var We=0,Ye=se.length,it;We0?1:X<0?-1:0}function St(X,se,Le){return(se[0]-X[0])*(Le[1]-X[1])-(se[1]-X[1])*(Le[0]-X[0])}function Zt(X){return X>1?0:X<-1?Ie:Math.acos(X)}function qr(X){return X>1?ue:X<-1?-ue:Math.asin(X)}function Lr(X){return((X=Math.exp(X))-1/X)/2}function vr(X){return((X=Math.exp(X))+1/X)/2}function Er(X){return((X=Math.exp(2*X))-1)/(X+1)}function si(X){return(X=Math.sin(X/2))*X}var Ei=Math.SQRT2,Si=2,xi=4;e.interpolateZoom=function(X,se){var Le=X[0],We=X[1],Ye=X[2],it=se[0],Nt=se[1],mt=se[2],er=it-Le,_r=Nt-We,wr=er*er+_r*_r,ni,Wr;if(wr0&&(qo=qo.transition().duration(Nt)),qo.call(Wi.event)}function vl(){Ti&&Ti.domain(ai.range().map(function(qo){return(qo-X.x)/X.k}).map(ai.invert)),en&&en.domain(Bi.range().map(function(qo){return(qo-X.y)/X.k}).map(Bi.invert))}function wl(qo){mt++||qo({type:"zoomstart"})}function au(qo){vl(),qo({type:"zoom",scale:X.k,translate:[X.x,X.y]})}function Al(qo){--mt||(qo({type:"zoomend"}),Le=null)}function nu(){var qo=this,Rl=Ji.of(qo,arguments),pu=0,xu=e.select(a(qo)).on(_r,xf).on(wr,hf),of=bi(e.mouse(qo)),ff=fr(qo);ys.call(qo),wl(Rl);function xf(){pu=1,Ko(e.mouse(qo),of),au(Rl)}function hf(){xu.on(_r,null).on(wr,null),ff(pu),Al(Rl)}}function Bu(){var qo=this,Rl=Ji.of(qo,arguments),pu={},xu=0,of,ff=".zoom-"+e.event.changedTouches[0].identifier,xf="touchmove"+ff,hf="touchend"+ff,dc=[],Gt=e.select(qo),jr=fr(qo);Mn(),wl(Rl),Gt.on(er,null).on(Wr,Mn);function _i(){var ha=e.touches(qo);return of=X.k,ha.forEach(function(Io){Io.identifier in pu&&(pu[Io.identifier]=bi(Io))}),ha}function Mn(){var ha=e.event.target;e.select(ha).on(xf,Ta).on(hf,fa),dc.push(ha);for(var Io=e.event.changedTouches,Vs=0,Hs=Io.length;Vs1){var Ps=is[0],qs=is[1],Do=Ps[0]-qs[0],kn=Ps[1]-qs[1];xu=Do*Do+kn*kn}}function Ta(){var ha=e.touches(qo),Io,Vs,Hs,is;ys.call(qo);for(var su=0,Ps=ha.length;su1?1:se,Le=Le<0?0:Le>1?1:Le,Ye=Le<=.5?Le*(1+se):Le+se-Le*se,We=2*Le-Ye;function it(mt){return mt>360?mt-=360:mt<0&&(mt+=360),mt<60?We+(Ye-We)*mt/60:mt<180?Ye:mt<240?We+(Ye-We)*(240-mt)/60:We}function Nt(mt){return Math.round(it(mt)*255)}return new ki(Nt(X+120),Nt(X),Nt(X-120))}e.hcl=Bt;function Bt(X,se,Le){return this instanceof Bt?(this.h=+X,this.c=+se,void(this.l=+Le)):arguments.length<2?X instanceof Bt?new Bt(X.h,X.c,X.l):X instanceof zr?Yr(X.l,X.a,X.b):Yr((X=Or((X=e.rgb(X)).r,X.g,X.b)).l,X.a,X.b):new Bt(X,se,Le)}var sr=Bt.prototype=new Di;sr.brighter=function(X){return new Bt(this.h,this.c,Math.min(100,this.l+Tr*(arguments.length?X:1)))},sr.darker=function(X){return new Bt(this.h,this.c,Math.max(0,this.l-Tr*(arguments.length?X:1)))},sr.rgb=function(){return br(this.h,this.c,this.l).rgb()};function br(X,se,Le){return isNaN(X)&&(X=0),isNaN(se)&&(se=0),new zr(Le,Math.cos(X*=de)*se,Math.sin(X)*se)}e.lab=zr;function zr(X,se,Le){return this instanceof zr?(this.l=+X,this.a=+se,void(this.b=+Le)):arguments.length<2?X instanceof zr?new zr(X.l,X.a,X.b):X instanceof Bt?br(X.h,X.c,X.l):Or((X=ki(X)).r,X.g,X.b):new zr(X,se,Le)}var Tr=18,Rr=.95047,Br=1,oi=1.08883,vi=zr.prototype=new Di;vi.brighter=function(X){return new zr(Math.min(100,this.l+Tr*(arguments.length?X:1)),this.a,this.b)},vi.darker=function(X){return new zr(Math.max(0,this.l-Tr*(arguments.length?X:1)),this.a,this.b)},vi.rgb=function(){return Pi(this.l,this.a,this.b)};function Pi(X,se,Le){var We=(X+16)/116,Ye=We+se/500,it=We-Le/200;return Ye=Ni(Ye)*Rr,We=Ni(We)*Br,it=Ni(it)*oi,new ki(ti(3.2404542*Ye-1.5371385*We-.4985314*it),ti(-.969266*Ye+1.8760108*We+.041556*it),ti(.0556434*Ye-.2040259*We+1.0572252*it))}function Yr(X,se,Le){return X>0?new Bt(Math.atan2(Le,se)*ht,Math.sqrt(se*se+Le*Le),X):new Bt(NaN,NaN,X)}function Ni(X){return X>.206893034?X*X*X:(X-4/29)/7.787037}function Ur(X){return X>.008856?Math.pow(X,1/3):7.787037*X+4/29}function ti(X){return Math.round(255*(X<=.00304?12.92*X:1.055*Math.pow(X,1/2.4)-.055))}e.rgb=ki;function ki(X,se,Le){return this instanceof ki?(this.r=~~X,this.g=~~se,void(this.b=~~Le)):arguments.length<2?X instanceof ki?new ki(X.r,X.g,X.b):sn(""+X,ki,Dt):new ki(X,se,Le)}function ji(X){return new ki(X>>16,X>>8&255,X&255)}function Vi(X){return ji(X)+""}var zi=ki.prototype=new Di;zi.brighter=function(X){X=Math.pow(.7,arguments.length?X:1);var se=this.r,Le=this.g,We=this.b,Ye=30;return!se&&!Le&&!We?new ki(Ye,Ye,Ye):(se&&se>4,We=We>>4|We,Ye=er&240,Ye=Ye>>4|Ye,it=er&15,it=it<<4|it):X.length===7&&(We=(er&16711680)>>16,Ye=(er&65280)>>8,it=er&255)),se(We,Ye,it))}function fi(X,se,Le){var We=Math.min(X/=255,se/=255,Le/=255),Ye=Math.max(X,se,Le),it=Ye-We,Nt,mt,er=(Ye+We)/2;return it?(mt=er<.5?it/(Ye+We):it/(2-Ye-We),X==Ye?Nt=(se-Le)/it+(se0&&er<1?0:Nt),new Lt(Nt,mt,er)}function Or(X,se,Le){X=st(X),se=st(se),Le=st(Le);var We=Ur((.4124564*X+.3575761*se+.1804375*Le)/Rr),Ye=Ur((.2126729*X+.7151522*se+.072175*Le)/Br),it=Ur((.0193339*X+.119192*se+.9503041*Le)/oi);return zr(116*Ye-16,500*(We-Ye),200*(Ye-it))}function st(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function Wt(X){var se=parseFloat(X);return X.charAt(X.length-1)==="%"?Math.round(se*2.55):se}var tr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});tr.forEach(function(X,se){tr.set(X,ji(se))});function or(X){return typeof X=="function"?X:function(){return X}}e.functor=or,e.xhr=Nr(H);function Nr(X){return function(se,Le,We){return arguments.length===2&&typeof Le=="function"&&(We=Le,Le=null),hi(se,Le,X,We)}}function hi(X,se,Le,We){var Ye={},it=e.dispatch("beforesend","progress","load","error"),Nt={},mt=new XMLHttpRequest,er=null;self.XDomainRequest&&!("withCredentials"in mt)&&/^(http(s)?:)?\/\//.test(X)&&(mt=new XDomainRequest),"onload"in mt?mt.onload=mt.onerror=_r:mt.onreadystatechange=function(){mt.readyState>3&&_r()};function _r(){var wr=mt.status,ni;if(!wr&&Qr(mt)||wr>=200&&wr<300||wr===304){try{ni=Le.call(Ye,mt)}catch(Wr){it.error.call(Ye,Wr);return}it.load.call(Ye,ni)}else it.error.call(Ye,mt)}return mt.onprogress=function(wr){var ni=e.event;e.event=wr;try{it.progress.call(Ye,mt)}finally{e.event=ni}},Ye.header=function(wr,ni){return wr=(wr+"").toLowerCase(),arguments.length<2?Nt[wr]:(ni==null?delete Nt[wr]:Nt[wr]=ni+"",Ye)},Ye.mimeType=function(wr){return arguments.length?(se=wr==null?null:wr+"",Ye):se},Ye.responseType=function(wr){return arguments.length?(er=wr,Ye):er},Ye.response=function(wr){return Le=wr,Ye},["get","post"].forEach(function(wr){Ye[wr]=function(){return Ye.send.apply(Ye,[wr].concat(r(arguments)))}}),Ye.send=function(wr,ni,Wr){if(arguments.length===2&&typeof ni=="function"&&(Wr=ni,ni=null),mt.open(wr,X,!0),se!=null&&!("accept"in Nt)&&(Nt.accept=se+",*/*"),mt.setRequestHeader)for(var Ci in Nt)mt.setRequestHeader(Ci,Nt[Ci]);return se!=null&&mt.overrideMimeType&&mt.overrideMimeType(se),er!=null&&(mt.responseType=er),Wr!=null&&Ye.on("error",Wr).on("load",function(Ji){Wr(null,Ji)}),it.beforesend.call(Ye,mt),mt.send(ni==null?null:ni),Ye},Ye.abort=function(){return mt.abort(),Ye},e.rebind(Ye,it,"on"),We==null?Ye:Ye.get(Gi(We))}function Gi(X){return X.length===1?function(se,Le){X(se==null?Le:null)}:X}function Qr(X){var se=X.responseType;return se&&se!=="text"?X.response:X.responseText}e.dsv=function(X,se){var Le=new RegExp('["'+X+` ]`),We=X.charCodeAt(0);function Ye(_r,wr,ni){arguments.length<3&&(ni=wr,wr=null);var Wr=hi(_r,se,wr==null?it:Nt(wr),ni);return Wr.row=function(Ci){return arguments.length?Wr.response((wr=Ci)==null?it:Nt(Ci)):wr},Wr}function it(_r){return Ye.parse(_r.responseText)}function Nt(_r){return function(wr){return Ye.parse(wr.responseText,_r)}}Ye.parse=function(_r,wr){var ni;return Ye.parseRows(_r,function(Wr,Ci){if(ni)return ni(Wr,Ci-1);var Ji=function(ai){for(var Ti={},Bi=Wr.length,en=0;en=Ji)return Wr;if(en)return en=!1,ni;var ao=ai;if(_r.charCodeAt(ao)===34){for(var yo=ao;yo++24?(isFinite(se)&&(clearTimeout(xn),xn=setTimeout(Fn,se)),fn=0):(fn=1,_a(Fn))}e.timer.flush=function(){ia(),za()};function ia(){for(var X=Date.now(),se=Ui;se;)X>=se.t&&se.c(X-se.t)&&(se.c=null),se=se.n;return X}function za(){for(var X,se=Ui,Le=1/0;se;)se.c?(se.t=0;--mt)ai.push(Ye[_r[ni[mt]][2]]);for(mt=+Ci;mt1&&St(X[Le[We-2]],X[Le[We-1]],X[Ye])<=0;)--We;Le[We++]=Ye}return Le.slice(0,We)}function Dn(X,se){return X[0]-se[0]||X[1]-se[1]}e.geom.polygon=function(X){return te(X,un),X};var un=e.geom.polygon.prototype=[];un.area=function(){for(var X=-1,se=this.length,Le,We=this[se-1],Ye=0;++XFe)mt=mt.L;else if(Nt=se-ln(mt,Le),Nt>Fe){if(!mt.R){We=mt;break}mt=mt.R}else{it>-Fe?(We=mt.P,Ye=mt):Nt>-Fe?(We=mt,Ye=mt.N):We=Ye=mt;break}var er=to(X);if(Ha.insert(We,er),!(!We&&!Ye)){if(We===Ye){Yn(We),Ye=to(We.site),Ha.insert(er,Ye),er.edge=Ye.edge=qa(We.site,er.site),Fi(We),Fi(Ye);return}if(!Ye){er.edge=qa(We.site,er.site);return}Yn(We),Yn(Ye);var _r=We.site,wr=_r.x,ni=_r.y,Wr=X.x-wr,Ci=X.y-ni,Ji=Ye.site,ai=Ji.x-wr,Ti=Ji.y-ni,Bi=2*(Wr*Ti-Ci*ai),en=Wr*Wr+Ci*Ci,Wi=ai*ai+Ti*Ti,bi={x:(Ti*en-Ci*Wi)/Bi+wr,y:(Wr*Wi-ai*en)/Bi+ni};Vo(Ye.edge,_r,Ji,bi),er.edge=qa(_r,X,null,bi),Ye.edge=qa(X,Ji,null,bi),Fi(We),Fi(Ye)}}function pa(X,se){var Le=X.site,We=Le.x,Ye=Le.y,it=Ye-se;if(!it)return We;var Nt=X.P;if(!Nt)return-1/0;Le=Nt.site;var mt=Le.x,er=Le.y,_r=er-se;if(!_r)return mt;var wr=mt-We,ni=1/it-1/_r,Wr=wr/_r;return ni?(-Wr+Math.sqrt(Wr*Wr-2*ni*(wr*wr/(-2*_r)-er+_r/2+Ye-it/2)))/ni+We:(We+mt)/2}function ln(X,se){var Le=X.N;if(Le)return pa(Le,se);var We=X.site;return We.y===se?We.x:1/0}function ka(X){this.site=X,this.edges=[]}ka.prototype.prepare=function(){for(var X=this.edges,se=X.length,Le;se--;)Le=X[se].edge,(!Le.b||!Le.a)&&X.splice(se,1);return X.sort(bo),X.length};function va(X){for(var se=X[0][0],Le=X[1][0],We=X[0][1],Ye=X[1][1],it,Nt,mt,er,_r=Ea,wr=_r.length,ni,Wr,Ci,Ji,ai,Ti;wr--;)if(ni=_r[wr],!(!ni||!ni.prepare()))for(Ci=ni.edges,Ji=Ci.length,Wr=0;WrFe||v(er-Nt)>Fe)&&(Ci.splice(Wr,0,new Pa(jo(ni.site,Ti,v(mt-se)Fe?{x:se,y:v(it-se)Fe?{x:v(Nt-Ye)Fe?{x:Le,y:v(it-Le)Fe?{x:v(Nt-We)=-Pe)){var Wr=er*er+_r*_r,Ci=wr*wr+Ti*Ti,Ji=(Ti*Wr-_r*Ci)/ni,ai=(er*Ci-wr*Wr)/ni,Ti=ai+mt,Bi=ts.pop()||new Co;Bi.arc=X,Bi.site=Ye,Bi.x=Ji+Nt,Bi.y=Ti+Math.sqrt(Ji*Ji+ai*ai),Bi.cy=Ti,X.circle=Bi;for(var en=null,Wi=Xn._;Wi;)if(Bi.y0)){if(ai/=Ci,Ci<0){if(ai0){if(ai>Wr)return;ai>ni&&(ni=ai)}if(ai=Le-mt,!(!Ci&&ai<0)){if(ai/=Ci,Ci<0){if(ai>Wr)return;ai>ni&&(ni=ai)}else if(Ci>0){if(ai0)){if(ai/=Ji,Ji<0){if(ai0){if(ai>Wr)return;ai>ni&&(ni=ai)}if(ai=We-er,!(!Ji&&ai<0)){if(ai/=Ji,Ji<0){if(ai>Wr)return;ai>ni&&(ni=ai)}else if(Ji>0){if(ai0&&(Ye.a={x:mt+ni*Ci,y:er+ni*Ji}),Wr<1&&(Ye.b={x:mt+Wr*Ci,y:er+Wr*Ji}),Ye}}}}}}function Qi(X){for(var se=Bo,Le=xa(X[0][0],X[0][1],X[1][0],X[1][1]),We=se.length,Ye;We--;)Ye=se[We],(!Nn(Ye,X)||!Le(Ye)||v(Ye.a.x-Ye.b.x)=it)return;if(wr>Wr){if(!We)We={x:Ji,y:Nt};else if(We.y>=mt)return;Le={x:Ji,y:mt}}else{if(!We)We={x:Ji,y:mt};else if(We.y1)if(wr>Wr){if(!We)We={x:(Nt-Bi)/Ti,y:Nt};else if(We.y>=mt)return;Le={x:(mt-Bi)/Ti,y:mt}}else{if(!We)We={x:(mt-Bi)/Ti,y:mt};else if(We.y=it)return;Le={x:it,y:Ti*it+Bi}}else{if(!We)We={x:it,y:Ti*it+Bi};else if(We.x=wr&&Bi.x<=Wr&&Bi.y>=ni&&Bi.y<=Ci?[[wr,Ci],[Wr,Ci],[Wr,ni],[wr,ni]]:[];en.point=er[ai]}),_r}function mt(er){return er.map(function(_r,wr){return{x:Math.round(We(_r,wr)/Fe)*Fe,y:Math.round(Ye(_r,wr)/Fe)*Fe,i:wr}})}return Nt.links=function(er){return bs(mt(er)).edges.filter(function(_r){return _r.l&&_r.r}).map(function(_r){return{source:er[_r.l.i],target:er[_r.r.i]}})},Nt.triangles=function(er){var _r=[];return bs(mt(er)).cells.forEach(function(wr,ni){for(var Wr=wr.site,Ci=wr.edges.sort(bo),Ji=-1,ai=Ci.length,Ti,Bi,en=Ci[ai-1].edge,Wi=en.l===Wr?en.r:en.l;++JiWi&&(Wi=wr.x),wr.y>bi&&(bi=wr.y),Ci.push(wr.x),Ji.push(wr.y);else for(ai=0;aiWi&&(Wi=ao),yo>bi&&(bi=yo),Ci.push(ao),Ji.push(yo)}var Ko=Wi-Bi,Ms=bi-en;Ko>Ms?bi=en+Ko:Wi=Bi+Ms;function vl(Al,nu,Bu,qu,Ju,qo,Rl,pu){if(!(isNaN(Bu)||isNaN(qu)))if(Al.leaf){var xu=Al.x,of=Al.y;if(xu!=null)if(v(xu-Bu)+v(of-qu)<.01)wl(Al,nu,Bu,qu,Ju,qo,Rl,pu);else{var ff=Al.point;Al.x=Al.y=Al.point=null,wl(Al,ff,xu,of,Ju,qo,Rl,pu),wl(Al,nu,Bu,qu,Ju,qo,Rl,pu)}else Al.x=Bu,Al.y=qu,Al.point=nu}else wl(Al,nu,Bu,qu,Ju,qo,Rl,pu)}function wl(Al,nu,Bu,qu,Ju,qo,Rl,pu){var xu=(Ju+Rl)*.5,of=(qo+pu)*.5,ff=Bu>=xu,xf=qu>=of,hf=xf<<1|ff;Al.leaf=!1,Al=Al.nodes[hf]||(Al.nodes[hf]=an()),ff?Ju=xu:Rl=xu,xf?qo=of:pu=of,vl(Al,nu,Bu,qu,Ju,qo,Rl,pu)}var au=an();if(au.add=function(Al){vl(au,Al,+ni(Al,++ai),+Wr(Al,ai),Bi,en,Wi,bi)},au.visit=function(Al){mn(Al,au,Bi,en,Wi,bi)},au.find=function(Al){return Ga(au,Al[0],Al[1],Bi,en,Wi,bi)},ai=-1,se==null){for(;++aiit||Wr>Nt||Ci=ao,Ms=Le>=yo,vl=Ms<<1|Ko,wl=vl+4;vlLe&&(it=se.slice(Le,it),mt[Nt]?mt[Nt]+=it:mt[++Nt]=it),(We=We[0])===(Ye=Ye[0])?mt[Nt]?mt[Nt]+=Ye:mt[++Nt]=Ye:(mt[++Nt]=null,er.push({i:Nt,x:Xi(We,Ye)})),Le=yn.lastIndex;return Le=0&&!(We=e.interpolators[Le](X,se)););return We}e.interpolators=[function(X,se){var Le=typeof se;return(Le==="string"?tr.has(se.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(se)?ca:qn:se instanceof Di?ca:Array.isArray(se)?ba:Le==="object"&&isNaN(se)?bn:Xi)(X,se)}],e.interpolateArray=ba;function ba(X,se){var Le=[],We=[],Ye=X.length,it=se.length,Nt=Math.min(X.length,se.length),mt;for(mt=0;mt=0?X.slice(0,se):X,We=se>=0?X.slice(se+1):"in";return Le=Aa.get(Le)||Da,We=Ln.get(We)||H,wo(We(Le.apply(null,t.call(arguments,1))))};function wo(X){return function(se){return se<=0?0:se>=1?1:X(se)}}function wa(X){return function(se){return 1-X(1-se)}}function $i(X){return function(se){return .5*(se<.5?X(2*se):2-X(2-2*se))}}function ea(X){return X*X}function Sa(X){return X*X*X}function Za(X){if(X<=0)return 0;if(X>=1)return 1;var se=X*X,Le=se*X;return 4*(X<.5?Le:3*(X-se)+Le-.75)}function xo(X){return function(se){return Math.pow(se,X)}}function Wa(X){return 1-Math.cos(X*ue)}function hn(X){return Math.pow(2,10*(X-1))}function Un(X){return 1-Math.sqrt(1-X*X)}function Ss(X,se){var Le;return arguments.length<2&&(se=.45),arguments.length?Le=se/lt*Math.asin(1/X):(X=1,Le=se/4),function(We){return 1+X*Math.pow(2,-10*We)*Math.sin((We-Le)*lt/se)}}function Kn(X){return X||(X=1.70158),function(se){return se*se*((X+1)*se-X)}}function ns(X){return X<1/2.75?7.5625*X*X:X<2/2.75?7.5625*(X-=1.5/2.75)*X+.75:X<2.5/2.75?7.5625*(X-=2.25/2.75)*X+.9375:7.5625*(X-=2.625/2.75)*X+.984375}e.interpolateHcl=Jo;function Jo(X,se){X=e.hcl(X),se=e.hcl(se);var Le=X.h,We=X.c,Ye=X.l,it=se.h-Le,Nt=se.c-We,mt=se.l-Ye;return isNaN(Nt)&&(Nt=0,We=isNaN(We)?se.c:We),isNaN(it)?(it=0,Le=isNaN(Le)?se.h:Le):it>180?it-=360:it<-180&&(it+=360),function(er){return br(Le+it*er,We+Nt*er,Ye+mt*er)+""}}e.interpolateHsl=vo;function vo(X,se){X=e.hsl(X),se=e.hsl(se);var Le=X.h,We=X.s,Ye=X.l,it=se.h-Le,Nt=se.s-We,mt=se.l-Ye;return isNaN(Nt)&&(Nt=0,We=isNaN(We)?se.s:We),isNaN(it)?(it=0,Le=isNaN(Le)?se.h:Le):it>180?it-=360:it<-180&&(it+=360),function(er){return Dt(Le+it*er,We+Nt*er,Ye+mt*er)+""}}e.interpolateLab=ma;function ma(X,se){X=e.lab(X),se=e.lab(se);var Le=X.l,We=X.a,Ye=X.b,it=se.l-Le,Nt=se.a-We,mt=se.b-Ye;return function(er){return Pi(Le+it*er,We+Nt*er,Ye+mt*er)+""}}e.interpolateRound=ja;function ja(X,se){return se-=X,function(Le){return Math.round(X+se*Le)}}e.transform=function(X){var se=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(Le){if(Le!=null){se.setAttribute("transform",Le);var We=se.transform.baseVal.consolidate()}return new To(We?We.matrix:ho)})(X)};function To(X){var se=[X.a,X.b],Le=[X.c,X.d],We=la(se),Ye=Ao(se,Le),it=la(Ki(Le,se,-Ye))||0;se[0]*Le[1]180?se+=360:se-X>180&&(X+=360),We.push({i:Le.push(Ka(Le)+"rotate(",null,")")-2,x:Xi(X,se)})):se&&Le.push(Ka(Le)+"rotate("+se+")")}function En(X,se,Le,We){X!==se?We.push({i:Le.push(Ka(Le)+"skewX(",null,")")-2,x:Xi(X,se)}):se&&Le.push(Ka(Le)+"skewX("+se+")")}function Mo(X,se,Le,We){if(X[0]!==se[0]||X[1]!==se[1]){var Ye=Le.push(Ka(Le)+"scale(",null,",",null,")");We.push({i:Ye-4,x:Xi(X[0],se[0])},{i:Ye-2,x:Xi(X[1],se[1])})}else(se[0]!==1||se[1]!==1)&&Le.push(Ka(Le)+"scale("+se+")")}function Ds(X,se){var Le=[],We=[];return X=e.transform(X),se=e.transform(se),Ca(X.translate,se.translate,Le,We),ta(X.rotate,se.rotate,Le,We),En(X.skew,se.skew,Le,We),Mo(X.scale,se.scale,Le,We),X=se=null,function(Ye){for(var it=-1,Nt=We.length,mt;++it0?it=bi:(Le.c=null,Le.t=NaN,Le=null,se.end({type:"end",alpha:it=0})):bi>0&&(se.start({type:"start",alpha:it=bi}),Le=Wn(X.tick)),X):it},X.start=function(){var bi,ao=Ci.length,yo=Ji.length,Ko=We[0],Ms=We[1],vl,wl;for(bi=0;bi=0;)it.push(wr=_r[er]),wr.parent=mt,wr.depth=mt.depth+1;Le&&(mt.value=0),mt.children=_r}else Le&&(mt.value=+Le.call(We,mt,mt.depth)||0),delete mt.children;return uo(Ye,function(ni){var Wr,Ci;X&&(Wr=ni.children)&&Wr.sort(X),Le&&(Ci=ni.parent)&&(Ci.value+=ni.value)}),Nt}return We.sort=function(Ye){return arguments.length?(X=Ye,We):X},We.children=function(Ye){return arguments.length?(se=Ye,We):se},We.value=function(Ye){return arguments.length?(Le=Ye,We):Le},We.revalue=function(Ye){return Le&&(Sn(Ye,function(it){it.children&&(it.value=0)}),uo(Ye,function(it){var Nt;it.children||(it.value=+Le.call(We,it,it.depth)||0),(Nt=it.parent)&&(Nt.value+=it.value)})),Ye},We};function $n(X,se){return e.rebind(X,se,"sort","children","value"),X.nodes=X,X.links=os,X}function Sn(X,se){for(var Le=[X];(X=Le.pop())!=null;)if(se(X),(Ye=X.children)&&(We=Ye.length))for(var We,Ye;--We>=0;)Le.push(Ye[We])}function uo(X,se){for(var Le=[X],We=[];(X=Le.pop())!=null;)if(We.push(X),(Nt=X.children)&&(it=Nt.length))for(var Ye=-1,it,Nt;++YeYe&&(Ye=mt),We.push(mt)}for(Nt=0;NtWe&&(Le=se,We=Ye);return Le}function ro(X){return X.reduce(Ma,0)}function Ma(X,se){return X+se[1]}e.layout.histogram=function(){var X=!0,se=Number,Le=Oo,We=io;function Ye(it,Wr){for(var mt=[],er=it.map(se,this),_r=Le.call(this,er,Wr),wr=We.call(this,_r,er,Wr),ni,Wr=-1,Ci=er.length,Ji=wr.length-1,ai=X?1:1/Ci,Ti;++Wr0)for(Wr=-1;++Wr=_r[0]&&Ti<=_r[1]&&(ni=mt[e.bisect(wr,Ti,1,Ji)-1],ni.y+=ai,ni.push(it[Wr]));return mt}return Ye.value=function(it){return arguments.length?(se=it,Ye):se},Ye.range=function(it){return arguments.length?(Le=or(it),Ye):Le},Ye.bins=function(it){return arguments.length?(We=typeof it=="number"?function(Nt){return aa(Nt,it)}:or(it),Ye):We},Ye.frequency=function(it){return arguments.length?(X=!!it,Ye):X},Ye};function io(X,se){return aa(X,Math.ceil(Math.log(se.length)/Math.LN2+1))}function aa(X,se){for(var Le=-1,We=+X[0],Ye=(X[1]-We)/se,it=[];++Le<=se;)it[Le]=Ye*Le+We;return it}function Oo(X){return[e.min(X),e.max(X)]}e.layout.pack=function(){var X=e.layout.hierarchy().sort(No),se=0,Le=[1,1],We;function Ye(it,Nt){var mt=X.call(this,it,Nt),er=mt[0],_r=Le[0],wr=Le[1],ni=We==null?Math.sqrt:typeof We=="function"?We:function(){return We};if(er.x=er.y=0,uo(er,function(Ci){Ci.r=+ni(Ci.value)}),uo(er,no),se){var Wr=se*(We?1:Math.max(2*er.r/_r,2*er.r/wr))/2;uo(er,function(Ci){Ci.r+=Wr}),uo(er,no),uo(er,function(Ci){Ci.r-=Wr})}return Xs(er,_r/2,wr/2,We?1:1/Math.max(2*er.r/_r,2*er.r/wr)),mt}return Ye.size=function(it){return arguments.length?(Le=it,Ye):Le},Ye.radius=function(it){return arguments.length?(We=it==null||typeof it=="function"?it:+it,Ye):We},Ye.padding=function(it){return arguments.length?(se=+it,Ye):se},$n(Ye,X)};function No(X,se){return X.value-se.value}function Zs(X,se){var Le=X._pack_next;X._pack_next=se,se._pack_prev=X,se._pack_next=Le,Le._pack_prev=se}function Fs(X,se){X._pack_next=se,se._pack_prev=X}function ws(X,se){var Le=se.x-X.x,We=se.y-X.y,Ye=X.r+se.r;return .999*Ye*Ye>Le*Le+We*We}function no(X){if(!(se=X.children)||!(Wr=se.length))return;var se,Le=1/0,We=-1/0,Ye=1/0,it=-1/0,Nt,mt,er,_r,wr,ni,Wr;function Ci(bi){Le=Math.min(bi.x-bi.r,Le),We=Math.max(bi.x+bi.r,We),Ye=Math.min(bi.y-bi.r,Ye),it=Math.max(bi.y+bi.r,it)}if(se.forEach(Ls),Nt=se[0],Nt.x=-Nt.r,Nt.y=0,Ci(Nt),Wr>1&&(mt=se[1],mt.x=mt.r,mt.y=0,Ci(mt),Wr>2))for(er=se[2],oa(Nt,mt,er),Ci(er),Zs(Nt,er),Nt._pack_prev=er,Zs(er,mt),mt=Nt._pack_next,_r=3;_rTi.x&&(Ti=ao),ao.depth>Bi.depth&&(Bi=ao)});var en=se(ai,Ti)/2-ai.x,Wi=Le[0]/(Ti.x+se(Ti,ai)/2+en),bi=Le[1]/(Bi.depth||1);Sn(Ci,function(ao){ao.x=(ao.x+en)*Wi,ao.y=ao.depth*bi})}return Wr}function it(wr){for(var ni={A:null,children:[wr]},Wr=[ni],Ci;(Ci=Wr.pop())!=null;)for(var Ji=Ci.children,ai,Ti=0,Bi=Ji.length;Ti0&&(ls(bt(ai,wr,Wr),wr,ao),Bi+=ao,en+=ao),Wi+=ai.m,Bi+=Ci.m,bi+=Ti.m,en+=Ji.m;ai&&!ss(Ji)&&(Ji.t=ai,Ji.m+=Wi-en),Ci&&!po(Ti)&&(Ti.t=Ci,Ti.m+=Bi-bi,Wr=wr)}return Wr}function _r(wr){wr.x*=Le[0],wr.y=wr.depth*Le[1]}return Ye.separation=function(wr){return arguments.length?(se=wr,Ye):se},Ye.size=function(wr){return arguments.length?(We=(Le=wr)==null?_r:null,Ye):We?null:Le},Ye.nodeSize=function(wr){return arguments.length?(We=(Le=wr)==null?null:_r,Ye):We?Le:null},$n(Ye,X)};function Yo(X,se){return X.parent==se.parent?1:2}function po(X){var se=X.children;return se.length?se[0]:X.t}function ss(X){var se=X.children,Le;return(Le=se.length)?se[Le-1]:X.t}function ls(X,se,Le){var We=Le/(se.i-X.i);se.c-=We,se.s+=Le,X.c+=We,se.z+=Le,se.m+=Le}function gs(X){for(var se=0,Le=0,We=X.children,Ye=We.length,it;--Ye>=0;)it=We[Ye],it.z+=se,it.m+=se,se+=it.s+(Le+=it.c)}function bt(X,se,Le){return X.a.parent===se.parent?X.a:Le}e.layout.cluster=function(){var X=e.layout.hierarchy().sort(null).value(null),se=Yo,Le=[1,1],We=!1;function Ye(it,Nt){var mt=X.call(this,it,Nt),er=mt[0],_r,wr=0;uo(er,function(ai){var Ti=ai.children;Ti&&Ti.length?(ai.x=hr(Ti),ai.y=Ft(Ti)):(ai.x=_r?wr+=se(ai,_r):0,ai.y=0,_r=ai)});var ni=nr(er),Wr=Sr(er),Ci=ni.x-se(ni,Wr)/2,Ji=Wr.x+se(Wr,ni)/2;return uo(er,We?function(ai){ai.x=(ai.x-er.x)*Le[0],ai.y=(er.y-ai.y)*Le[1]}:function(ai){ai.x=(ai.x-Ci)/(Ji-Ci)*Le[0],ai.y=(1-(er.y?ai.y/er.y:1))*Le[1]}),mt}return Ye.separation=function(it){return arguments.length?(se=it,Ye):se},Ye.size=function(it){return arguments.length?(We=(Le=it)==null,Ye):We?null:Le},Ye.nodeSize=function(it){return arguments.length?(We=(Le=it)!=null,Ye):We?Le:null},$n(Ye,X)};function Ft(X){return 1+e.max(X,function(se){return se.y})}function hr(X){return X.reduce(function(se,Le){return se+Le.x},0)/X.length}function nr(X){var se=X.children;return se&&se.length?nr(se[0]):X}function Sr(X){var se=X.children,Le;return se&&(Le=se.length)?Sr(se[Le-1]):X}e.layout.treemap=function(){var X=e.layout.hierarchy(),se=Math.round,Le=[1,1],We=null,Ye=li,it=!1,Nt,mt="squarify",er=.5*(1+Math.sqrt(5));function _r(ai,Ti){for(var Bi=-1,en=ai.length,Wi,bi;++Bi0;)en.push(bi=Wi[Ms-1]),en.area+=bi.area,mt!=="squarify"||(yo=Wr(en,Ko))<=ao?(Wi.pop(),ao=yo):(en.area-=en.pop().area,Ci(en,Ko,Bi,!1),Ko=Math.min(Bi.dx,Bi.dy),en.length=en.area=0,ao=1/0);en.length&&(Ci(en,Ko,Bi,!0),en.length=en.area=0),Ti.forEach(wr)}}function ni(ai){var Ti=ai.children;if(Ti&&Ti.length){var Bi=Ye(ai),en=Ti.slice(),Wi,bi=[];for(_r(en,Bi.dx*Bi.dy/ai.value),bi.area=0;Wi=en.pop();)bi.push(Wi),bi.area+=Wi.area,Wi.z!=null&&(Ci(bi,Wi.z?Bi.dx:Bi.dy,Bi,!en.length),bi.length=bi.area=0);Ti.forEach(ni)}}function Wr(ai,Ti){for(var Bi=ai.area,en,Wi=0,bi=1/0,ao=-1,yo=ai.length;++aoWi&&(Wi=en));return Bi*=Bi,Ti*=Ti,Bi?Math.max(Ti*Wi*er/Bi,Bi/(Ti*bi*er)):1/0}function Ci(ai,Ti,Bi,en){var Wi=-1,bi=ai.length,ao=Bi.x,yo=Bi.y,Ko=Ti?se(ai.area/Ti):0,Ms;if(Ti==Bi.dx){for((en||Ko>Bi.dy)&&(Ko=Bi.dy);++WiBi.dx)&&(Ko=Bi.dx);++Wi1);return X+se*We*Math.sqrt(-2*Math.log(it)/it)}},logNormal:function(){var X=e.random.normal.apply(e,arguments);return function(){return Math.exp(X())}},bates:function(X){var se=e.random.irwinHall(X);return function(){return se()/X}},irwinHall:function(X){return function(){for(var se=0,Le=0;Le2?gi:dn,_r=We?vs:Ro;return Ye=er(X,se,_r,Le),it=er(se,X,_r,Ya),mt}function mt(er){return Ye(er)}return mt.invert=function(er){return it(er)},mt.domain=function(er){return arguments.length?(X=er.map(Number),Nt()):X},mt.range=function(er){return arguments.length?(se=er,Nt()):se},mt.rangeRound=function(er){return mt.range(er).interpolate(ja)},mt.clamp=function(er){return arguments.length?(We=er,Nt()):We},mt.interpolate=function(er){return arguments.length?(Le=er,Nt()):Le},mt.ticks=function(er){return Hn(X,er)},mt.tickFormat=function(er,_r){return d3_scale_linearTickFormat(X,er,_r)},mt.nice=function(er){return Vn(X,er),Nt()},mt.copy=function(){return gn(X,se,Le,We)},Nt()}function In(X,se){return e.rebind(X,se,"range","rangeRound","interpolate","clamp")}function Vn(X,se){return wi(X,ui(Rn(X,se)[2])),wi(X,ui(Rn(X,se)[2])),X}function Rn(X,se){se==null&&(se=10);var Le=mi(X),We=Le[1]-Le[0],Ye=Math.pow(10,Math.floor(Math.log(We/se)/Math.LN10)),it=se/We*Ye;return it<=.15?Ye*=10:it<=.35?Ye*=5:it<=.75&&(Ye*=2),Le[0]=Math.ceil(Le[0]/Ye)*Ye,Le[1]=Math.floor(Le[1]/Ye)*Ye+Ye*.5,Le[2]=Ye,Le}function Hn(X,se){return e.range.apply(e,Rn(X,se))}var Gn={s:1,g:1,p:1,r:1,e:1};function pn(X){return-Math.floor(Math.log(X)/Math.LN10+.01)}function Lo(X,se){var Le=pn(se[2]);return X in Gn?Math.abs(Le-pn(Math.max(v(se[0]),v(se[1]))))+ +(X!=="e"):Le-(X==="%")*2}e.scale.log=function(){return us(e.scale.linear().domain([0,1]),10,!0,[1,10])};function us(X,se,Le,We){function Ye(mt){return(Le?Math.log(mt<0?0:mt):-Math.log(mt>0?0:-mt))/Math.log(se)}function it(mt){return Le?Math.pow(se,mt):-Math.pow(se,-mt)}function Nt(mt){return X(Ye(mt))}return Nt.invert=function(mt){return it(X.invert(mt))},Nt.domain=function(mt){return arguments.length?(Le=mt[0]>=0,X.domain((We=mt.map(Number)).map(Ye)),Nt):We},Nt.base=function(mt){return arguments.length?(se=+mt,X.domain(We.map(Ye)),Nt):se},Nt.nice=function(){var mt=wi(We.map(Ye),Le?Math:Bs);return X.domain(mt),We=mt.map(it),Nt},Nt.ticks=function(){var mt=mi(We),er=[],_r=mt[0],wr=mt[1],ni=Math.floor(Ye(_r)),Wr=Math.ceil(Ye(wr)),Ci=se%1?2:se;if(isFinite(Wr-ni)){if(Le){for(;ni0;Ji--)er.push(it(ni)*Ji);for(ni=0;er[ni]<_r;ni++);for(Wr=er.length;er[Wr-1]>wr;Wr--);er=er.slice(ni,Wr)}return er},Nt.copy=function(){return us(X.copy(),se,Le,We)},In(Nt,X)}var Bs={floor:function(X){return-Math.ceil(-X)},ceil:function(X){return-Math.floor(-X)}};e.scale.pow=function(){return Js(e.scale.linear(),1,[0,1])};function Js(X,se,Le){var We=ol(se),Ye=ol(1/se);function it(Nt){return X(We(Nt))}return it.invert=function(Nt){return Ye(X.invert(Nt))},it.domain=function(Nt){return arguments.length?(X.domain((Le=Nt.map(Number)).map(We)),it):Le},it.ticks=function(Nt){return Hn(Le,Nt)},it.tickFormat=function(Nt,mt){return d3_scale_linearTickFormat(Le,Nt,mt)},it.nice=function(Nt){return it.domain(Vn(Le,Nt))},it.exponent=function(Nt){return arguments.length?(We=ol(se=Nt),Ye=ol(1/se),X.domain(Le.map(We)),it):se},it.copy=function(){return Js(X.copy(),se,Le)},In(it,X)}function ol(X){return function(se){return se<0?-Math.pow(-se,X):Math.pow(se,X)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return Cl([],{t:"range",a:[[]]})};function Cl(X,se){var Le,We,Ye;function it(mt){return We[((Le.get(mt)||(se.t==="range"?Le.set(mt,X.push(mt)):NaN))-1)%We.length]}function Nt(mt,er){return e.range(X.length).map(function(_r){return mt+er*_r})}return it.domain=function(mt){if(!arguments.length)return X;X=[],Le=new A;for(var er=-1,_r=mt.length,wr;++er<_r;)Le.has(wr=mt[er])||Le.set(wr,X.push(wr));return it[se.t].apply(it,se.a)},it.range=function(mt){return arguments.length?(We=mt,Ye=0,se={t:"range",a:arguments},it):We},it.rangePoints=function(mt,er){arguments.length<2&&(er=0);var _r=mt[0],wr=mt[1],ni=X.length<2?(_r=(_r+wr)/2,0):(wr-_r)/(X.length-1+er);return We=Nt(_r+ni*er/2,ni),Ye=0,se={t:"rangePoints",a:arguments},it},it.rangeRoundPoints=function(mt,er){arguments.length<2&&(er=0);var _r=mt[0],wr=mt[1],ni=X.length<2?(_r=wr=Math.round((_r+wr)/2),0):(wr-_r)/(X.length-1+er)|0;return We=Nt(_r+Math.round(ni*er/2+(wr-_r-(X.length-1+er)*ni)/2),ni),Ye=0,se={t:"rangeRoundPoints",a:arguments},it},it.rangeBands=function(mt,er,_r){arguments.length<2&&(er=0),arguments.length<3&&(_r=er);var wr=mt[1]0?Le[it-1]:X[0],itWr?0:1;if(wr<_r&&(ai=wr,wr=_r,_r=ai),Ci>=ye)return er(wr,Ji)+(_r?er(_r,1-Ji):"")+"Z";var ai,Ti,Bi,en,Wi=0,bi=0,ao,yo,Ko,Ms,vl,wl,au,Al,nu=[];if((en=(+Nt.apply(this,arguments)||0)/2)&&(Bi=We===Gs?Math.sqrt(_r*_r+wr*wr):+We.apply(this,arguments),Ji||(bi*=-1),wr&&(bi=qr(Bi/wr*Math.sin(en))),_r&&(Wi=qr(Bi/_r*Math.sin(en)))),wr){ao=wr*Math.cos(ni+bi),yo=wr*Math.sin(ni+bi),Ko=wr*Math.cos(Wr-bi),Ms=wr*Math.sin(Wr-bi);var Bu=Math.abs(Wr-ni-2*bi)<=Ie?0:1;if(bi&&xl(ao,yo,Ko,Ms)===Ji^Bu){var qu=(ni+Wr)/2;ao=wr*Math.cos(qu),yo=wr*Math.sin(qu),Ko=Ms=null}}else ao=yo=0;if(_r){vl=_r*Math.cos(Wr-Wi),wl=_r*Math.sin(Wr-Wi),au=_r*Math.cos(ni+Wi),Al=_r*Math.sin(ni+Wi);var Ju=Math.abs(ni-Wr+2*Wi)<=Ie?0:1;if(Wi&&xl(vl,wl,au,Al)===1-Ji^Ju){var qo=(ni+Wr)/2;vl=_r*Math.cos(qo),wl=_r*Math.sin(qo),au=Al=null}}else vl=wl=0;if(Ci>Fe&&(ai=Math.min(Math.abs(wr-_r)/2,+Le.apply(this,arguments)))>.001){Ti=_r0?0:1}function Uo(X,se,Le,We,Ye){var it=X[0]-se[0],Nt=X[1]-se[1],mt=(Ye?We:-We)/Math.sqrt(it*it+Nt*Nt),er=mt*Nt,_r=-mt*it,wr=X[0]+er,ni=X[1]+_r,Wr=se[0]+er,Ci=se[1]+_r,Ji=(wr+Wr)/2,ai=(ni+Ci)/2,Ti=Wr-wr,Bi=Ci-ni,en=Ti*Ti+Bi*Bi,Wi=Le-We,bi=wr*Ci-Wr*ni,ao=(Bi<0?-1:1)*Math.sqrt(Math.max(0,Wi*Wi*en-bi*bi)),yo=(bi*Bi-Ti*ao)/en,Ko=(-bi*Ti-Bi*ao)/en,Ms=(bi*Bi+Ti*ao)/en,vl=(-bi*Ti+Bi*ao)/en,wl=yo-Ji,au=Ko-ai,Al=Ms-Ji,nu=vl-ai;return wl*wl+au*au>Al*Al+nu*nu&&(yo=Ms,Ko=vl),[[yo-er,Ko-_r],[yo*Le/Wi,Ko*Le/Wi]]}function _s(){return!0}function Bl(X){var se=Hr,Le=na,We=_s,Ye=Dl,it=Ye.key,Nt=.7;function mt(er){var _r=[],wr=[],ni=-1,Wr=er.length,Ci,Ji=or(se),ai=or(Le);function Ti(){_r.push("M",Ye(X(wr),Nt))}for(;++ni1?X.join("L"):X+"Z"}function oe(X){return X.join("L")+"Z"}function w(X){for(var se=0,Le=X.length,We=X[0],Ye=[We[0],",",We[1]];++se1&&Ye.push("H",We[0]),Ye.join("")}function B(X){for(var se=0,Le=X.length,We=X[0],Ye=[We[0],",",We[1]];++se1){mt=se[1],it=X[er],er++,We+="C"+(Ye[0]+Nt[0])+","+(Ye[1]+Nt[1])+","+(it[0]-mt[0])+","+(it[1]-mt[1])+","+it[0]+","+it[1];for(var _r=2;_r9&&(it=Le*3/Math.sqrt(it),Nt[mt]=it*We,Nt[mt+1]=it*Ye));for(mt=-1;++mt<=er;)it=(X[Math.min(er,mt+1)][0]-X[Math.max(0,mt-1)][0])/(6*(1+Nt[mt]*Nt[mt])),se.push([it||0,Nt[mt]*it||0]);return se}function qt(X){return X.length<3?Dl(X):X[0]+$e(X,ft(X))}e.svg.line.radial=function(){var X=Bl(Xt);return X.radius=X.x,delete X.x,X.angle=X.y,delete X.y,X};function Xt(X){for(var se,Le=-1,We=X.length,Ye,it;++LeIe)+",1 "+ni}function _r(wr,ni,Wr,Ci){return"Q 0,0 "+Ci}return it.radius=function(wr){return arguments.length?(Le=or(wr),it):Le},it.source=function(wr){return arguments.length?(X=or(wr),it):X},it.target=function(wr){return arguments.length?(se=or(wr),it):se},it.startAngle=function(wr){return arguments.length?(We=or(wr),it):We},it.endAngle=function(wr){return arguments.length?(Ye=or(wr),it):Ye},it};function $r(X){return X.radius}e.svg.diagonal=function(){var X=dr,se=Mr,Le=ii;function We(Ye,it){var Nt=X.call(this,Ye,it),mt=se.call(this,Ye,it),er=(Nt.y+mt.y)/2,_r=[Nt,{x:Nt.x,y:er},{x:mt.x,y:er},mt];return _r=_r.map(Le),"M"+_r[0]+"C"+_r[1]+" "+_r[2]+" "+_r[3]}return We.source=function(Ye){return arguments.length?(X=or(Ye),We):X},We.target=function(Ye){return arguments.length?(se=or(Ye),We):se},We.projection=function(Ye){return arguments.length?(Le=Ye,We):Le},We};function ii(X){return[X.x,X.y]}e.svg.diagonal.radial=function(){var X=e.svg.diagonal(),se=ii,Le=X.projection;return X.projection=function(We){return arguments.length?Le(pi(se=We)):se},X};function pi(X){return function(){var se=X.apply(this,arguments),Le=se[0],We=se[1]-ue;return[Le*Math.cos(We),Le*Math.sin(We)]}}e.svg.symbol=function(){var X=wn,se=Yi;function Le(We,Ye){return(ua.get(X.call(this,We,Ye))||Tn)(se.call(this,We,Ye))}return Le.type=function(We){return arguments.length?(X=or(We),Le):X},Le.size=function(We){return arguments.length?(se=or(We),Le):se},Le};function Yi(){return 64}function wn(){return"circle"}function Tn(X){var se=Math.sqrt(X/Ie);return"M0,"+se+"A"+se+","+se+" 0 1,1 0,"+-se+"A"+se+","+se+" 0 1,1 0,"+se+"Z"}var ua=e.map({circle:Tn,cross:function(X){var se=Math.sqrt(X/5)/2;return"M"+-3*se+","+-se+"H"+-se+"V"+-3*se+"H"+se+"V"+-se+"H"+3*se+"V"+se+"H"+se+"V"+3*se+"H"+-se+"V"+se+"H"+-3*se+"Z"},diamond:function(X){var se=Math.sqrt(X/(2*el)),Le=se*el;return"M0,"+-se+"L"+Le+",0 0,"+se+" "+-Le+",0Z"},square:function(X){var se=Math.sqrt(X)/2;return"M"+-se+","+-se+"L"+se+","+-se+" "+se+","+se+" "+-se+","+se+"Z"},"triangle-down":function(X){var se=Math.sqrt(X/oo),Le=se*oo/2;return"M0,"+Le+"L"+se+","+-Le+" "+-se+","+-Le+"Z"},"triangle-up":function(X){var se=Math.sqrt(X/oo),Le=se*oo/2;return"M0,"+-Le+"L"+se+","+Le+" "+-se+","+Le+"Z"}});e.svg.symbolTypes=ua.keys();var oo=Math.sqrt(3),el=Math.tan(30*de);Re.transition=function(X){for(var se=Ll||++Hl,Le=Kl(X),We=[],Ye,it,Nt=Ql||{time:Date.now(),ease:Za,delay:0,duration:250},mt=-1,er=this.length;++mt0;)ni[--en].call(X,Bi);if(Ti>=1)return Nt.event&&Nt.event.end.call(X,X.__data__,se),--it.count?delete it[We]:delete X[Le],1}Nt||(mt=Ye.time,er=Wn(Wr,0,mt),Nt=it[We]={tween:new A,time:mt,timer:er,delay:Ye.delay,duration:Ye.duration,ease:Ye.ease,index:se},Ye=null,++it.count)}e.svg.axis=function(){var X=e.scale.linear(),se=tf,Le=6,We=6,Ye=3,it=[10],Nt=null,mt;function er(_r){_r.each(function(){var wr=e.select(this),ni=this.__chart__||X,Wr=this.__chart__=X.copy(),Ci=Nt==null?Wr.ticks?Wr.ticks.apply(Wr,it):Wr.domain():Nt,Ji=mt==null?Wr.tickFormat?Wr.tickFormat.apply(Wr,it):H:mt,ai=wr.selectAll(".tick").data(Ci,Wr),Ti=ai.enter().insert("g",".domain").attr("class","tick").style("opacity",Fe),Bi=e.transition(ai.exit()).style("opacity",Fe).remove(),en=e.transition(ai.order()).style("opacity",1),Wi=Math.max(Le,0)+Ye,bi,ao=Oi(Wr),yo=wr.selectAll(".domain").data([0]),Ko=(yo.enter().append("path").attr("class","domain"),e.transition(yo));Ti.append("line"),Ti.append("text");var Ms=Ti.select("line"),vl=en.select("line"),wl=ai.select("text").text(Ji),au=Ti.select("text"),Al=en.select("text"),nu=se==="top"||se==="left"?-1:1,Bu,qu,Ju,qo;if(se==="bottom"||se==="top"?(bi=Gu,Bu="x",Ju="y",qu="x2",qo="y2",wl.attr("dy",nu<0?"0em":".71em").style("text-anchor","middle"),Ko.attr("d","M"+ao[0]+","+nu*We+"V0H"+ao[1]+"V"+nu*We)):(bi=Wu,Bu="y",Ju="x",qu="y2",qo="x2",wl.attr("dy",".32em").style("text-anchor",nu<0?"end":"start"),Ko.attr("d","M"+nu*We+","+ao[0]+"H0V"+ao[1]+"H"+nu*We)),Ms.attr(qo,nu*Le),au.attr(Ju,nu*Wi),vl.attr(qu,0).attr(qo,nu*Le),Al.attr(Bu,0).attr(Ju,nu*Wi),Wr.rangeBand){var Rl=Wr,pu=Rl.rangeBand()/2;ni=Wr=function(xu){return Rl(xu)+pu}}else ni.rangeBand?ni=Wr:Bi.call(bi,Wr,ni);Ti.call(bi,ni,Wr),en.call(bi,Wr,Wr)})}return er.scale=function(_r){return arguments.length?(X=_r,er):X},er.orient=function(_r){return arguments.length?(se=_r in Ku?_r+"":tf,er):se},er.ticks=function(){return arguments.length?(it=r(arguments),er):it},er.tickValues=function(_r){return arguments.length?(Nt=_r,er):Nt},er.tickFormat=function(_r){return arguments.length?(mt=_r,er):mt},er.tickSize=function(_r){var wr=arguments.length;return wr?(Le=+_r,We=+arguments[wr-1],er):Le},er.innerTickSize=function(_r){return arguments.length?(Le=+_r,er):Le},er.outerTickSize=function(_r){return arguments.length?(We=+_r,er):We},er.tickPadding=function(_r){return arguments.length?(Ye=+_r,er):Ye},er.tickSubdivide=function(){return arguments.length&&er},er};var tf="bottom",Ku={top:1,right:1,bottom:1,left:1};function Gu(X,se,Le){X.attr("transform",function(We){var Ye=se(We);return"translate("+(isFinite(Ye)?Ye:Le(We))+",0)"})}function Wu(X,se,Le){X.attr("transform",function(We){var Ye=se(We);return"translate(0,"+(isFinite(Ye)?Ye:Le(We))+")"})}e.svg.brush=function(){var X=Ce(wr,"brushstart","brush","brushend"),se=null,Le=null,We=[0,0],Ye=[0,0],it,Nt,mt=!0,er=!0,_r=gf[0];function wr(ai){ai.each(function(){var Ti=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Ji).on("touchstart.brush",Ji),Bi=Ti.selectAll(".background").data([0]);Bi.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ti.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var en=Ti.selectAll(".resize").data(_r,H);en.exit().remove(),en.enter().append("g").attr("class",function(yo){return"resize "+yo}).style("cursor",function(yo){return sf[yo]}).append("rect").attr("x",function(yo){return/[ew]$/.test(yo)?-3:null}).attr("y",function(yo){return/^[ns]/.test(yo)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),en.style("display",wr.empty()?"none":null);var Wi=e.transition(Ti),bi=e.transition(Bi),ao;se&&(ao=Oi(se),bi.attr("x",ao[0]).attr("width",ao[1]-ao[0]),Wr(Wi)),Le&&(ao=Oi(Le),bi.attr("y",ao[0]).attr("height",ao[1]-ao[0]),Ci(Wi)),ni(Wi)})}wr.event=function(ai){ai.each(function(){var Ti=X.of(this,arguments),Bi={x:We,y:Ye,i:it,j:Nt},en=this.__chart__||Bi;this.__chart__=Bi,Ll?e.select(this).transition().each("start.brush",function(){it=en.i,Nt=en.j,We=en.x,Ye=en.y,Ti({type:"brushstart"})}).tween("brush:brush",function(){var Wi=ba(We,Bi.x),bi=ba(Ye,Bi.y);return it=Nt=null,function(ao){We=Bi.x=Wi(ao),Ye=Bi.y=bi(ao),Ti({type:"brush",mode:"resize"})}}).each("end.brush",function(){it=Bi.i,Nt=Bi.j,Ti({type:"brush",mode:"resize"}),Ti({type:"brushend"})}):(Ti({type:"brushstart"}),Ti({type:"brush",mode:"resize"}),Ti({type:"brushend"}))})};function ni(ai){ai.selectAll(".resize").attr("transform",function(Ti){return"translate("+We[+/e$/.test(Ti)]+","+Ye[+/^s/.test(Ti)]+")"})}function Wr(ai){ai.select(".extent").attr("x",We[0]),ai.selectAll(".extent,.n>rect,.s>rect").attr("width",We[1]-We[0])}function Ci(ai){ai.select(".extent").attr("y",Ye[0]),ai.selectAll(".extent,.e>rect,.w>rect").attr("height",Ye[1]-Ye[0])}function Ji(){var ai=this,Ti=e.select(e.event.target),Bi=X.of(ai,arguments),en=e.select(ai),Wi=Ti.datum(),bi=!/^(n|s)$/.test(Wi)&&se,ao=!/^(e|w)$/.test(Wi)&&Le,yo=Ti.classed("extent"),Ko=fr(ai),Ms,vl=e.mouse(ai),wl,au=e.select(a(ai)).on("keydown.brush",Bu).on("keyup.brush",qu);if(e.event.changedTouches?au.on("touchmove.brush",Ju).on("touchend.brush",Rl):au.on("mousemove.brush",Ju).on("mouseup.brush",Rl),en.interrupt().selectAll("*").interrupt(),yo)vl[0]=We[0]-vl[0],vl[1]=Ye[0]-vl[1];else if(Wi){var Al=+/w$/.test(Wi),nu=+/^n/.test(Wi);wl=[We[1-Al]-vl[0],Ye[1-nu]-vl[1]],vl[0]=We[Al],vl[1]=Ye[nu]}else e.event.altKey&&(Ms=vl.slice());en.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Ti.style("cursor")),Bi({type:"brushstart"}),Ju();function Bu(){e.event.keyCode==32&&(yo||(Ms=null,vl[0]-=We[1],vl[1]-=Ye[1],yo=2),be())}function qu(){e.event.keyCode==32&&yo==2&&(vl[0]+=We[1],vl[1]+=Ye[1],yo=0,be())}function Ju(){var pu=e.mouse(ai),xu=!1;wl&&(pu[0]+=wl[0],pu[1]+=wl[1]),yo||(e.event.altKey?(Ms||(Ms=[(We[0]+We[1])/2,(Ye[0]+Ye[1])/2]),vl[0]=We[+(pu[0]{(function(e,t){typeof aL=="object"&&typeof Aee!="undefined"?t(aL):(e=e||self,t(e.d3=e.d3||{}))})(aL,function(e){"use strict";var t=new Date,r=new Date;function n(Te,nt,ut,ct){function rt(je){return Te(je=arguments.length===0?new Date:new Date(+je)),je}return rt.floor=function(je){return Te(je=new Date(+je)),je},rt.ceil=function(je){return Te(je=new Date(je-1)),nt(je,1),Te(je),je},rt.round=function(je){var tt=rt(je),Je=rt.ceil(je);return je-tt0))return Mt;do Mt.push(Vt=new Date(+je)),nt(je,Je),Te(je);while(Vt=tt)for(;Te(tt),!je(tt);)tt.setTime(tt-1)},function(tt,Je){if(tt>=tt)if(Je<0)for(;++Je<=0;)for(;nt(tt,-1),!je(tt););else for(;--Je>=0;)for(;nt(tt,1),!je(tt););})},ut&&(rt.count=function(je,tt){return t.setTime(+je),r.setTime(+tt),Te(t),Te(r),Math.floor(ut(t,r))},rt.every=function(je){return je=Math.floor(je),!isFinite(je)||!(je>0)?null:je>1?rt.filter(ct?function(tt){return ct(tt)%je===0}:function(tt){return rt.count(0,tt)%je===0}):rt}),rt}var i=n(function(){},function(Te,nt){Te.setTime(+Te+nt)},function(Te,nt){return nt-Te});i.every=function(Te){return Te=Math.floor(Te),!isFinite(Te)||!(Te>0)?null:Te>1?n(function(nt){nt.setTime(Math.floor(nt/Te)*Te)},function(nt,ut){nt.setTime(+nt+ut*Te)},function(nt,ut){return(ut-nt)/Te}):i};var a=i.range,o=1e3,s=6e4,u=36e5,l=864e5,f=6048e5,c=n(function(Te){Te.setTime(Te-Te.getMilliseconds())},function(Te,nt){Te.setTime(+Te+nt*o)},function(Te,nt){return(nt-Te)/o},function(Te){return Te.getUTCSeconds()}),h=c.range,d=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o)},function(Te,nt){Te.setTime(+Te+nt*s)},function(Te,nt){return(nt-Te)/s},function(Te){return Te.getMinutes()}),p=d.range,x=n(function(Te){Te.setTime(Te-Te.getMilliseconds()-Te.getSeconds()*o-Te.getMinutes()*s)},function(Te,nt){Te.setTime(+Te+nt*u)},function(Te,nt){return(nt-Te)/u},function(Te){return Te.getHours()}),b=x.range,v=n(function(Te){Te.setHours(0,0,0,0)},function(Te,nt){Te.setDate(Te.getDate()+nt)},function(Te,nt){return(nt-Te-(nt.getTimezoneOffset()-Te.getTimezoneOffset())*s)/l},function(Te){return Te.getDate()-1}),k=v.range;function E(Te){return n(function(nt){nt.setDate(nt.getDate()-(nt.getDay()+7-Te)%7),nt.setHours(0,0,0,0)},function(nt,ut){nt.setDate(nt.getDate()+ut*7)},function(nt,ut){return(ut-nt-(ut.getTimezoneOffset()-nt.getTimezoneOffset())*s)/f})}var A=E(0),L=E(1),_=E(2),C=E(3),M=E(4),y=E(5),z=E(6),T=A.range,F=L.range,q=_.range,U=C.range,H=M.range,j=y.range,G=z.range,O=n(function(Te){Te.setDate(1),Te.setHours(0,0,0,0)},function(Te,nt){Te.setMonth(Te.getMonth()+nt)},function(Te,nt){return nt.getMonth()-Te.getMonth()+(nt.getFullYear()-Te.getFullYear())*12},function(Te){return Te.getMonth()}),W=O.range,re=n(function(Te){Te.setMonth(0,1),Te.setHours(0,0,0,0)},function(Te,nt){Te.setFullYear(Te.getFullYear()+nt)},function(Te,nt){return nt.getFullYear()-Te.getFullYear()},function(Te){return Te.getFullYear()});re.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(nt){nt.setFullYear(Math.floor(nt.getFullYear()/Te)*Te),nt.setMonth(0,1),nt.setHours(0,0,0,0)},function(nt,ut){nt.setFullYear(nt.getFullYear()+ut*Te)})};var ne=re.range,be=n(function(Te){Te.setUTCSeconds(0,0)},function(Te,nt){Te.setTime(+Te+nt*s)},function(Te,nt){return(nt-Te)/s},function(Te){return Te.getUTCMinutes()}),ze=be.range,Ce=n(function(Te){Te.setUTCMinutes(0,0,0)},function(Te,nt){Te.setTime(+Te+nt*u)},function(Te,nt){return(nt-Te)/u},function(Te){return Te.getUTCHours()}),he=Ce.range,te=n(function(Te){Te.setUTCHours(0,0,0,0)},function(Te,nt){Te.setUTCDate(Te.getUTCDate()+nt)},function(Te,nt){return(nt-Te)/l},function(Te){return Te.getUTCDate()-1}),ke=te.range;function Ee(Te){return n(function(nt){nt.setUTCDate(nt.getUTCDate()-(nt.getUTCDay()+7-Te)%7),nt.setUTCHours(0,0,0,0)},function(nt,ut){nt.setUTCDate(nt.getUTCDate()+ut*7)},function(nt,ut){return(ut-nt)/f})}var Me=Ee(0),Oe=Ee(1),Re=Ee(2),me=Ee(3),Be=Ee(4),fe=Ee(5),Ze=Ee(6),et=Me.range,gt=Oe.range,Pt=Re.range,Qe=me.range,Xe=Be.range,Tt=fe.range,xt=Ze.range,_t=n(function(Te){Te.setUTCDate(1),Te.setUTCHours(0,0,0,0)},function(Te,nt){Te.setUTCMonth(Te.getUTCMonth()+nt)},function(Te,nt){return nt.getUTCMonth()-Te.getUTCMonth()+(nt.getUTCFullYear()-Te.getUTCFullYear())*12},function(Te){return Te.getUTCMonth()}),Ct=_t.range,jt=n(function(Te){Te.setUTCMonth(0,1),Te.setUTCHours(0,0,0,0)},function(Te,nt){Te.setUTCFullYear(Te.getUTCFullYear()+nt)},function(Te,nt){return nt.getUTCFullYear()-Te.getUTCFullYear()},function(Te){return Te.getUTCFullYear()});jt.every=function(Te){return!isFinite(Te=Math.floor(Te))||!(Te>0)?null:n(function(nt){nt.setUTCFullYear(Math.floor(nt.getUTCFullYear()/Te)*Te),nt.setUTCMonth(0,1),nt.setUTCHours(0,0,0,0)},function(nt,ut){nt.setUTCFullYear(nt.getUTCFullYear()+ut*Te)})};var At=jt.range;e.timeDay=v,e.timeDays=k,e.timeFriday=y,e.timeFridays=j,e.timeHour=x,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=p,e.timeMonday=L,e.timeMondays=F,e.timeMonth=O,e.timeMonths=W,e.timeSaturday=z,e.timeSaturdays=G,e.timeSecond=c,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=H,e.timeTuesday=_,e.timeTuesdays=q,e.timeWednesday=C,e.timeWednesdays=U,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=ne,e.utcDay=te,e.utcDays=ke,e.utcFriday=fe,e.utcFridays=Tt,e.utcHour=Ce,e.utcHours=he,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=be,e.utcMinutes=ze,e.utcMonday=Oe,e.utcMondays=gt,e.utcMonth=_t,e.utcMonths=Ct,e.utcSaturday=Ze,e.utcSaturdays=xt,e.utcSecond=c,e.utcSeconds=h,e.utcSunday=Me,e.utcSundays=et,e.utcThursday=Be,e.utcThursdays=Xe,e.utcTuesday=Re,e.utcTuesdays=Pt,e.utcWednesday=me,e.utcWednesdays=Qe,e.utcWeek=Me,e.utcWeeks=et,e.utcYear=jt,e.utcYears=At,Object.defineProperty(e,"__esModule",{value:!0})})});var e3=Ae((oL,See)=>{(function(e,t){typeof oL=="object"&&typeof See!="undefined"?t(oL,MB()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(oL,function(e,t){"use strict";function r(_e){if(0<=_e.y&&_e.y<100){var Fe=new Date(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L);return Fe.setFullYear(_e.y),Fe}return new Date(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L)}function n(_e){if(0<=_e.y&&_e.y<100){var Fe=new Date(Date.UTC(-1,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L));return Fe.setUTCFullYear(_e.y),Fe}return new Date(Date.UTC(_e.y,_e.m,_e.d,_e.H,_e.M,_e.S,_e.L))}function i(_e,Fe,Pe){return{y:_e,m:Fe,d:Pe,H:0,M:0,S:0,L:0}}function a(_e){var Fe=_e.dateTime,Pe=_e.date,Ie=_e.time,lt=_e.periods,ye=_e.days,ue=_e.shortDays,de=_e.months,ht=_e.shortMonths,Et=h(lt),St=d(lt),Zt=h(ye),qr=d(ye),Lr=h(ue),vr=d(ue),Er=h(de),si=d(de),Ei=h(ht),Si=d(ht),xi={a:Br,A:oi,b:vi,B:Pi,c:null,d:O,e:O,f:ze,H:W,I:re,j:ne,L:be,m:Ce,M:he,p:Yr,q:Ni,Q:tt,s:Je,S:te,u:ke,U:Ee,V:Me,w:Oe,W:Re,x:null,X:null,y:me,Y:Be,Z:fe,"%":je},Hi={a:Ur,A:ti,b:ki,B:ji,c:null,d:Ze,e:Ze,f:Xe,H:et,I:gt,j:Pt,L:Qe,m:Tt,M:xt,p:Vi,q:zi,Q:tt,s:Je,S:_t,u:Ct,U:jt,V:At,w:Te,W:nt,x:null,X:null,y:ut,Y:ct,Z:rt,"%":je},Jr={a:Dt,A:Bt,b:sr,B:br,c:zr,d:M,e:M,f:U,H:z,I:z,j:y,L:q,m:C,M:T,p:vt,q:_,Q:j,s:G,S:F,u:x,U:b,V:v,w:p,W:k,x:Tr,X:Rr,y:A,Y:E,Z:L,"%":H};xi.x=ci(Pe,xi),xi.X=ci(Ie,xi),xi.c=ci(Fe,xi),Hi.x=ci(Pe,Hi),Hi.X=ci(Ie,Hi),Hi.c=ci(Fe,Hi);function ci(Mi,sn){return function(fi){var Or=[],st=-1,Wt=0,tr=Mi.length,or,Nr,hi;for(fi instanceof Date||(fi=new Date(+fi));++st53)return null;"w"in Or||(Or.w=1),"Z"in Or?(Wt=n(i(Or.y,0,1)),tr=Wt.getUTCDay(),Wt=tr>4||tr===0?t.utcMonday.ceil(Wt):t.utcMonday(Wt),Wt=t.utcDay.offset(Wt,(Or.V-1)*7),Or.y=Wt.getUTCFullYear(),Or.m=Wt.getUTCMonth(),Or.d=Wt.getUTCDate()+(Or.w+6)%7):(Wt=r(i(Or.y,0,1)),tr=Wt.getDay(),Wt=tr>4||tr===0?t.timeMonday.ceil(Wt):t.timeMonday(Wt),Wt=t.timeDay.offset(Wt,(Or.V-1)*7),Or.y=Wt.getFullYear(),Or.m=Wt.getMonth(),Or.d=Wt.getDate()+(Or.w+6)%7)}else("W"in Or||"U"in Or)&&("w"in Or||(Or.w="u"in Or?Or.u%7:"W"in Or?1:0),tr="Z"in Or?n(i(Or.y,0,1)).getUTCDay():r(i(Or.y,0,1)).getDay(),Or.m=0,Or.d="W"in Or?(Or.w+6)%7+Or.W*7-(tr+5)%7:Or.w+Or.U*7-(tr+6)%7);return"Z"in Or?(Or.H+=Or.Z/100|0,Or.M+=Or.Z%100,n(Or)):r(Or)}}function Lt(Mi,sn,fi,Or){for(var st=0,Wt=sn.length,tr=fi.length,or,Nr;st=tr)return-1;if(or=sn.charCodeAt(st++),or===37){if(or=sn.charAt(st++),Nr=Jr[or in o?sn.charAt(st++):or],!Nr||(Or=Nr(Mi,fi,Or))<0)return-1}else if(or!=fi.charCodeAt(Or++))return-1}return Or}function vt(Mi,sn,fi){var Or=Et.exec(sn.slice(fi));return Or?(Mi.p=St[Or[0].toLowerCase()],fi+Or[0].length):-1}function Dt(Mi,sn,fi){var Or=Lr.exec(sn.slice(fi));return Or?(Mi.w=vr[Or[0].toLowerCase()],fi+Or[0].length):-1}function Bt(Mi,sn,fi){var Or=Zt.exec(sn.slice(fi));return Or?(Mi.w=qr[Or[0].toLowerCase()],fi+Or[0].length):-1}function sr(Mi,sn,fi){var Or=Ei.exec(sn.slice(fi));return Or?(Mi.m=Si[Or[0].toLowerCase()],fi+Or[0].length):-1}function br(Mi,sn,fi){var Or=Er.exec(sn.slice(fi));return Or?(Mi.m=si[Or[0].toLowerCase()],fi+Or[0].length):-1}function zr(Mi,sn,fi){return Lt(Mi,Fe,sn,fi)}function Tr(Mi,sn,fi){return Lt(Mi,Pe,sn,fi)}function Rr(Mi,sn,fi){return Lt(Mi,Ie,sn,fi)}function Br(Mi){return ue[Mi.getDay()]}function oi(Mi){return ye[Mi.getDay()]}function vi(Mi){return ht[Mi.getMonth()]}function Pi(Mi){return de[Mi.getMonth()]}function Yr(Mi){return lt[+(Mi.getHours()>=12)]}function Ni(Mi){return 1+~~(Mi.getMonth()/3)}function Ur(Mi){return ue[Mi.getUTCDay()]}function ti(Mi){return ye[Mi.getUTCDay()]}function ki(Mi){return ht[Mi.getUTCMonth()]}function ji(Mi){return de[Mi.getUTCMonth()]}function Vi(Mi){return lt[+(Mi.getUTCHours()>=12)]}function zi(Mi){return 1+~~(Mi.getUTCMonth()/3)}return{format:function(Mi){var sn=ci(Mi+="",xi);return sn.toString=function(){return Mi},sn},parse:function(Mi){var sn=Di(Mi+="",!1);return sn.toString=function(){return Mi},sn},utcFormat:function(Mi){var sn=ci(Mi+="",Hi);return sn.toString=function(){return Mi},sn},utcParse:function(Mi){var sn=Di(Mi+="",!0);return sn.toString=function(){return Mi},sn}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,u=/^%/,l=/[\\^$*+?|[\]().{}]/g;function f(_e,Fe,Pe){var Ie=_e<0?"-":"",lt=(Ie?-_e:_e)+"",ye=lt.length;return Ie+(ye68?1900:2e3),Pe+Ie[0].length):-1}function L(_e,Fe,Pe){var Ie=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Fe.slice(Pe,Pe+6));return Ie?(_e.Z=Ie[1]?0:-(Ie[2]+(Ie[3]||"00")),Pe+Ie[0].length):-1}function _(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+1));return Ie?(_e.q=Ie[0]*3-3,Pe+Ie[0].length):-1}function C(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.m=Ie[0]-1,Pe+Ie[0].length):-1}function M(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.d=+Ie[0],Pe+Ie[0].length):-1}function y(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+3));return Ie?(_e.m=0,_e.d=+Ie[0],Pe+Ie[0].length):-1}function z(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.H=+Ie[0],Pe+Ie[0].length):-1}function T(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.M=+Ie[0],Pe+Ie[0].length):-1}function F(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+2));return Ie?(_e.S=+Ie[0],Pe+Ie[0].length):-1}function q(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+3));return Ie?(_e.L=+Ie[0],Pe+Ie[0].length):-1}function U(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe,Pe+6));return Ie?(_e.L=Math.floor(Ie[0]/1e3),Pe+Ie[0].length):-1}function H(_e,Fe,Pe){var Ie=u.exec(Fe.slice(Pe,Pe+1));return Ie?Pe+Ie[0].length:-1}function j(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe));return Ie?(_e.Q=+Ie[0],Pe+Ie[0].length):-1}function G(_e,Fe,Pe){var Ie=s.exec(Fe.slice(Pe));return Ie?(_e.s=+Ie[0],Pe+Ie[0].length):-1}function O(_e,Fe){return f(_e.getDate(),Fe,2)}function W(_e,Fe){return f(_e.getHours(),Fe,2)}function re(_e,Fe){return f(_e.getHours()%12||12,Fe,2)}function ne(_e,Fe){return f(1+t.timeDay.count(t.timeYear(_e),_e),Fe,3)}function be(_e,Fe){return f(_e.getMilliseconds(),Fe,3)}function ze(_e,Fe){return be(_e,Fe)+"000"}function Ce(_e,Fe){return f(_e.getMonth()+1,Fe,2)}function he(_e,Fe){return f(_e.getMinutes(),Fe,2)}function te(_e,Fe){return f(_e.getSeconds(),Fe,2)}function ke(_e){var Fe=_e.getDay();return Fe===0?7:Fe}function Ee(_e,Fe){return f(t.timeSunday.count(t.timeYear(_e)-1,_e),Fe,2)}function Me(_e,Fe){var Pe=_e.getDay();return _e=Pe>=4||Pe===0?t.timeThursday(_e):t.timeThursday.ceil(_e),f(t.timeThursday.count(t.timeYear(_e),_e)+(t.timeYear(_e).getDay()===4),Fe,2)}function Oe(_e){return _e.getDay()}function Re(_e,Fe){return f(t.timeMonday.count(t.timeYear(_e)-1,_e),Fe,2)}function me(_e,Fe){return f(_e.getFullYear()%100,Fe,2)}function Be(_e,Fe){return f(_e.getFullYear()%1e4,Fe,4)}function fe(_e){var Fe=_e.getTimezoneOffset();return(Fe>0?"-":(Fe*=-1,"+"))+f(Fe/60|0,"0",2)+f(Fe%60,"0",2)}function Ze(_e,Fe){return f(_e.getUTCDate(),Fe,2)}function et(_e,Fe){return f(_e.getUTCHours(),Fe,2)}function gt(_e,Fe){return f(_e.getUTCHours()%12||12,Fe,2)}function Pt(_e,Fe){return f(1+t.utcDay.count(t.utcYear(_e),_e),Fe,3)}function Qe(_e,Fe){return f(_e.getUTCMilliseconds(),Fe,3)}function Xe(_e,Fe){return Qe(_e,Fe)+"000"}function Tt(_e,Fe){return f(_e.getUTCMonth()+1,Fe,2)}function xt(_e,Fe){return f(_e.getUTCMinutes(),Fe,2)}function _t(_e,Fe){return f(_e.getUTCSeconds(),Fe,2)}function Ct(_e){var Fe=_e.getUTCDay();return Fe===0?7:Fe}function jt(_e,Fe){return f(t.utcSunday.count(t.utcYear(_e)-1,_e),Fe,2)}function At(_e,Fe){var Pe=_e.getUTCDay();return _e=Pe>=4||Pe===0?t.utcThursday(_e):t.utcThursday.ceil(_e),f(t.utcThursday.count(t.utcYear(_e),_e)+(t.utcYear(_e).getUTCDay()===4),Fe,2)}function Te(_e){return _e.getUTCDay()}function nt(_e,Fe){return f(t.utcMonday.count(t.utcYear(_e)-1,_e),Fe,2)}function ut(_e,Fe){return f(_e.getUTCFullYear()%100,Fe,2)}function ct(_e,Fe){return f(_e.getUTCFullYear()%1e4,Fe,4)}function rt(){return"+0000"}function je(){return"%"}function tt(_e){return+_e}function Je(_e){return Math.floor(+_e/1e3)}var Mt;Vt({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Vt(_e){return Mt=a(_e),e.timeFormat=Mt.format,e.timeParse=Mt.parse,e.utcFormat=Mt.utcFormat,e.utcParse=Mt.utcParse,Mt}var Kt="%Y-%m-%dT%H:%M:%S.%LZ";function ir(_e){return _e.toISOString()}var fr=Date.prototype.toISOString?ir:e.utcFormat(Kt);function Ot(_e){var Fe=new Date(_e);return isNaN(Fe)?null:Fe}var De=+new Date("2000-01-01T00:00:00.000Z")?Ot:e.utcParse(Kt);e.isoFormat=fr,e.isoParse=De,e.timeFormatDefaultLocale=Vt,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var EB=Ae((sL,Mee)=>{(function(e,t){typeof sL=="object"&&typeof Mee!="undefined"?t(sL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(sL,function(e){"use strict";function t(C){return Math.abs(C=Math.round(C))>=1e21?C.toLocaleString("en").replace(/,/g,""):C.toString(10)}function r(C,M){if((y=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var y,z=C.slice(0,y);return[z.length>1?z[0]+z.slice(2):z,+C.slice(y+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(y,z){for(var T=y.length,F=[],q=0,U=C[0],H=0;T>0&&U>0&&(H+U+1>z&&(U=Math.max(1,z-H)),F.push(y.substring(T-=U,T+U)),!((H+=U+1)>z));)U=C[q=(q+1)%C.length];return F.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(y){return C[+y]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(C){if(!(M=o.exec(C)))throw new Error("invalid format: "+C);var M;return new u({fill:M[1],align:M[2],sign:M[3],symbol:M[4],zero:M[5],width:M[6],comma:M[7],precision:M[8]&&M[8].slice(1),trim:M[9],type:M[10]})}s.prototype=u.prototype;function u(C){this.fill=C.fill===void 0?" ":C.fill+"",this.align=C.align===void 0?">":C.align+"",this.sign=C.sign===void 0?"-":C.sign+"",this.symbol=C.symbol===void 0?"":C.symbol+"",this.zero=!!C.zero,this.width=C.width===void 0?void 0:+C.width,this.comma=!!C.comma,this.precision=C.precision===void 0?void 0:+C.precision,this.trim=!!C.trim,this.type=C.type===void 0?"":C.type+""}u.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function l(C){e:for(var M=C.length,y=1,z=-1,T;y0&&(z=0);break}return z>0?C.slice(0,z)+C.slice(T+1):C}var f;function c(C,M){var y=r(C,M);if(!y)return C+"";var z=y[0],T=y[1],F=T-(f=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,q=z.length;return F===q?z:F>q?z+new Array(F-q+1).join("0"):F>0?z.slice(0,F)+"."+z.slice(F):"0."+new Array(1-F).join("0")+r(C,Math.max(0,M+F-1))[0]}function h(C,M){var y=r(C,M);if(!y)return C+"";var z=y[0],T=y[1];return T<0?"0."+new Array(-T).join("0")+z:z.length>T+1?z.slice(0,T+1)+"."+z.slice(T+1):z+new Array(T-z.length+2).join("0")}var d={"%":function(C,M){return(C*100).toFixed(M)},b:function(C){return Math.round(C).toString(2)},c:function(C){return C+""},d:t,e:function(C,M){return C.toExponential(M)},f:function(C,M){return C.toFixed(M)},g:function(C,M){return C.toPrecision(M)},o:function(C){return Math.round(C).toString(8)},p:function(C,M){return h(C*100,M)},r:h,s:c,X:function(C){return Math.round(C).toString(16).toUpperCase()},x:function(C){return Math.round(C).toString(16)}};function p(C){return C}var x=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function v(C){var M=C.grouping===void 0||C.thousands===void 0?p:i(x.call(C.grouping,Number),C.thousands+""),y=C.currency===void 0?"":C.currency[0]+"",z=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",F=C.numerals===void 0?p:a(x.call(C.numerals,String)),q=C.percent===void 0?"%":C.percent+"",U=C.minus===void 0?"-":C.minus+"",H=C.nan===void 0?"NaN":C.nan+"";function j(O){O=s(O);var W=O.fill,re=O.align,ne=O.sign,be=O.symbol,ze=O.zero,Ce=O.width,he=O.comma,te=O.precision,ke=O.trim,Ee=O.type;Ee==="n"?(he=!0,Ee="g"):d[Ee]||(te===void 0&&(te=12),ke=!0,Ee="g"),(ze||W==="0"&&re==="=")&&(ze=!0,W="0",re="=");var Me=be==="$"?y:be==="#"&&/[boxX]/.test(Ee)?"0"+Ee.toLowerCase():"",Oe=be==="$"?z:/[%p]/.test(Ee)?q:"",Re=d[Ee],me=/[defgprs%]/.test(Ee);te=te===void 0?6:/[gprs]/.test(Ee)?Math.max(1,Math.min(21,te)):Math.max(0,Math.min(20,te));function Be(fe){var Ze=Me,et=Oe,gt,Pt,Qe;if(Ee==="c")et=Re(fe)+et,fe="";else{fe=+fe;var Xe=fe<0||1/fe<0;if(fe=isNaN(fe)?H:Re(Math.abs(fe),te),ke&&(fe=l(fe)),Xe&&+fe==0&&ne!=="+"&&(Xe=!1),Ze=(Xe?ne==="("?ne:U:ne==="-"||ne==="("?"":ne)+Ze,et=(Ee==="s"?b[8+f/3]:"")+et+(Xe&&ne==="("?")":""),me){for(gt=-1,Pt=fe.length;++gtQe||Qe>57){et=(Qe===46?T+fe.slice(gt+1):fe.slice(gt))+et,fe=fe.slice(0,gt);break}}}he&&!ze&&(fe=M(fe,1/0));var Tt=Ze.length+fe.length+et.length,xt=Tt>1)+Ze+fe+et+xt.slice(Tt);break;default:fe=xt+Ze+fe+et;break}return F(fe)}return Be.toString=function(){return O+""},Be}function G(O,W){var re=j((O=s(O),O.type="f",O)),ne=Math.max(-8,Math.min(8,Math.floor(n(W)/3)))*3,be=Math.pow(10,-ne),ze=b[8+ne/3];return function(Ce){return re(be*Ce)+ze}}return{format:j,formatPrefix:G}}var k;E({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function E(C){return k=v(C),e.format=k.format,e.formatPrefix=k.formatPrefix,k}function A(C){return Math.max(0,-n(Math.abs(C)))}function L(C,M){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(M)/3)))*3-n(Math.abs(C)))}function _(C,M){return C=Math.abs(C),M=Math.abs(M)-C,Math.max(0,n(M)-n(C))+1}e.FormatSpecifier=u,e.formatDefaultLocale=E,e.formatLocale=v,e.formatSpecifier=s,e.precisionFixed=A,e.precisionPrefix=L,e.precisionRound=_,Object.defineProperty(e,"__esModule",{value:!0})})});var kee=Ae((xrr,Eee)=>{"use strict";Eee.exports=function(e){for(var t=e.length,r,n=0;n13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var _u=Ae((brr,Cee)=>{"use strict";var Ltt=kee();Cee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&Ltt(r))return!1}else if(t!=="number")return!1;return e-e<1}});var ju=Ae((wrr,Lee)=>{"use strict";Lee.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var kB=Ae((lL,zee)=>{(function(e,t){typeof lL=="object"&&typeof zee!="undefined"?t(lL):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(lL,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],f+=t[(s[u]&3)<<4|s[u+1]>>4],f+=t[(s[u+1]&15)<<2|s[u+2]>>6],f+=t[s[u+2]&63];return l%3===2?f=f.substring(0,f.length-1)+"=":l%3===1&&(f=f.substring(0,f.length-2)+"=="),f},a=function(o){var s=o.length*.75,u=o.length,l,f=0,c,h,d,p;o[o.length-1]==="="&&(s--,o[o.length-2]==="="&&s--);var x=new ArrayBuffer(s),b=new Uint8Array(x);for(l=0;l>4,b[f++]=(h&15)<<4|d>>2,b[f++]=(d&3)<<6|p&63;return x};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var yg=Ae((Trr,Pee)=>{"use strict";Pee.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var yp=Ae(my=>{"use strict";var ztt=kB().decode,Ptt=yg(),CB=Array.isArray,Itt=ArrayBuffer,Dtt=DataView;function Iee(e){return Itt.isView(e)&&!(e instanceof Dtt)}my.isTypedArray=Iee;function uL(e){return CB(e)||Iee(e)}my.isArrayOrTypedArray=uL;function Rtt(e){return!uL(e[0])}my.isArray1D=Rtt;my.ensureArray=function(e,t){return CB(e)||(e=[]),e.length=t,e};var Pd={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Pd.uint8c=Pd.u1c;Pd.uint8=Pd.u1;Pd.int8=Pd.i1;Pd.uint16=Pd.u2;Pd.int16=Pd.i2;Pd.uint32=Pd.u4;Pd.int32=Pd.i4;Pd.float32=Pd.f4;Pd.float64=Pd.f8;function LB(e){return e.constructor===ArrayBuffer}my.isArrayBuffer=LB;my.decodeTypedArraySpec=function(e){var t=[],r=Ftt(e),n=r.dtype,i=Pd[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;LB(o)||(o=ztt(o));var s=r.shape===void 0?[o.byteLength/a]:(""+r.shape).split(",");s.reverse();var u=s.length,l,f,c=+s[0],h=a*c,d=0;if(u===1)t=new i(o);else if(u===2)for(l=+s[1],f=0;f{"use strict";var Ree=_u(),PB=yp().isArrayOrTypedArray;Oee.exports=function(t,r){if(Ree(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s{"use strict";var t3=kM(),Utt=/^\w*$/,Vtt=0,Nee=1,fL=2,Uee=3,ob=4;Vee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,u={};r&&r.length?(s=t3(t,r),o=s.get()):o=t,r=r||"";var l={};if(o)for(a=0;a2)return u[d]=u[d]|fL,c.set(h,null);if(f){for(a=d;a{"use strict";var Htt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,Gtt=/^[^\.\[\]]+$/;Gee.exports=function(e,t){for(;t;){var r=e.match(Htt);if(r)e=r[1];else if(e.match(Gtt))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var cL=Ae((krr,jee)=>{"use strict";var Wtt=_u();jee.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return Wtt(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Yee=Ae((Crr,Xee)=>{"use strict";var Zee=yp().isArrayOrTypedArray,CM=yg();Xee.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(Zee(i)&&Zee(a)&&CM(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function jtt(e,t){var r=e%t;return r<0?r+t:r}function Ztt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Kee.exports={mod:jtt,modHalf:Ztt}});var cd=Ae((zrr,hL)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function u(me,Be){if(me=me||"",Be=Be||{},me instanceof u)return me;if(!(this instanceof u))return new u(me,Be);var fe=l(me);this._originalInput=me,this._r=fe.r,this._g=fe.g,this._b=fe.b,this._a=fe.a,this._roundA=i(100*this._a)/100,this._format=Be.format||fe.format,this._gradientType=Be.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=fe.ok,this._tc_id=n++}u.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var me=this.toRgb();return(me.r*299+me.g*587+me.b*114)/1e3},getLuminance:function(){var me=this.toRgb(),Be,fe,Ze,et,gt,Pt;return Be=me.r/255,fe=me.g/255,Ze=me.b/255,Be<=.03928?et=Be/12.92:et=e.pow((Be+.055)/1.055,2.4),fe<=.03928?gt=fe/12.92:gt=e.pow((fe+.055)/1.055,2.4),Ze<=.03928?Pt=Ze/12.92:Pt=e.pow((Ze+.055)/1.055,2.4),.2126*et+.7152*gt+.0722*Pt},setAlpha:function(me){return this._a=O(me),this._roundA=i(100*this._a)/100,this},toHsv:function(){var me=d(this._r,this._g,this._b);return{h:me.h*360,s:me.s,v:me.v,a:this._a}},toHsvString:function(){var me=d(this._r,this._g,this._b),Be=i(me.h*360),fe=i(me.s*100),Ze=i(me.v*100);return this._a==1?"hsv("+Be+", "+fe+"%, "+Ze+"%)":"hsva("+Be+", "+fe+"%, "+Ze+"%, "+this._roundA+")"},toHsl:function(){var me=c(this._r,this._g,this._b);return{h:me.h*360,s:me.s,l:me.l,a:this._a}},toHslString:function(){var me=c(this._r,this._g,this._b),Be=i(me.h*360),fe=i(me.s*100),Ze=i(me.l*100);return this._a==1?"hsl("+Be+", "+fe+"%, "+Ze+"%)":"hsla("+Be+", "+fe+"%, "+Ze+"%, "+this._roundA+")"},toHex:function(me){return x(this._r,this._g,this._b,me)},toHexString:function(me){return"#"+this.toHex(me)},toHex8:function(me){return b(this._r,this._g,this._b,this._a,me)},toHex8String:function(me){return"#"+this.toHex8(me)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(W(this._r,255)*100)+"%",g:i(W(this._g,255)*100)+"%",b:i(W(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%)":"rgba("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:j[x(this._r,this._g,this._b,!0)]||!1},toFilter:function(me){var Be="#"+v(this._r,this._g,this._b,this._a),fe=Be,Ze=this._gradientType?"GradientType = 1, ":"";if(me){var et=u(me);fe="#"+v(et._r,et._g,et._b,et._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ze+"startColorstr="+Be+",endColorstr="+fe+")"},toString:function(me){var Be=!!me;me=me||this._format;var fe=!1,Ze=this._a<1&&this._a>=0,et=!Be&&Ze&&(me==="hex"||me==="hex6"||me==="hex3"||me==="hex4"||me==="hex8"||me==="name");return et?me==="name"&&this._a===0?this.toName():this.toRgbString():(me==="rgb"&&(fe=this.toRgbString()),me==="prgb"&&(fe=this.toPercentageRgbString()),(me==="hex"||me==="hex6")&&(fe=this.toHexString()),me==="hex3"&&(fe=this.toHexString(!0)),me==="hex4"&&(fe=this.toHex8String(!0)),me==="hex8"&&(fe=this.toHex8String()),me==="name"&&(fe=this.toName()),me==="hsl"&&(fe=this.toHslString()),me==="hsv"&&(fe=this.toHsvString()),fe||this.toHexString())},clone:function(){return u(this.toString())},_applyModification:function(me,Be){var fe=me.apply(null,[this].concat([].slice.call(Be)));return this._r=fe._r,this._g=fe._g,this._b=fe._b,this.setAlpha(fe._a),this},lighten:function(){return this._applyModification(L,arguments)},brighten:function(){return this._applyModification(_,arguments)},darken:function(){return this._applyModification(C,arguments)},desaturate:function(){return this._applyModification(k,arguments)},saturate:function(){return this._applyModification(E,arguments)},greyscale:function(){return this._applyModification(A,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(me,Be){return me.apply(null,[this].concat([].slice.call(Be)))},analogous:function(){return this._applyCombination(q,arguments)},complement:function(){return this._applyCombination(y,arguments)},monochromatic:function(){return this._applyCombination(U,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(z,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},u.fromRatio=function(me,Be){if(typeof me=="object"){var fe={};for(var Ze in me)me.hasOwnProperty(Ze)&&(Ze==="a"?fe[Ze]=me[Ze]:fe[Ze]=he(me[Ze]));me=fe}return u(me,Be)};function l(me){var Be={r:0,g:0,b:0},fe=1,Ze=null,et=null,gt=null,Pt=!1,Qe=!1;return typeof me=="string"&&(me=Oe(me)),typeof me=="object"&&(Me(me.r)&&Me(me.g)&&Me(me.b)?(Be=f(me.r,me.g,me.b),Pt=!0,Qe=String(me.r).substr(-1)==="%"?"prgb":"rgb"):Me(me.h)&&Me(me.s)&&Me(me.v)?(Ze=he(me.s),et=he(me.v),Be=p(me.h,Ze,et),Pt=!0,Qe="hsv"):Me(me.h)&&Me(me.s)&&Me(me.l)&&(Ze=he(me.s),gt=he(me.l),Be=h(me.h,Ze,gt),Pt=!0,Qe="hsl"),me.hasOwnProperty("a")&&(fe=me.a)),fe=O(fe),{ok:Pt,format:me.format||Qe,r:a(255,o(Be.r,0)),g:a(255,o(Be.g,0)),b:a(255,o(Be.b,0)),a:fe}}function f(me,Be,fe){return{r:W(me,255)*255,g:W(Be,255)*255,b:W(fe,255)*255}}function c(me,Be,fe){me=W(me,255),Be=W(Be,255),fe=W(fe,255);var Ze=o(me,Be,fe),et=a(me,Be,fe),gt,Pt,Qe=(Ze+et)/2;if(Ze==et)gt=Pt=0;else{var Xe=Ze-et;switch(Pt=Qe>.5?Xe/(2-Ze-et):Xe/(Ze+et),Ze){case me:gt=(Be-fe)/Xe+(Be1&&(_t-=1),_t<1/6?Tt+(xt-Tt)*6*_t:_t<1/2?xt:_t<2/3?Tt+(xt-Tt)*(2/3-_t)*6:Tt}if(Be===0)Ze=et=gt=fe;else{var Qe=fe<.5?fe*(1+Be):fe+Be-fe*Be,Xe=2*fe-Qe;Ze=Pt(Xe,Qe,me+1/3),et=Pt(Xe,Qe,me),gt=Pt(Xe,Qe,me-1/3)}return{r:Ze*255,g:et*255,b:gt*255}}function d(me,Be,fe){me=W(me,255),Be=W(Be,255),fe=W(fe,255);var Ze=o(me,Be,fe),et=a(me,Be,fe),gt,Pt,Qe=Ze,Xe=Ze-et;if(Pt=Ze===0?0:Xe/Ze,Ze==et)gt=0;else{switch(Ze){case me:gt=(Be-fe)/Xe+(Be>1)+720)%360;--Be;)Ze.h=(Ze.h+et)%360,gt.push(u(Ze));return gt}function U(me,Be){Be=Be||6;for(var fe=u(me).toHsv(),Ze=fe.h,et=fe.s,gt=fe.v,Pt=[],Qe=1/Be;Be--;)Pt.push(u({h:Ze,s:et,v:gt})),gt=(gt+Qe)%1;return Pt}u.mix=function(me,Be,fe){fe=fe===0?0:fe||50;var Ze=u(me).toRgb(),et=u(Be).toRgb(),gt=fe/100,Pt={r:(et.r-Ze.r)*gt+Ze.r,g:(et.g-Ze.g)*gt+Ze.g,b:(et.b-Ze.b)*gt+Ze.b,a:(et.a-Ze.a)*gt+Ze.a};return u(Pt)},u.readability=function(me,Be){var fe=u(me),Ze=u(Be);return(e.max(fe.getLuminance(),Ze.getLuminance())+.05)/(e.min(fe.getLuminance(),Ze.getLuminance())+.05)},u.isReadable=function(me,Be,fe){var Ze=u.readability(me,Be),et,gt;switch(gt=!1,et=Re(fe),et.level+et.size){case"AAsmall":case"AAAlarge":gt=Ze>=4.5;break;case"AAlarge":gt=Ze>=3;break;case"AAAsmall":gt=Ze>=7;break}return gt},u.mostReadable=function(me,Be,fe){var Ze=null,et=0,gt,Pt,Qe,Xe;fe=fe||{},Pt=fe.includeFallbackColors,Qe=fe.level,Xe=fe.size;for(var Tt=0;Ttet&&(et=gt,Ze=u(Be[Tt]));return u.isReadable(me,Ze,{level:Qe,size:Xe})||!Pt?Ze:(fe.includeFallbackColors=!1,u.mostReadable(me,["#fff","#000"],fe))};var H=u.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},j=u.hexNames=G(H);function G(me){var Be={};for(var fe in me)me.hasOwnProperty(fe)&&(Be[me[fe]]=fe);return Be}function O(me){return me=parseFloat(me),(isNaN(me)||me<0||me>1)&&(me=1),me}function W(me,Be){be(me)&&(me="100%");var fe=ze(me);return me=a(Be,o(0,parseFloat(me))),fe&&(me=parseInt(me*Be,10)/100),e.abs(me-Be)<1e-6?1:me%Be/parseFloat(Be)}function re(me){return a(1,o(0,me))}function ne(me){return parseInt(me,16)}function be(me){return typeof me=="string"&&me.indexOf(".")!=-1&&parseFloat(me)===1}function ze(me){return typeof me=="string"&&me.indexOf("%")!=-1}function Ce(me){return me.length==1?"0"+me:""+me}function he(me){return me<=1&&(me=me*100+"%"),me}function te(me){return e.round(parseFloat(me)*255).toString(16)}function ke(me){return ne(me)/255}var Ee=function(){var me="[-\\+]?\\d+%?",Be="[-\\+]?\\d*\\.\\d+%?",fe="(?:"+Be+")|(?:"+me+")",Ze="[\\s|\\(]+("+fe+")[,|\\s]+("+fe+")[,|\\s]+("+fe+")\\s*\\)?",et="[\\s|\\(]+("+fe+")[,|\\s]+("+fe+")[,|\\s]+("+fe+")[,|\\s]+("+fe+")\\s*\\)?";return{CSS_UNIT:new RegExp(fe),rgb:new RegExp("rgb"+Ze),rgba:new RegExp("rgba"+et),hsl:new RegExp("hsl"+Ze),hsla:new RegExp("hsla"+et),hsv:new RegExp("hsv"+Ze),hsva:new RegExp("hsva"+et),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Me(me){return!!Ee.CSS_UNIT.exec(me)}function Oe(me){me=me.replace(t,"").replace(r,"").toLowerCase();var Be=!1;if(H[me])me=H[me],Be=!0;else if(me=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var fe;return(fe=Ee.rgb.exec(me))?{r:fe[1],g:fe[2],b:fe[3]}:(fe=Ee.rgba.exec(me))?{r:fe[1],g:fe[2],b:fe[3],a:fe[4]}:(fe=Ee.hsl.exec(me))?{h:fe[1],s:fe[2],l:fe[3]}:(fe=Ee.hsla.exec(me))?{h:fe[1],s:fe[2],l:fe[3],a:fe[4]}:(fe=Ee.hsv.exec(me))?{h:fe[1],s:fe[2],v:fe[3]}:(fe=Ee.hsva.exec(me))?{h:fe[1],s:fe[2],v:fe[3],a:fe[4]}:(fe=Ee.hex8.exec(me))?{r:ne(fe[1]),g:ne(fe[2]),b:ne(fe[3]),a:ke(fe[4]),format:Be?"name":"hex8"}:(fe=Ee.hex6.exec(me))?{r:ne(fe[1]),g:ne(fe[2]),b:ne(fe[3]),format:Be?"name":"hex"}:(fe=Ee.hex4.exec(me))?{r:ne(fe[1]+""+fe[1]),g:ne(fe[2]+""+fe[2]),b:ne(fe[3]+""+fe[3]),a:ke(fe[4]+""+fe[4]),format:Be?"name":"hex8"}:(fe=Ee.hex3.exec(me))?{r:ne(fe[1]+""+fe[1]),g:ne(fe[2]+""+fe[2]),b:ne(fe[3]+""+fe[3]),format:Be?"name":"hex"}:!1}function Re(me){var Be,fe;return me=me||{level:"AA",size:"small"},Be=(me.level||"AA").toUpperCase(),fe=(me.size||"small").toLowerCase(),Be!=="AA"&&Be!=="AAA"&&(Be="AA"),fe!=="small"&&fe!=="large"&&(fe="small"),{level:Be,size:fe}}typeof hL!="undefined"&&hL.exports?hL.exports=u:window.tinycolor=u})(Math)});var vu=Ae(PM=>{"use strict";var Jee=yg(),LM=Array.isArray;function Xtt(e,t){var r,n;for(r=0;r{"use strict";$ee.exports=function(e){var t=e.variantValues,r=e.editType,n=e.colorEditType;n===void 0&&(n=r);var i={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(i.valType="enumerated",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:n},weight:i,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(a.size.dflt="auto"),e.autoColor&&(a.color.dflt="auto"),e.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,e.noFontVariant||(a.variant.arrayOk=!0),e.noFontTextcase||(a.textcase.arrayOk=!0),e.noFontLineposition||(a.lineposition.arrayOk=!0),e.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}});var IM=Ae((Drr,Qee)=>{"use strict";Qee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var N1=Ae((Rrr,rte)=>{"use strict";var ete=IM(),tte=uc(),IB=tte({editType:"none"});IB.family.dflt=ete.HOVERFONT;IB.size.dflt=ete.HOVERFONTSIZE;rte.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:IB,grouptitlefont:tte({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i3=Ae((Frr,ite)=>{"use strict";var Ytt=uc(),dL=N1().hoverlabel,pL=vu().extendFlat;ite.exports={hoverlabel:{bgcolor:pL({},dL.bgcolor,{arrayOk:!0}),bordercolor:pL({},dL.bordercolor,{arrayOk:!0}),font:Ytt({arrayOk:!0,editType:"none"}),align:pL({},dL.align,{arrayOk:!0}),namelength:pL({},dL.namelength,{arrayOk:!0}),editType:"none"}}});var zf=Ae((qrr,nte)=>{"use strict";var Ktt=uc(),Jtt=i3();nte.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:Ktt({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:Jtt.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var sb=Ae((Brr,ste)=>{"use strict";var $tt=cd(),vL={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},ate=vL.RdBu;function Qtt(e,t){if(t||(t=ate),!e)return t;function r(){try{e=vL[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),ote(e)?e:t}function ote(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r{"use strict";lb.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];lb.defaultLine="#444";lb.lightLine="#eee";lb.background="#fff";lb.borderLine="#BEC8D9";lb.lightFraction=100*10/11});var Pl=Ae((Nrr,lte)=>{"use strict";var xv=cd(),trt=_u(),rrt=yp().isTypedArray,hd=lte.exports={},yL=Ih();hd.defaults=yL.defaults;var irt=hd.defaultLine=yL.defaultLine;hd.lightLine=yL.lightLine;var RB=hd.background=yL.background;hd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};hd.rgb=function(e){return hd.tinyRGB(xv(e))};hd.opacity=function(e){return e?xv(e).getAlpha():0};hd.addOpacity=function(e,t){var r=xv(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};hd.combine=function(e,t){var r=xv(e).toRgb();if(r.a===1)return xv(e).toRgbString();var n=xv(t||RB).toRgb(),i=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},a={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return xv(a).toRgbString()};hd.interpolate=function(e,t,r){var n=xv(e).toRgb(),i=xv(t).toRgb(),a={r:r*n.r+(1-r)*i.r,g:r*n.g+(1-r)*i.g,b:r*n.b+(1-r)*i.b};return xv(a).toRgbString()};hd.contrast=function(e,t,r){var n=xv(e);n.getAlpha()!==1&&(n=xv(hd.combine(e,RB)));var i=n.isDark()?t?n.lighten(t):RB:r?n.darken(r):irt;return i.toString()};hd.stroke=function(e,t){var r=xv(t);e.style({stroke:hd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};hd.fill=function(e,t){var r=xv(t);e.style({fill:hd.tinyRGB(r),"fill-opacity":r.getAlpha()})};hd.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r=0)))return e;if(a===3)n[a]>1&&(n[a]=1);else if(n[a]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return i?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var U1=Ae((Urr,ute)=>{"use strict";ute.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n3=Ae(fte=>{"use strict";fte.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var pte=Ae(bv=>{"use strict";var FB=_u(),cte=cd(),hte=vu().extendFlat,nrt=zf(),art=sb(),ort=Pl(),srt=U1().DESELECTDIM,a3=kM(),dte=n3().counter,lrt=r3().modHalf,dm=yp().isArrayOrTypedArray,V1=yp().isTypedArraySpec,H1=yp().decodeTypedArraySpec;bv.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dm(e)?e:V1(e)?H1(e):r)}},enumerated:{coerceFunction:function(e,t,r,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,n=0;nn.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}V1(e)&&(e=H1(e)),e%1||!FB(e)||n.min!==void 0&&en.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,n){if(typeof e!="string"){var i=typeof e=="number";n.strict===!0||!i?t.set(r):t.set(String(e))}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),cte(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return cte(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(art.get(e,r))}},angle:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),e==="auto"?t.set("auto"):FB(e)?t.set(lrt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||dte(r);if(typeof e=="string"&&i.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!dte(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a{"use strict";var vte={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},yte={};function mte(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),mte(n,t[r]))}}mte(vte,yte);gte.exports={configAttributes:vte,dfltConfig:yte}});var BB=Ae((Wrr,_te)=>{"use strict";var qB=Nl(),urt=_u(),DM=[];_te.exports=function(e,t){if(DM.indexOf(e)!==-1)return;DM.push(e);var r=1e3;urt(t)?r=t:t==="long"&&(r=3e3);var n=qB.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(DM);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var u=DM.indexOf(s);u!==-1&&DM.splice(u,1),qB.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=qB.select(this);s.append("button").classed("notifier-close",!0).html("×").on("click",function(){s.transition().call(a)});for(var u=s.append("p"),l=o.split(//g),f=0;f{"use strict";var o3=ub().dfltConfig,OB=BB(),NB=xte.exports={};NB.log=function(){var e;if(o3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};NB.warn=function(){var e;if(o3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};NB.error=function(){var e;if(o3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var gL=Ae((Zrr,bte)=>{"use strict";bte.exports=function(){}});var UB=Ae((Xrr,wte)=>{"use strict";wte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{Tte.exports=frt;function frt(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Mte=Ae((Krr,Ste)=>{Ste.exports=crt;function crt(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var kte=Ae((Jrr,Ete)=>{Ete.exports=hrt;function hrt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var VB=Ae(($rr,Cte)=>{Cte.exports=drt;function drt(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var zte=Ae((Qrr,Lte)=>{Lte.exports=prt;function prt(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var Ite=Ae((eir,Pte)=>{Pte.exports=vrt;function vrt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],u=t[6],l=t[7],f=t[8],c=t[9],h=t[10],d=t[11],p=t[12],x=t[13],b=t[14],v=t[15],k=r*s-n*o,E=r*u-i*o,A=r*l-a*o,L=n*u-i*s,_=n*l-a*s,C=i*l-a*u,M=f*x-c*p,y=f*b-h*p,z=f*v-d*p,T=c*b-h*x,F=c*v-d*x,q=h*v-d*b,U=k*q-E*F+A*T+L*z-_*y+C*M;return U?(U=1/U,e[0]=(s*q-u*F+l*T)*U,e[1]=(i*F-n*q-a*T)*U,e[2]=(x*C-b*_+v*L)*U,e[3]=(h*_-c*C-d*L)*U,e[4]=(u*z-o*q-l*y)*U,e[5]=(r*q-i*z+a*y)*U,e[6]=(b*A-p*C-v*E)*U,e[7]=(f*C-h*A+d*E)*U,e[8]=(o*F-s*z+l*M)*U,e[9]=(n*z-r*F-a*M)*U,e[10]=(p*_-x*A+v*k)*U,e[11]=(c*A-f*_-d*k)*U,e[12]=(s*y-o*T-u*M)*U,e[13]=(r*T-n*y+i*M)*U,e[14]=(x*E-p*L-b*k)*U,e[15]=(f*L-c*E+h*k)*U,e):null}});var Rte=Ae((tir,Dte)=>{Dte.exports=yrt;function yrt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],u=t[6],l=t[7],f=t[8],c=t[9],h=t[10],d=t[11],p=t[12],x=t[13],b=t[14],v=t[15];return e[0]=s*(h*v-d*b)-c*(u*v-l*b)+x*(u*d-l*h),e[1]=-(n*(h*v-d*b)-c*(i*v-a*b)+x*(i*d-a*h)),e[2]=n*(u*v-l*b)-s*(i*v-a*b)+x*(i*l-a*u),e[3]=-(n*(u*d-l*h)-s*(i*d-a*h)+c*(i*l-a*u)),e[4]=-(o*(h*v-d*b)-f*(u*v-l*b)+p*(u*d-l*h)),e[5]=r*(h*v-d*b)-f*(i*v-a*b)+p*(i*d-a*h),e[6]=-(r*(u*v-l*b)-o*(i*v-a*b)+p*(i*l-a*u)),e[7]=r*(u*d-l*h)-o*(i*d-a*h)+f*(i*l-a*u),e[8]=o*(c*v-d*x)-f*(s*v-l*x)+p*(s*d-l*c),e[9]=-(r*(c*v-d*x)-f*(n*v-a*x)+p*(n*d-a*c)),e[10]=r*(s*v-l*x)-o*(n*v-a*x)+p*(n*l-a*s),e[11]=-(r*(s*d-l*c)-o*(n*d-a*c)+f*(n*l-a*s)),e[12]=-(o*(c*b-h*x)-f*(s*b-u*x)+p*(s*h-u*c)),e[13]=r*(c*b-h*x)-f*(n*b-i*x)+p*(n*h-i*c),e[14]=-(r*(s*b-u*x)-o*(n*b-i*x)+p*(n*u-i*s)),e[15]=r*(s*h-u*c)-o*(n*h-i*c)+f*(n*u-i*s),e}});var qte=Ae((rir,Fte)=>{Fte.exports=mrt;function mrt(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],u=e[7],l=e[8],f=e[9],c=e[10],h=e[11],d=e[12],p=e[13],x=e[14],b=e[15],v=t*o-r*a,k=t*s-n*a,E=t*u-i*a,A=r*s-n*o,L=r*u-i*o,_=n*u-i*s,C=l*p-f*d,M=l*x-c*d,y=l*b-h*d,z=f*x-c*p,T=f*b-h*p,F=c*b-h*x;return v*F-k*T+E*z+A*y-L*M+_*C}});var Ote=Ae((iir,Bte)=>{Bte.exports=grt;function grt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],u=t[5],l=t[6],f=t[7],c=t[8],h=t[9],d=t[10],p=t[11],x=t[12],b=t[13],v=t[14],k=t[15],E=r[0],A=r[1],L=r[2],_=r[3];return e[0]=E*n+A*s+L*c+_*x,e[1]=E*i+A*u+L*h+_*b,e[2]=E*a+A*l+L*d+_*v,e[3]=E*o+A*f+L*p+_*k,E=r[4],A=r[5],L=r[6],_=r[7],e[4]=E*n+A*s+L*c+_*x,e[5]=E*i+A*u+L*h+_*b,e[6]=E*a+A*l+L*d+_*v,e[7]=E*o+A*f+L*p+_*k,E=r[8],A=r[9],L=r[10],_=r[11],e[8]=E*n+A*s+L*c+_*x,e[9]=E*i+A*u+L*h+_*b,e[10]=E*a+A*l+L*d+_*v,e[11]=E*o+A*f+L*p+_*k,E=r[12],A=r[13],L=r[14],_=r[15],e[12]=E*n+A*s+L*c+_*x,e[13]=E*i+A*u+L*h+_*b,e[14]=E*a+A*l+L*d+_*v,e[15]=E*o+A*f+L*p+_*k,e}});var Ute=Ae((nir,Nte)=>{Nte.exports=_rt;function _rt(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,u,l,f,c,h,d,p,x,b,v;return t===e?(e[12]=t[0]*n+t[4]*i+t[8]*a+t[12],e[13]=t[1]*n+t[5]*i+t[9]*a+t[13],e[14]=t[2]*n+t[6]*i+t[10]*a+t[14],e[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],u=t[2],l=t[3],f=t[4],c=t[5],h=t[6],d=t[7],p=t[8],x=t[9],b=t[10],v=t[11],e[0]=o,e[1]=s,e[2]=u,e[3]=l,e[4]=f,e[5]=c,e[6]=h,e[7]=d,e[8]=p,e[9]=x,e[10]=b,e[11]=v,e[12]=o*n+f*i+p*a+t[12],e[13]=s*n+c*i+x*a+t[13],e[14]=u*n+h*i+b*a+t[14],e[15]=l*n+d*i+v*a+t[15]),e}});var Hte=Ae((air,Vte)=>{Vte.exports=xrt;function xrt(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Wte=Ae((oir,Gte)=>{Gte.exports=brt;function brt(e,t,r,n){var i=n[0],a=n[1],o=n[2],s=Math.sqrt(i*i+a*a+o*o),u,l,f,c,h,d,p,x,b,v,k,E,A,L,_,C,M,y,z,T,F,q,U,H;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,u=Math.sin(r),l=Math.cos(r),f=1-l,c=t[0],h=t[1],d=t[2],p=t[3],x=t[4],b=t[5],v=t[6],k=t[7],E=t[8],A=t[9],L=t[10],_=t[11],C=i*i*f+l,M=a*i*f+o*u,y=o*i*f-a*u,z=i*a*f-o*u,T=a*a*f+l,F=o*a*f+i*u,q=i*o*f+a*u,U=a*o*f-i*u,H=o*o*f+l,e[0]=c*C+x*M+E*y,e[1]=h*C+b*M+A*y,e[2]=d*C+v*M+L*y,e[3]=p*C+k*M+_*y,e[4]=c*z+x*T+E*F,e[5]=h*z+b*T+A*F,e[6]=d*z+v*T+L*F,e[7]=p*z+k*T+_*F,e[8]=c*q+x*U+E*H,e[9]=h*q+b*U+A*H,e[10]=d*q+v*U+L*H,e[11]=p*q+k*U+_*H,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Zte=Ae((sir,jte)=>{jte.exports=wrt;function wrt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],u=t[7],l=t[8],f=t[9],c=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+l*n,e[5]=o*i+f*n,e[6]=s*i+c*n,e[7]=u*i+h*n,e[8]=l*i-a*n,e[9]=f*i-o*n,e[10]=c*i-s*n,e[11]=h*i-u*n,e}});var Yte=Ae((lir,Xte)=>{Xte.exports=Trt;function Trt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],u=t[3],l=t[8],f=t[9],c=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-l*n,e[1]=o*i-f*n,e[2]=s*i-c*n,e[3]=u*i-h*n,e[8]=a*n+l*i,e[9]=o*n+f*i,e[10]=s*n+c*i,e[11]=u*n+h*i,e}});var Jte=Ae((uir,Kte)=>{Kte.exports=Art;function Art(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],u=t[3],l=t[4],f=t[5],c=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+l*n,e[1]=o*i+f*n,e[2]=s*i+c*n,e[3]=u*i+h*n,e[4]=l*i-a*n,e[5]=f*i-o*n,e[6]=c*i-s*n,e[7]=h*i-u*n,e}});var Qte=Ae((fir,$te)=>{$te.exports=Srt;function Srt(e,t,r){var n,i,a,o=r[0],s=r[1],u=r[2],l=Math.sqrt(o*o+s*s+u*u);return Math.abs(l)<1e-6?null:(l=1/l,o*=l,s*=l,u*=l,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+u*n,e[2]=u*o*a-s*n,e[3]=0,e[4]=o*s*a-u*n,e[5]=s*s*a+i,e[6]=u*s*a+o*n,e[7]=0,e[8]=o*u*a+s*n,e[9]=s*u*a-o*n,e[10]=u*u*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var tre=Ae((cir,ere)=>{ere.exports=Mrt;function Mrt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,u=i+i,l=a+a,f=n*s,c=n*u,h=n*l,d=i*u,p=i*l,x=a*l,b=o*s,v=o*u,k=o*l;return e[0]=1-(d+x),e[1]=c+k,e[2]=h-v,e[3]=0,e[4]=c-k,e[5]=1-(f+x),e[6]=p+b,e[7]=0,e[8]=h+v,e[9]=p-b,e[10]=1-(f+d),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var ire=Ae((hir,rre)=>{rre.exports=Ert;function Ert(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var are=Ae((dir,nre)=>{nre.exports=krt;function krt(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var sre=Ae((pir,ore)=>{ore.exports=Crt;function Crt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ure=Ae((vir,lre)=>{lre.exports=Lrt;function Lrt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var cre=Ae((yir,fre)=>{fre.exports=zrt;function zrt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var HB=Ae((mir,hre)=>{hre.exports=Prt;function Prt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,u=i+i,l=r*o,f=n*o,c=n*s,h=i*o,d=i*s,p=i*u,x=a*o,b=a*s,v=a*u;return e[0]=1-c-p,e[1]=f+v,e[2]=h-b,e[3]=0,e[4]=f-v,e[5]=1-l-p,e[6]=d+x,e[7]=0,e[8]=h+b,e[9]=d-x,e[10]=1-l-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var pre=Ae((gir,dre)=>{dre.exports=Irt;function Irt(e,t,r,n,i,a,o){var s=1/(r-t),u=1/(i-n),l=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*u,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*u,e[10]=(o+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*l,e[15]=0,e}});var yre=Ae((_ir,vre)=>{vre.exports=Drt;function Drt(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var gre=Ae((xir,mre)=>{mre.exports=Rrt;function Rrt(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),u=2/(o+s),l=2/(i+a);return e[0]=u,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=l,e[6]=0,e[7]=0,e[8]=-((o-s)*u*.5),e[9]=(i-a)*l*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var xre=Ae((bir,_re)=>{_re.exports=Frt;function Frt(e,t,r,n,i,a,o){var s=1/(t-r),u=1/(n-i),l=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*u,e[14]=(o+a)*l,e[15]=1,e}});var wre=Ae((wir,bre)=>{var qrt=VB();bre.exports=Brt;function Brt(e,t,r,n){var i,a,o,s,u,l,f,c,h,d,p=t[0],x=t[1],b=t[2],v=n[0],k=n[1],E=n[2],A=r[0],L=r[1],_=r[2];return Math.abs(p-A)<1e-6&&Math.abs(x-L)<1e-6&&Math.abs(b-_)<1e-6?qrt(e):(f=p-A,c=x-L,h=b-_,d=1/Math.sqrt(f*f+c*c+h*h),f*=d,c*=d,h*=d,i=k*h-E*c,a=E*f-v*h,o=v*c-k*f,d=Math.sqrt(i*i+a*a+o*o),d?(d=1/d,i*=d,a*=d,o*=d):(i=0,a=0,o=0),s=c*o-h*a,u=h*i-f*o,l=f*a-c*i,d=Math.sqrt(s*s+u*u+l*l),d?(d=1/d,s*=d,u*=d,l*=d):(s=0,u=0,l=0),e[0]=i,e[1]=s,e[2]=f,e[3]=0,e[4]=a,e[5]=u,e[6]=c,e[7]=0,e[8]=o,e[9]=l,e[10]=h,e[11]=0,e[12]=-(i*p+a*x+o*b),e[13]=-(s*p+u*x+l*b),e[14]=-(f*p+c*x+h*b),e[15]=1,e)}});var Are=Ae((Tir,Tre)=>{Tre.exports=Ort;function Ort(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var GB=Ae((Air,Sre)=>{Sre.exports={create:Ate(),clone:Mte(),copy:kte(),identity:VB(),transpose:zte(),invert:Ite(),adjoint:Rte(),determinant:qte(),multiply:Ote(),translate:Ute(),scale:Hte(),rotate:Wte(),rotateX:Zte(),rotateY:Yte(),rotateZ:Jte(),fromRotation:Qte(),fromRotationTranslation:tre(),fromScaling:ire(),fromTranslation:are(),fromXRotation:sre(),fromYRotation:ure(),fromZRotation:cre(),fromQuat:HB(),frustum:pre(),perspective:yre(),perspectiveFromFieldOfView:gre(),ortho:xre(),lookAt:wre(),str:Are()}});var _L=Ae(xh=>{"use strict";var Nrt=GB();xh.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var Urt=Nl(),Mre=G1(),Vrt=_L(),Hrt=GB();function Grt(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function Wrt(e){var t=Urt.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function Ere(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function jrt(e,t){kre("global",e,t)}function kre(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);if(!(i&&i.matches(".no-inline-styles"))){i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a?a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):Mre.warn("addStyleRule failed"):Mre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function Zrt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&Ere(r)}function Xrt(e,t,r,n,i,a){var o=n.split(":"),s=i.split(":"),u="data-btn-style-event-added";a||(a=document),a.querySelectorAll(e).forEach(function(l){l.getAttribute(u)||(l.addEventListener("mouseenter",function(){var f=this.querySelector(r);f&&(f.style[o[0]]=o[1])}),l.addEventListener("mouseleave",function(){var f=this.querySelector(r);f&&(t&&this.matches(t)?f.style[o[0]]=o[1]:f.style[s[0]]=s[1])}),l.setAttribute(u,!0))})}function Yrt(e){var t=Lre(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=Cre(n);if(i){var a=Vrt.convertCssMatrix(i);r=Hrt.multiply(r,r,a)}}),r}function Cre(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function Lre(e){for(var t=[];Krt(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function Krt(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function Jrt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}zre.exports={getGraphDiv:Grt,isPlotDiv:Wrt,removeElement:Ere,addStyleRule:jrt,addRelatedStyleRule:kre,deleteRelatedStyleRule:Zrt,setStyleOnHover:Xrt,getFullTransformMatrix:Yrt,getElementTransformMatrix:Cre,getElementAndAncestors:Lre,equalDomRects:Jrt}});var FM=Ae((Eir,Pre)=>{"use strict";Pre.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var _c=Ae((kir,Ore)=>{"use strict";var Dre=vu().extendFlat,$rt=yg(),Rre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Fre={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},Qrt=Rre.flags.slice().concat(["fullReplot"]),eit=Fre.flags.slice().concat("layoutReplot");Ore.exports={traces:Rre,layout:Fre,traceFlags:function(){return Ire(Qrt)},layoutFlags:function(){return Ire(eit)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";WB.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};WB.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var jB=Ae((Lir,Nre)=>{"use strict";Nre.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Du=Ae(xL=>{"use strict";var Ure=jB(),zir=Ure.FORMAT_LINK,Pir=Ure.DATE_FORMAT_LINK;function ZB(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var n=[],i=0;i{"use strict";function W1(e,t){return t?t.d2l(e):e}function Vre(e,t){return t?t.l2d(e):e}function tit(e){return e.x0}function rit(e){return e.x1}function iit(e){return e.y0}function nit(e){return e.y1}function Hre(e){return e.x0shift||0}function Gre(e){return e.x1shift||0}function Wre(e){return e.y0shift||0}function jre(e){return e.y1shift||0}function bL(e,t){return W1(e.x1,t)+Gre(e)-W1(e.x0,t)-Hre(e)}function wL(e,t,r){return W1(e.y1,r)+jre(e)-W1(e.y0,r)-Wre(e)}function ait(e,t){return Math.abs(bL(e,t))}function oit(e,t,r){return Math.abs(wL(e,t,r))}function sit(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(bL(e,t),2)+Math.pow(wL(e,t,r),2))}function lit(e,t){return Vre((W1(e.x1,t)+Gre(e)+W1(e.x0,t)+Hre(e))/2,t)}function uit(e,t,r){return Vre((W1(e.y1,r)+jre(e)+W1(e.y0,r)+Wre(e))/2,r)}function fit(e,t,r){return e.type!=="line"?void 0:wL(e,t,r)/bL(e,t)}Zre.exports={x0:tit,x1:rit,y0:iit,y1:nit,slope:fit,dx:bL,dy:wL,width:ait,height:oit,length:sit,xcenter:lit,ycenter:uit}});var Kre=Ae((Rir,Yre)=>{"use strict";var cit=_c().overrideAll,fb=zf(),Xre=uc(),hit=Id().dash,j1=vu().extendFlat,dit=Du().shapeTexttemplateAttrs,pit=TL();Yre.exports=cit({newshape:{visible:j1({},fb.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:j1({},fb.legend,{}),legendgroup:j1({},fb.legendgroup,{}),legendgrouptitle:{text:j1({},fb.legendgrouptitle.text,{}),font:Xre({})},legendrank:j1({},fb.legendrank,{}),legendwidth:j1({},fb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:j1({},hit,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:j1({},fb.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:dit({newshape:!0},{keys:Object.keys(pit)}),font:Xre({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var $re=Ae((Fir,Jre)=>{"use strict";var vit=Id().dash,yit=vu().extendFlat;Jre.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:yit({},vit,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var AL=Ae((qir,Qre)=>{"use strict";Qre.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var s3=Ae((Bir,iie)=>{"use strict";var XB=uc(),mit=FM(),SL=Ih(),eie=Kre(),tie=$re(),git=AL(),rie=vu().extendFlat,ML=XB({editType:"calc"});ML.family.dflt='"Open Sans", verdana, arial, sans-serif';ML.size.dflt=12;ML.color.dflt=SL.defaultLine;iie.exports={font:ML,title:{text:{valType:"string",editType:"layoutstyle"},font:XB({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:XB({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:rie(git({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:SL.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:SL.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:SL.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:eie.newshape,activeshape:eie.activeshape,newselection:tie.newselection,activeselection:tie.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:rie({},mit.transition,{editType:"none"})}});var nie=Bf(()=>{});var _it={};var aie=Bf(()=>{nie()});var Ul=Ae(df=>{"use strict";var l3=G1(),oie=gL(),sie=UB(),xit=yg(),bit=RM().addStyleRule,lie=vu(),wit=zf(),Tit=s3(),Ait=lie.extendFlat,YB=lie.extendDeepAll;df.modules={};df.allCategories={};df.allTypes=[];df.subplotsRegistry={};df.componentsRegistry={};df.layoutArrayContainers=[];df.layoutArrayRegexes=[];df.traceLayoutAttributes={};df.localeRegistry={};df.apiMethodRegistry={};df.collectableSubplotTypes=null;df.register=function(t){if(df.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r{"use strict";var Lit=e3().timeFormat,_ie=_u(),KB=G1(),X1=r3().mod,c3=ju(),_0=c3.BADNUM,wv=c3.ONEDAY,qM=c3.ONEHOUR,Z1=c3.ONEMIN,f3=c3.ONESEC,BM=c3.EPOCHJD,mg=Ul(),die=e3().utcFormat,zit=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Pit=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,pie=new Date().getFullYear()-70;function gg(e){return e&&mg.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}bh.dateTick0=function(e,t){var r=Iit(e,!!t);if(t<2)return r;var n=bh.dateTime2ms(r,e);return n+=wv*(t-1),bh.ms2DateTime(n,0,e)};function Iit(e,t){return gg(e)?t?mg.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:mg.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}bh.dfltRange=function(e){return gg(e)?mg.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};bh.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var kL,CL;bh.dateTime2ms=function(e,t){if(bh.isJSDate(e)){var r=e.getTimezoneOffset()*Z1,n=(e.getUTCMinutes()-e.getMinutes())*Z1+(e.getUTCSeconds()-e.getSeconds())*f3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*Z1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=kL&&e<=CL?e:_0}if(typeof e!="string"&&typeof e!="number")return _0;e=String(e);var a=gg(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.substr(1),t="");var s=a&&t.substr(0,7)==="chinese",u=e.match(s?Pit:zit);if(!u)return _0;var l=u[1],f=u[3]||"1",c=Number(u[5]||1),h=Number(u[7]||0),d=Number(u[9]||0),p=Number(u[11]||0);if(a){if(l.length===2)return _0;l=Number(l);var x;try{var b=mg.getComponentMethod("calendars","getCal")(t);if(s){var v=f.charAt(f.length-1)==="i";f=parseInt(f,10),x=b.newDate(l,b.toMonthIndex(l,f,v),c)}else x=b.newDate(l,Number(f),c)}catch(E){return _0}return x?(x.toJD()-BM)*wv+h*qM+d*Z1+p*f3:_0}l.length===2?l=(Number(l)+2e3-pie)%100+pie:l=Number(l),f-=1;var k=new Date(Date.UTC(2e3,f,c,h,d));return k.setUTCFullYear(l),k.getUTCMonth()!==f||k.getUTCDate()!==c?_0:k.getTime()+p*f3};kL=bh.MIN_MS=bh.dateTime2ms("-9999");CL=bh.MAX_MS=bh.dateTime2ms("9999-12-31 23:59:59.9999");bh.isDateTime=function(e,t){return bh.dateTime2ms(e,t)!==_0};function u3(e,t){return String(e+Math.pow(10,t)).substr(1)}var EL=90*wv,vie=3*qM,yie=5*Z1;bh.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=kL&&e<=CL))return _0;t||(t=0);var n=Math.floor(X1(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,u,l,f;if(gg(r)){var c=Math.floor(i/wv)+BM,h=Math.floor(X1(e,wv));try{a=mg.getComponentMethod("calendars","getCal")(r).fromJD(c).formatDate("yyyy-mm-dd")}catch(d){a=die("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t=kL+wv&&e<=CL-wv))return _0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=Lit("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return xie(n,i,a,o,s)};function xie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+u3(t,2)+":"+u3(r,2),(n||i)&&(e+=":"+u3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+u3(i,a)}return e}bh.cleanDate=function(e,t,r){if(e===_0)return t;if(bh.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(gg(r))return KB.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=bh.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!bh.isDateTime(e,r))return KB.error("unrecognized date",e),t;return e};var Dit=/%\d?f/g,Rit=/%h/g,Fit={1:"1",2:"1",3:"2",4:"2"};function mie(e,t,r,n){e=e.replace(Dit,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(Rit,function(){return Fit[r("%q")(i)]}),gg(n))try{e=mg.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var qit=[59,59.9,59.99,59.999,59.9999];function Bit(e,t){var r=X1(e+.05,wv),n=u3(Math.floor(r/qM),2)+":"+u3(X1(Math.floor(r/Z1),60),2);if(t!=="M"){_ie(t)||(t=0);var i=Math.min(X1(e/f3,60),qit[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}bh.formatDate=function(e,t,r,n,i,a){if(i=gg(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` diff --git a/dist/plotly-with-meta.js b/dist/plotly-with-meta.js index 97c87da1b7d..861985ed04f 100644 --- a/dist/plotly-with-meta.js +++ b/dist/plotly-with-meta.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.3 +* plotly.js v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -69,7 +69,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); @@ -10179,9 +10179,15 @@ var Plotly = (() => { editType, description: [ "HTML font family - the typeface that will be applied by the web browser.", - "The web browser can only apply a font if it is available on the system where", - "it runs. Provide multiple font families, separated by commas, to indicate", - "the order in which to apply fonts if they aren't available." + "The web browser will only be able to apply a font if it is available on the system", + "which it operates. Provide multiple font families, separated by commas, to indicate", + "the preference in which to apply fonts if they aren't available on the system.", + "The Chart Studio Cloud (at https://chart-studio.plotly.com or on-premise) generates images on a server,", + "where only a select number of", + "fonts are installed and supported.", + "These include *Arial*, *Balto*, *Courier New*, *Droid Sans*, *Droid Serif*,", + "*Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*,", + "*PT Sans Narrow*, *Raleway*, *Times New Roman*." ].join(" ") }, size: { diff --git a/dist/plotly.js b/dist/plotly.js index 96d9dc42218..96fc5191ef3 100644 --- a/dist/plotly.js +++ b/dist/plotly.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.3 +* plotly.js v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -69,7 +69,7 @@ var Plotly = (() => { var require_version = __commonJS({ "src/version.js"(exports) { "use strict"; - exports.version = "3.0.3"; + exports.version = "3.0.2"; } }); diff --git a/dist/plotly.min.js b/dist/plotly.min.js index dc9080ac776..d96b693b179 100644 --- a/dist/plotly.min.js +++ b/dist/plotly.min.js @@ -1,5 +1,5 @@ /** -* plotly.js v3.0.3 +* plotly.js v3.0.2 * Copyright 2012-2025, Plotly, Inc. * All rights reserved. * Licensed under the MIT license @@ -12,7 +12,7 @@ root.moduleName = factory(); } } (typeof self !== "undefined" ? self : this, () => { -"use strict";var Plotly=(()=>{var Fet=Object.create;var ES=Object.defineProperty,qet=Object.defineProperties,Oet=Object.getOwnPropertyDescriptor,Bet=Object.getOwnPropertyDescriptors,Net=Object.getOwnPropertyNames,ree=Object.getOwnPropertySymbols,Uet=Object.getPrototypeOf,nee=Object.prototype.hasOwnProperty,Vet=Object.prototype.propertyIsEnumerable;var iee=(e,t,r)=>t in e?ES(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,aee=(e,t)=>{for(var r in t||(t={}))nee.call(t,r)&&iee(e,r,t[r]);if(ree)for(var r of ree(t))Vet.call(t,r)&&iee(e,r,t[r]);return e},oee=(e,t)=>qet(e,Bet(t));var Ll=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),see=(e,t)=>{for(var r in t)ES(e,r,{get:t[r],enumerable:!0})},lee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Net(t))!nee.call(e,i)&&i!==r&&ES(e,i,{get:()=>t[i],enumerable:!(n=Oet(t,i))||n.enumerable});return e};var Het=(e,t,r)=>(r=e!=null?Fet(Uet(e)):{},lee(t||!e||!e.__esModule?ES(r,"default",{value:e,enumerable:!0}):r,e)),B1=e=>lee(ES({},"__esModule",{value:!0}),e);var r6=ye(uee=>{"use strict";uee.version="3.0.3"});var fee=ye((cee,i6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof i6!="undefined"&&i6.exports&&(i6.exports=r[t])})("Promise",typeof window!="undefined"?window:cee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(E){return setImmediate(E)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(E,k,A,L){return Object.defineProperty(E,k,{value:A,writable:!0,configurable:L!==!1})}}catch(p){t=function(k,A,L){return k[A]=L,k}}n=function(){var E,k,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),k?k.next=A:E=A,k=A,A=void 0},drain:function(){var C=E;for(E=k=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,E){n.add(p,E),r||(r=a(n.drain))}function s(p){var E,k=typeof p;return p!=null&&(k=="object"||k=="function")&&(E=p.then),typeof E=="function"?E:!1}function l(){for(var p=0;p0&&o(l,k))}catch(A){f.call(new d(k),A)}}}function f(p){var E=this;E.triggered||(E.triggered=!0,E.def&&(E=E.def),E.msg=p,E.state=2,E.chain.length>0&&o(l,E))}function h(p,E,k,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(Z){return t.call(Z)},n=self.document;function i(Z){return Z&&(Z.ownerDocument||Z.document||Z).documentElement}function a(Z){return Z&&(Z.ownerDocument&&Z.ownerDocument.defaultView||Z.document&&Z||Z.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(Z){r=function(oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=oe[we];return Be}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(Z){var o=this.Element.prototype,s=o.setAttribute,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(oe,we){s.call(this,oe,we+"")},o.setAttributeNS=function(oe,we,Be){l.call(this,oe,we,Be+"")},u.setProperty=function(oe,we,Be){c.call(this,oe,we+"",Be)}}e.ascending=f;function f(Z,oe){return Zoe?1:Z>=oe?0:NaN}e.descending=function(Z,oe){return oeZ?1:oe>=Z?0:NaN},e.min=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}return Ue},e.max=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}return Ue},e.extent=function(Z,oe){var we=-1,Be=Z.length,Ue,We,wt;if(arguments.length===1){for(;++we=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt1)return wt/(zt-1)},e.deviation=function(){var Z=e.variance.apply(this,arguments);return Z&&Math.sqrt(Z)};function v(Z){return{left:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)<0?Be=We+1:Ue=We}return Be},right:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)>0?Ue=We:Be=We+1}return Be}}}var x=v(f);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(Z){return v(Z.length===1?function(oe,we){return f(Z(oe),we)}:Z)},e.shuffle=function(Z,oe,we){(Be=arguments.length)<3&&(we=Z.length,Be<2&&(oe=0));for(var Be=we-oe,Ue,We;Be;)We=Math.random()*Be--|0,Ue=Z[Be+oe],Z[Be+oe]=Z[We+oe],Z[We+oe]=Ue;return Z},e.permute=function(Z,oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=Z[oe[we]];return Be},e.pairs=function(Z){for(var oe=0,we=Z.length-1,Be,Ue=Z[0],We=new Array(we<0?0:we);oe=0;)for(wt=Z[oe],we=wt.length;--we>=0;)We[--Ue]=wt[we];return We};var p=Math.abs;e.range=function(Z,oe,we){if(arguments.length<3&&(we=1,arguments.length<2&&(oe=Z,Z=0)),(oe-Z)/we===1/0)throw new Error("infinite range");var Be=[],Ue=E(p(we)),We=-1,wt;if(Z*=Ue,oe*=Ue,we*=Ue,we<0)for(;(wt=Z+we*++We)>oe;)Be.push(wt/Ue);else for(;(wt=Z+we*++We)=oe.length)return Ue?Ue.call(Z,zt):Be?zt.sort(Be):zt;for(var lr=-1,Dr=zt.length,Ir=oe[or++],oi,ui,qr,Kr=new A,ii;++lr=oe.length)return tt;var or=[],lr=we[zt++];return tt.forEach(function(Dr,Ir){or.push({key:Dr,values:wt(Ir,zt)})}),lr?or.sort(function(Dr,Ir){return lr(Dr.key,Ir.key)}):or}return Z.map=function(tt,zt){return We(zt,tt,0)},Z.entries=function(tt){return wt(We(e.map,tt,0),0)},Z.key=function(tt){return oe.push(tt),Z},Z.sortKeys=function(tt){return we[oe.length-1]=tt,Z},Z.sortValues=function(tt){return Be=tt,Z},Z.rollup=function(tt){return Ue=tt,Z},Z},e.set=function(Z){var oe=new V;if(Z)for(var we=0,Be=Z.length;we=0&&(Be=Z.slice(we+1),Z=Z.slice(0,we)),Z)return arguments.length<2?this[Z].on(Be):this[Z].on(Be,oe);if(arguments.length===2){if(oe==null)for(Z in this)this.hasOwnProperty(Z)&&this[Z].on(Be,null);return this}};function ae(Z){var oe=[],we=new A;function Be(){for(var Ue=oe,We=-1,wt=Ue.length,tt;++We=0&&(we=Z.slice(0,oe))!=="xmlns"&&(Z=Z.slice(oe+1)),Ge.hasOwnProperty(we)?{space:Ge[we],local:Z}:Z}},Ce.attr=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node();return Z=e.ns.qualify(Z),Z.local?we.getAttributeNS(Z.space,Z.local):we.getAttribute(Z)}for(oe in Z)this.each(nt(oe,Z[oe]));return this}return this.each(nt(Z,oe))};function nt(Z,oe){Z=e.ns.qualify(Z);function we(){this.removeAttribute(Z)}function Be(){this.removeAttributeNS(Z.space,Z.local)}function Ue(){this.setAttribute(Z,oe)}function We(){this.setAttributeNS(Z.space,Z.local,oe)}function wt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttribute(Z):this.setAttribute(Z,zt)}function tt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttributeNS(Z.space,Z.local):this.setAttributeNS(Z.space,Z.local,zt)}return oe==null?Z.local?Be:we:typeof oe=="function"?Z.local?tt:wt:Z.local?We:Ue}function ct(Z){return Z.trim().replace(/\s+/g," ")}Ce.classed=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node(),Be=(Z=rt(Z)).length,Ue=-1;if(oe=we.classList){for(;++Ue=0;)(We=we[Be])&&(Ue&&Ue!==We.nextSibling&&Ue.parentNode.insertBefore(We,Ue),Ue=We);return this},Ce.sort=function(Z){Z=xt.apply(this,arguments);for(var oe=-1,we=this.length;++oe=oe&&(oe=Ue+1);!(zt=wt[oe])&&++oe0&&(Z=Z.slice(0,Ue));var wt=Ht.get(Z);wt&&(Z=wt,We=fr);function tt(){var lr=this[Be];lr&&(this.removeEventListener(Z,lr,lr.$),delete this[Be])}function zt(){var lr=We(oe,r(arguments));tt.call(this),this.addEventListener(Z,this[Be]=lr,lr.$=we),lr._=oe}function or(){var lr=new RegExp("^__on([^.]+)"+e.requote(Z)+"$"),Dr;for(var Ir in this)if(Dr=Ir.match(lr)){var oi=this[Ir];this.removeEventListener(Dr[1],oi,oi.$),delete this[Ir]}}return Ue?oe?zt:tt:oe?W:or}var Ht=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Ht.forEach(function(Z){"on"+Z in n&&Ht.remove(Z)});function $t(Z,oe){return function(we){var Be=e.event;e.event=we,oe[0]=this.__data__;try{Z.apply(this,oe)}finally{e.event=Be}}}function fr(Z,oe){var we=$t(Z,oe);return function(Be){var Ue=this,We=Be.relatedTarget;(!We||We!==Ue&&!(We.compareDocumentPosition(Ue)&8))&&we.call(Ue,Be)}}var _r,Br=0;function Or(Z){var oe=".dragsuppress-"+ ++Br,we="click"+oe,Be=e.select(a(Z)).on("touchmove"+oe,_e).on("dragstart"+oe,_e).on("selectstart"+oe,_e);if(_r==null&&(_r="onselectstart"in Z?!1:G(Z.style,"userSelect")),_r){var Ue=i(Z).style,We=Ue[_r];Ue[_r]="none"}return function(wt){if(Be.on(oe,null),_r&&(Ue[_r]=We),wt){var tt=function(){Be.on(we,null)};Be.on(we,function(){_e(),tt()},!0),setTimeout(tt,0)}}}e.mouse=function(Z){return ut(Z,Me())};var Nr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ut(Z,oe){oe.changedTouches&&(oe=oe.changedTouches[0]);var we=Z.ownerSVGElement||Z;if(we.createSVGPoint){var Be=we.createSVGPoint();if(Nr<0){var Ue=a(Z);if(Ue.scrollX||Ue.scrollY){we=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var We=we[0][0].getScreenCTM();Nr=!(We.f||We.e),we.remove()}}return Nr?(Be.x=oe.pageX,Be.y=oe.pageY):(Be.x=oe.clientX,Be.y=oe.clientY),Be=Be.matrixTransform(Z.getScreenCTM().inverse()),[Be.x,Be.y]}var wt=Z.getBoundingClientRect();return[oe.clientX-wt.left-Z.clientLeft,oe.clientY-wt.top-Z.clientTop]}e.touch=function(Z,oe,we){if(arguments.length<3&&(we=oe,oe=Me().changedTouches),oe){for(var Be=0,Ue=oe.length,We;Be0?1:Z<0?-1:0}function Vt(Z,oe,we){return(oe[0]-Z[0])*(we[1]-Z[1])-(oe[1]-Z[1])*(we[0]-Z[0])}function ar(Z){return Z>1?0:Z<-1?Xe:Math.acos(Z)}function Qr(Z){return Z>1?xe:Z<-1?-xe:Math.asin(Z)}function ai(Z){return((Z=Math.exp(Z))-1/Z)/2}function jr(Z){return((Z=Math.exp(Z))+1/Z)/2}function ri(Z){return((Z=Math.exp(2*Z))-1)/(Z+1)}function bi(Z){return(Z=Math.sin(Z/2))*Z}var nn=Math.SQRT2,Wi=2,Ni=4;e.interpolateZoom=function(Z,oe){var we=Z[0],Be=Z[1],Ue=Z[2],We=oe[0],wt=oe[1],tt=oe[2],zt=We-we,or=wt-Be,lr=zt*zt+or*or,Dr,Ir;if(lr0&&(pn=pn.transition().duration(wt)),pn.call(ci.event)}function ga(){Kr&&Kr.domain(qr.range().map(function(pn){return(pn-Z.x)/Z.k}).map(qr.invert)),vi&&vi.domain(ii.range().map(function(pn){return(pn-Z.y)/Z.k}).map(ii.invert))}function ya(pn){tt++||pn({type:"zoomstart"})}function so(pn){ga(),pn({type:"zoom",scale:Z.k,translate:[Z.x,Z.y]})}function wa(pn){--tt||(pn({type:"zoomend"}),we=null)}function io(){var pn=this,za=ui.of(pn,arguments),Lo=0,Fo=e.select(a(pn)).on(or,fu).on(lr,dl),js=Jr(e.mouse(pn)),xl=Or(pn);ea.call(pn),ya(za);function fu(){Lo=1,En(e.mouse(pn),js),so(za)}function dl(){Fo.on(or,null).on(lr,null),xl(Lo),wa(za)}}function Ss(){var pn=this,za=ui.of(pn,arguments),Lo={},Fo=0,js,xl=".zoom-"+e.event.changedTouches[0].identifier,fu="touchmove"+xl,dl="touchend"+xl,xc=[],At=e.select(pn),Er=Or(pn);wi(),ya(za),At.on(zt,null).on(Ir,wi);function Wr(){var Bi=e.touches(pn);return js=Z.k,Bi.forEach(function(cn){cn.identifier in Lo&&(Lo[cn.identifier]=Jr(cn))}),Bi}function wi(){var Bi=e.event.target;e.select(Bi).on(fu,Ui).on(dl,Oi),xc.push(Bi);for(var cn=e.event.changedTouches,On=0,Bn=cn.length;On1){var Rn=yn[0],Dn=yn[1],fn=Rn[0]-Dn[0],Ai=Rn[1]-Dn[1];Fo=fn*fn+Ai*Ai}}function Ui(){var Bi=e.touches(pn),cn,On,Bn,yn;ea.call(pn);for(var to=0,Rn=Bi.length;to1?1:oe,we=we<0?0:we>1?1:we,Ue=we<=.5?we*(1+oe):we+oe-we*oe,Be=2*we-Ue;function We(tt){return tt>360?tt-=360:tt<0&&(tt+=360),tt<60?Be+(Ue-Be)*tt/60:tt<180?Ue:tt<240?Be+(Ue-Be)*(240-tt)/60:Be}function wt(tt){return Math.round(We(tt)*255)}return new Fa(wt(Z+120),wt(Z),wt(Z-120))}e.hcl=Zt;function Zt(Z,oe,we){return this instanceof Zt?(this.h=+Z,this.c=+oe,void(this.l=+we)):arguments.length<2?Z instanceof Zt?new Zt(Z.h,Z.c,Z.l):Z instanceof Zr?Ki(Z.l,Z.a,Z.b):Ki((Z=xn((Z=e.rgb(Z)).r,Z.g,Z.b)).l,Z.a,Z.b):new Zt(Z,oe,we)}var yr=Zt.prototype=new Wn;yr.brighter=function(Z){return new Zt(this.h,this.c,Math.min(100,this.l+Vr*(arguments.length?Z:1)))},yr.darker=function(Z){return new Zt(this.h,this.c,Math.max(0,this.l-Vr*(arguments.length?Z:1)))},yr.rgb=function(){return Fr(this.h,this.c,this.l).rgb()};function Fr(Z,oe,we){return isNaN(Z)&&(Z=0),isNaN(oe)&&(oe=0),new Zr(we,Math.cos(Z*=Se)*oe,Math.sin(Z)*oe)}e.lab=Zr;function Zr(Z,oe,we){return this instanceof Zr?(this.l=+Z,this.a=+oe,void(this.b=+we)):arguments.length<2?Z instanceof Zr?new Zr(Z.l,Z.a,Z.b):Z instanceof Zt?Fr(Z.h,Z.c,Z.l):xn((Z=Fa(Z)).r,Z.g,Z.b):new Zr(Z,oe,we)}var Vr=18,gi=.95047,Si=1,Mi=1.08883,Pi=Zr.prototype=new Wn;Pi.brighter=function(Z){return new Zr(Math.min(100,this.l+Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.darker=function(Z){return new Zr(Math.max(0,this.l-Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.rgb=function(){return Gi(this.l,this.a,this.b)};function Gi(Z,oe,we){var Be=(Z+16)/116,Ue=Be+oe/500,We=Be-we/200;return Ue=ka(Ue)*gi,Be=ka(Be)*Si,We=ka(We)*Mi,new Fa(la(3.2404542*Ue-1.5371385*Be-.4985314*We),la(-.969266*Ue+1.8760108*Be+.041556*We),la(.0556434*Ue-.2040259*Be+1.0572252*We))}function Ki(Z,oe,we){return Z>0?new Zt(Math.atan2(we,oe)*lt,Math.sqrt(oe*oe+we*we),Z):new Zt(NaN,NaN,Z)}function ka(Z){return Z>.206893034?Z*Z*Z:(Z-4/29)/7.787037}function jn(Z){return Z>.008856?Math.pow(Z,1/3):7.787037*Z+4/29}function la(Z){return Math.round(255*(Z<=.00304?12.92*Z:1.055*Math.pow(Z,1/2.4)-.055))}e.rgb=Fa;function Fa(Z,oe,we){return this instanceof Fa?(this.r=~~Z,this.g=~~oe,void(this.b=~~we)):arguments.length<2?Z instanceof Fa?new Fa(Z.r,Z.g,Z.b):Ha(""+Z,Fa,jt):new Fa(Z,oe,we)}function Ra(Z){return new Fa(Z>>16,Z>>8&255,Z&255)}function jo(Z){return Ra(Z)+""}var oa=Fa.prototype=new Wn;oa.brighter=function(Z){Z=Math.pow(.7,arguments.length?Z:1);var oe=this.r,we=this.g,Be=this.b,Ue=30;return!oe&&!we&&!Be?new Fa(Ue,Ue,Ue):(oe&&oe>4,Be=Be>>4|Be,Ue=zt&240,Ue=Ue>>4|Ue,We=zt&15,We=We<<4|We):Z.length===7&&(Be=(zt&16711680)>>16,Ue=(zt&65280)>>8,We=zt&255)),oe(Be,Ue,We))}function oo(Z,oe,we){var Be=Math.min(Z/=255,oe/=255,we/=255),Ue=Math.max(Z,oe,we),We=Ue-Be,wt,tt,zt=(Ue+Be)/2;return We?(tt=zt<.5?We/(Ue+Be):We/(2-Ue-Be),Z==Ue?wt=(oe-we)/We+(oe0&&zt<1?0:wt),new It(wt,tt,zt)}function xn(Z,oe,we){Z=_t(Z),oe=_t(oe),we=_t(we);var Be=jn((.4124564*Z+.3575761*oe+.1804375*we)/gi),Ue=jn((.2126729*Z+.7151522*oe+.072175*we)/Si),We=jn((.0193339*Z+.119192*oe+.9503041*we)/Mi);return Zr(116*Ue-16,500*(Be-Ue),200*(Ue-We))}function _t(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function br(Z){var oe=parseFloat(Z);return Z.charAt(Z.length-1)==="%"?Math.round(oe*2.55):oe}var Hr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Hr.forEach(function(Z,oe){Hr.set(Z,Ra(oe))});function ti(Z){return typeof Z=="function"?Z:function(){return Z}}e.functor=ti,e.xhr=zi(H);function zi(Z){return function(oe,we,Be){return arguments.length===2&&typeof we=="function"&&(Be=we,we=null),Yi(oe,we,Z,Be)}}function Yi(Z,oe,we,Be){var Ue={},We=e.dispatch("beforesend","progress","load","error"),wt={},tt=new XMLHttpRequest,zt=null;self.XDomainRequest&&!("withCredentials"in tt)&&/^(http(s)?:)?\/\//.test(Z)&&(tt=new XDomainRequest),"onload"in tt?tt.onload=tt.onerror=or:tt.onreadystatechange=function(){tt.readyState>3&&or()};function or(){var lr=tt.status,Dr;if(!lr&&hi(tt)||lr>=200&&lr<300||lr===304){try{Dr=we.call(Ue,tt)}catch(Ir){We.error.call(Ue,Ir);return}We.load.call(Ue,Dr)}else We.error.call(Ue,tt)}return tt.onprogress=function(lr){var Dr=e.event;e.event=lr;try{We.progress.call(Ue,tt)}finally{e.event=Dr}},Ue.header=function(lr,Dr){return lr=(lr+"").toLowerCase(),arguments.length<2?wt[lr]:(Dr==null?delete wt[lr]:wt[lr]=Dr+"",Ue)},Ue.mimeType=function(lr){return arguments.length?(oe=lr==null?null:lr+"",Ue):oe},Ue.responseType=function(lr){return arguments.length?(zt=lr,Ue):zt},Ue.response=function(lr){return we=lr,Ue},["get","post"].forEach(function(lr){Ue[lr]=function(){return Ue.send.apply(Ue,[lr].concat(r(arguments)))}}),Ue.send=function(lr,Dr,Ir){if(arguments.length===2&&typeof Dr=="function"&&(Ir=Dr,Dr=null),tt.open(lr,Z,!0),oe!=null&&!("accept"in wt)&&(wt.accept=oe+",*/*"),tt.setRequestHeader)for(var oi in wt)tt.setRequestHeader(oi,wt[oi]);return oe!=null&&tt.overrideMimeType&&tt.overrideMimeType(oe),zt!=null&&(tt.responseType=zt),Ir!=null&&Ue.on("error",Ir).on("load",function(ui){Ir(null,ui)}),We.beforesend.call(Ue,tt),tt.send(Dr==null?null:Dr),Ue},Ue.abort=function(){return tt.abort(),Ue},e.rebind(Ue,We,"on"),Be==null?Ue:Ue.get(an(Be))}function an(Z){return Z.length===1?function(oe,we){Z(oe==null?we:null)}:Z}function hi(Z){var oe=Z.responseType;return oe&&oe!=="text"?Z.response:Z.responseText}e.dsv=function(Z,oe){var we=new RegExp('["'+Z+` +"use strict";var Plotly=(()=>{var Fet=Object.create;var ES=Object.defineProperty,qet=Object.defineProperties,Oet=Object.getOwnPropertyDescriptor,Bet=Object.getOwnPropertyDescriptors,Net=Object.getOwnPropertyNames,ree=Object.getOwnPropertySymbols,Uet=Object.getPrototypeOf,nee=Object.prototype.hasOwnProperty,Vet=Object.prototype.propertyIsEnumerable;var iee=(e,t,r)=>t in e?ES(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,aee=(e,t)=>{for(var r in t||(t={}))nee.call(t,r)&&iee(e,r,t[r]);if(ree)for(var r of ree(t))Vet.call(t,r)&&iee(e,r,t[r]);return e},oee=(e,t)=>qet(e,Bet(t));var Ll=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),see=(e,t)=>{for(var r in t)ES(e,r,{get:t[r],enumerable:!0})},lee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Net(t))!nee.call(e,i)&&i!==r&&ES(e,i,{get:()=>t[i],enumerable:!(n=Oet(t,i))||n.enumerable});return e};var Het=(e,t,r)=>(r=e!=null?Fet(Uet(e)):{},lee(t||!e||!e.__esModule?ES(r,"default",{value:e,enumerable:!0}):r,e)),B1=e=>lee(ES({},"__esModule",{value:!0}),e);var r6=ye(uee=>{"use strict";uee.version="3.0.2"});var fee=ye((cee,i6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof i6!="undefined"&&i6.exports&&(i6.exports=r[t])})("Promise",typeof window!="undefined"?window:cee,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(E){return setImmediate(E)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(E,k,A,L){return Object.defineProperty(E,k,{value:A,writable:!0,configurable:L!==!1})}}catch(p){t=function(k,A,L){return k[A]=L,k}}n=function(){var E,k,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),k?k.next=A:E=A,k=A,A=void 0},drain:function(){var C=E;for(E=k=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,E){n.add(p,E),r||(r=a(n.drain))}function s(p){var E,k=typeof p;return p!=null&&(k=="object"||k=="function")&&(E=p.then),typeof E=="function"?E:!1}function l(){for(var p=0;p0&&o(l,k))}catch(A){f.call(new d(k),A)}}}function f(p){var E=this;E.triggered||(E.triggered=!0,E.def&&(E=E.def),E.msg=p,E.state=2,E.chain.length>0&&o(l,E))}function h(p,E,k,A){for(var L=0;L{(function(){var e={version:"3.8.2"},t=[].slice,r=function(Z){return t.call(Z)},n=self.document;function i(Z){return Z&&(Z.ownerDocument||Z.document||Z).documentElement}function a(Z){return Z&&(Z.ownerDocument&&Z.ownerDocument.defaultView||Z.document&&Z||Z.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(Z){r=function(oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=oe[we];return Be}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(Z){var o=this.Element.prototype,s=o.setAttribute,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(oe,we){s.call(this,oe,we+"")},o.setAttributeNS=function(oe,we,Be){l.call(this,oe,we,Be+"")},u.setProperty=function(oe,we,Be){c.call(this,oe,we+"",Be)}}e.ascending=f;function f(Z,oe){return Zoe?1:Z>=oe?0:NaN}e.descending=function(Z,oe){return oeZ?1:oe>=Z?0:NaN},e.min=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weWe&&(Ue=We)}return Ue},e.max=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}else{for(;++we=We){Ue=We;break}for(;++weUe&&(Ue=We)}return Ue},e.extent=function(Z,oe){var we=-1,Be=Z.length,Ue,We,wt;if(arguments.length===1){for(;++we=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt=We){Ue=wt=We;break}for(;++weWe&&(Ue=We),wt1)return wt/(zt-1)},e.deviation=function(){var Z=e.variance.apply(this,arguments);return Z&&Math.sqrt(Z)};function v(Z){return{left:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)<0?Be=We+1:Ue=We}return Be},right:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be>>1;Z(oe[We],we)>0?Ue=We:Be=We+1}return Be}}}var x=v(f);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(Z){return v(Z.length===1?function(oe,we){return f(Z(oe),we)}:Z)},e.shuffle=function(Z,oe,we){(Be=arguments.length)<3&&(we=Z.length,Be<2&&(oe=0));for(var Be=we-oe,Ue,We;Be;)We=Math.random()*Be--|0,Ue=Z[Be+oe],Z[Be+oe]=Z[We+oe],Z[We+oe]=Ue;return Z},e.permute=function(Z,oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=Z[oe[we]];return Be},e.pairs=function(Z){for(var oe=0,we=Z.length-1,Be,Ue=Z[0],We=new Array(we<0?0:we);oe=0;)for(wt=Z[oe],we=wt.length;--we>=0;)We[--Ue]=wt[we];return We};var p=Math.abs;e.range=function(Z,oe,we){if(arguments.length<3&&(we=1,arguments.length<2&&(oe=Z,Z=0)),(oe-Z)/we===1/0)throw new Error("infinite range");var Be=[],Ue=E(p(we)),We=-1,wt;if(Z*=Ue,oe*=Ue,we*=Ue,we<0)for(;(wt=Z+we*++We)>oe;)Be.push(wt/Ue);else for(;(wt=Z+we*++We)=oe.length)return Ue?Ue.call(Z,zt):Be?zt.sort(Be):zt;for(var lr=-1,Dr=zt.length,Ir=oe[or++],oi,ui,qr,Kr=new A,ii;++lr=oe.length)return tt;var or=[],lr=we[zt++];return tt.forEach(function(Dr,Ir){or.push({key:Dr,values:wt(Ir,zt)})}),lr?or.sort(function(Dr,Ir){return lr(Dr.key,Ir.key)}):or}return Z.map=function(tt,zt){return We(zt,tt,0)},Z.entries=function(tt){return wt(We(e.map,tt,0),0)},Z.key=function(tt){return oe.push(tt),Z},Z.sortKeys=function(tt){return we[oe.length-1]=tt,Z},Z.sortValues=function(tt){return Be=tt,Z},Z.rollup=function(tt){return Ue=tt,Z},Z},e.set=function(Z){var oe=new V;if(Z)for(var we=0,Be=Z.length;we=0&&(Be=Z.slice(we+1),Z=Z.slice(0,we)),Z)return arguments.length<2?this[Z].on(Be):this[Z].on(Be,oe);if(arguments.length===2){if(oe==null)for(Z in this)this.hasOwnProperty(Z)&&this[Z].on(Be,null);return this}};function ae(Z){var oe=[],we=new A;function Be(){for(var Ue=oe,We=-1,wt=Ue.length,tt;++We=0&&(we=Z.slice(0,oe))!=="xmlns"&&(Z=Z.slice(oe+1)),Ge.hasOwnProperty(we)?{space:Ge[we],local:Z}:Z}},Ce.attr=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node();return Z=e.ns.qualify(Z),Z.local?we.getAttributeNS(Z.space,Z.local):we.getAttribute(Z)}for(oe in Z)this.each(nt(oe,Z[oe]));return this}return this.each(nt(Z,oe))};function nt(Z,oe){Z=e.ns.qualify(Z);function we(){this.removeAttribute(Z)}function Be(){this.removeAttributeNS(Z.space,Z.local)}function Ue(){this.setAttribute(Z,oe)}function We(){this.setAttributeNS(Z.space,Z.local,oe)}function wt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttribute(Z):this.setAttribute(Z,zt)}function tt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttributeNS(Z.space,Z.local):this.setAttributeNS(Z.space,Z.local,zt)}return oe==null?Z.local?Be:we:typeof oe=="function"?Z.local?tt:wt:Z.local?We:Ue}function ct(Z){return Z.trim().replace(/\s+/g," ")}Ce.classed=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node(),Be=(Z=rt(Z)).length,Ue=-1;if(oe=we.classList){for(;++Ue=0;)(We=we[Be])&&(Ue&&Ue!==We.nextSibling&&Ue.parentNode.insertBefore(We,Ue),Ue=We);return this},Ce.sort=function(Z){Z=xt.apply(this,arguments);for(var oe=-1,we=this.length;++oe=oe&&(oe=Ue+1);!(zt=wt[oe])&&++oe0&&(Z=Z.slice(0,Ue));var wt=Ht.get(Z);wt&&(Z=wt,We=fr);function tt(){var lr=this[Be];lr&&(this.removeEventListener(Z,lr,lr.$),delete this[Be])}function zt(){var lr=We(oe,r(arguments));tt.call(this),this.addEventListener(Z,this[Be]=lr,lr.$=we),lr._=oe}function or(){var lr=new RegExp("^__on([^.]+)"+e.requote(Z)+"$"),Dr;for(var Ir in this)if(Dr=Ir.match(lr)){var oi=this[Ir];this.removeEventListener(Dr[1],oi,oi.$),delete this[Ir]}}return Ue?oe?zt:tt:oe?W:or}var Ht=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Ht.forEach(function(Z){"on"+Z in n&&Ht.remove(Z)});function $t(Z,oe){return function(we){var Be=e.event;e.event=we,oe[0]=this.__data__;try{Z.apply(this,oe)}finally{e.event=Be}}}function fr(Z,oe){var we=$t(Z,oe);return function(Be){var Ue=this,We=Be.relatedTarget;(!We||We!==Ue&&!(We.compareDocumentPosition(Ue)&8))&&we.call(Ue,Be)}}var _r,Br=0;function Or(Z){var oe=".dragsuppress-"+ ++Br,we="click"+oe,Be=e.select(a(Z)).on("touchmove"+oe,_e).on("dragstart"+oe,_e).on("selectstart"+oe,_e);if(_r==null&&(_r="onselectstart"in Z?!1:G(Z.style,"userSelect")),_r){var Ue=i(Z).style,We=Ue[_r];Ue[_r]="none"}return function(wt){if(Be.on(oe,null),_r&&(Ue[_r]=We),wt){var tt=function(){Be.on(we,null)};Be.on(we,function(){_e(),tt()},!0),setTimeout(tt,0)}}}e.mouse=function(Z){return ut(Z,Me())};var Nr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ut(Z,oe){oe.changedTouches&&(oe=oe.changedTouches[0]);var we=Z.ownerSVGElement||Z;if(we.createSVGPoint){var Be=we.createSVGPoint();if(Nr<0){var Ue=a(Z);if(Ue.scrollX||Ue.scrollY){we=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var We=we[0][0].getScreenCTM();Nr=!(We.f||We.e),we.remove()}}return Nr?(Be.x=oe.pageX,Be.y=oe.pageY):(Be.x=oe.clientX,Be.y=oe.clientY),Be=Be.matrixTransform(Z.getScreenCTM().inverse()),[Be.x,Be.y]}var wt=Z.getBoundingClientRect();return[oe.clientX-wt.left-Z.clientLeft,oe.clientY-wt.top-Z.clientTop]}e.touch=function(Z,oe,we){if(arguments.length<3&&(we=oe,oe=Me().changedTouches),oe){for(var Be=0,Ue=oe.length,We;Be0?1:Z<0?-1:0}function Vt(Z,oe,we){return(oe[0]-Z[0])*(we[1]-Z[1])-(oe[1]-Z[1])*(we[0]-Z[0])}function ar(Z){return Z>1?0:Z<-1?Xe:Math.acos(Z)}function Qr(Z){return Z>1?xe:Z<-1?-xe:Math.asin(Z)}function ai(Z){return((Z=Math.exp(Z))-1/Z)/2}function jr(Z){return((Z=Math.exp(Z))+1/Z)/2}function ri(Z){return((Z=Math.exp(2*Z))-1)/(Z+1)}function bi(Z){return(Z=Math.sin(Z/2))*Z}var nn=Math.SQRT2,Wi=2,Ni=4;e.interpolateZoom=function(Z,oe){var we=Z[0],Be=Z[1],Ue=Z[2],We=oe[0],wt=oe[1],tt=oe[2],zt=We-we,or=wt-Be,lr=zt*zt+or*or,Dr,Ir;if(lr0&&(pn=pn.transition().duration(wt)),pn.call(ci.event)}function ga(){Kr&&Kr.domain(qr.range().map(function(pn){return(pn-Z.x)/Z.k}).map(qr.invert)),vi&&vi.domain(ii.range().map(function(pn){return(pn-Z.y)/Z.k}).map(ii.invert))}function ya(pn){tt++||pn({type:"zoomstart"})}function so(pn){ga(),pn({type:"zoom",scale:Z.k,translate:[Z.x,Z.y]})}function wa(pn){--tt||(pn({type:"zoomend"}),we=null)}function io(){var pn=this,za=ui.of(pn,arguments),Lo=0,Fo=e.select(a(pn)).on(or,fu).on(lr,dl),js=Jr(e.mouse(pn)),xl=Or(pn);ea.call(pn),ya(za);function fu(){Lo=1,En(e.mouse(pn),js),so(za)}function dl(){Fo.on(or,null).on(lr,null),xl(Lo),wa(za)}}function Ss(){var pn=this,za=ui.of(pn,arguments),Lo={},Fo=0,js,xl=".zoom-"+e.event.changedTouches[0].identifier,fu="touchmove"+xl,dl="touchend"+xl,xc=[],At=e.select(pn),Er=Or(pn);wi(),ya(za),At.on(zt,null).on(Ir,wi);function Wr(){var Bi=e.touches(pn);return js=Z.k,Bi.forEach(function(cn){cn.identifier in Lo&&(Lo[cn.identifier]=Jr(cn))}),Bi}function wi(){var Bi=e.event.target;e.select(Bi).on(fu,Ui).on(dl,Oi),xc.push(Bi);for(var cn=e.event.changedTouches,On=0,Bn=cn.length;On1){var Rn=yn[0],Dn=yn[1],fn=Rn[0]-Dn[0],Ai=Rn[1]-Dn[1];Fo=fn*fn+Ai*Ai}}function Ui(){var Bi=e.touches(pn),cn,On,Bn,yn;ea.call(pn);for(var to=0,Rn=Bi.length;to1?1:oe,we=we<0?0:we>1?1:we,Ue=we<=.5?we*(1+oe):we+oe-we*oe,Be=2*we-Ue;function We(tt){return tt>360?tt-=360:tt<0&&(tt+=360),tt<60?Be+(Ue-Be)*tt/60:tt<180?Ue:tt<240?Be+(Ue-Be)*(240-tt)/60:Be}function wt(tt){return Math.round(We(tt)*255)}return new Fa(wt(Z+120),wt(Z),wt(Z-120))}e.hcl=Zt;function Zt(Z,oe,we){return this instanceof Zt?(this.h=+Z,this.c=+oe,void(this.l=+we)):arguments.length<2?Z instanceof Zt?new Zt(Z.h,Z.c,Z.l):Z instanceof Zr?Ki(Z.l,Z.a,Z.b):Ki((Z=xn((Z=e.rgb(Z)).r,Z.g,Z.b)).l,Z.a,Z.b):new Zt(Z,oe,we)}var yr=Zt.prototype=new Wn;yr.brighter=function(Z){return new Zt(this.h,this.c,Math.min(100,this.l+Vr*(arguments.length?Z:1)))},yr.darker=function(Z){return new Zt(this.h,this.c,Math.max(0,this.l-Vr*(arguments.length?Z:1)))},yr.rgb=function(){return Fr(this.h,this.c,this.l).rgb()};function Fr(Z,oe,we){return isNaN(Z)&&(Z=0),isNaN(oe)&&(oe=0),new Zr(we,Math.cos(Z*=Se)*oe,Math.sin(Z)*oe)}e.lab=Zr;function Zr(Z,oe,we){return this instanceof Zr?(this.l=+Z,this.a=+oe,void(this.b=+we)):arguments.length<2?Z instanceof Zr?new Zr(Z.l,Z.a,Z.b):Z instanceof Zt?Fr(Z.h,Z.c,Z.l):xn((Z=Fa(Z)).r,Z.g,Z.b):new Zr(Z,oe,we)}var Vr=18,gi=.95047,Si=1,Mi=1.08883,Pi=Zr.prototype=new Wn;Pi.brighter=function(Z){return new Zr(Math.min(100,this.l+Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.darker=function(Z){return new Zr(Math.max(0,this.l-Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.rgb=function(){return Gi(this.l,this.a,this.b)};function Gi(Z,oe,we){var Be=(Z+16)/116,Ue=Be+oe/500,We=Be-we/200;return Ue=ka(Ue)*gi,Be=ka(Be)*Si,We=ka(We)*Mi,new Fa(la(3.2404542*Ue-1.5371385*Be-.4985314*We),la(-.969266*Ue+1.8760108*Be+.041556*We),la(.0556434*Ue-.2040259*Be+1.0572252*We))}function Ki(Z,oe,we){return Z>0?new Zt(Math.atan2(we,oe)*lt,Math.sqrt(oe*oe+we*we),Z):new Zt(NaN,NaN,Z)}function ka(Z){return Z>.206893034?Z*Z*Z:(Z-4/29)/7.787037}function jn(Z){return Z>.008856?Math.pow(Z,1/3):7.787037*Z+4/29}function la(Z){return Math.round(255*(Z<=.00304?12.92*Z:1.055*Math.pow(Z,1/2.4)-.055))}e.rgb=Fa;function Fa(Z,oe,we){return this instanceof Fa?(this.r=~~Z,this.g=~~oe,void(this.b=~~we)):arguments.length<2?Z instanceof Fa?new Fa(Z.r,Z.g,Z.b):Ha(""+Z,Fa,jt):new Fa(Z,oe,we)}function Ra(Z){return new Fa(Z>>16,Z>>8&255,Z&255)}function jo(Z){return Ra(Z)+""}var oa=Fa.prototype=new Wn;oa.brighter=function(Z){Z=Math.pow(.7,arguments.length?Z:1);var oe=this.r,we=this.g,Be=this.b,Ue=30;return!oe&&!we&&!Be?new Fa(Ue,Ue,Ue):(oe&&oe>4,Be=Be>>4|Be,Ue=zt&240,Ue=Ue>>4|Ue,We=zt&15,We=We<<4|We):Z.length===7&&(Be=(zt&16711680)>>16,Ue=(zt&65280)>>8,We=zt&255)),oe(Be,Ue,We))}function oo(Z,oe,we){var Be=Math.min(Z/=255,oe/=255,we/=255),Ue=Math.max(Z,oe,we),We=Ue-Be,wt,tt,zt=(Ue+Be)/2;return We?(tt=zt<.5?We/(Ue+Be):We/(2-Ue-Be),Z==Ue?wt=(oe-we)/We+(oe0&&zt<1?0:wt),new It(wt,tt,zt)}function xn(Z,oe,we){Z=_t(Z),oe=_t(oe),we=_t(we);var Be=jn((.4124564*Z+.3575761*oe+.1804375*we)/gi),Ue=jn((.2126729*Z+.7151522*oe+.072175*we)/Si),We=jn((.0193339*Z+.119192*oe+.9503041*we)/Mi);return Zr(116*Ue-16,500*(Be-Ue),200*(Ue-We))}function _t(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function br(Z){var oe=parseFloat(Z);return Z.charAt(Z.length-1)==="%"?Math.round(oe*2.55):oe}var Hr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Hr.forEach(function(Z,oe){Hr.set(Z,Ra(oe))});function ti(Z){return typeof Z=="function"?Z:function(){return Z}}e.functor=ti,e.xhr=zi(H);function zi(Z){return function(oe,we,Be){return arguments.length===2&&typeof we=="function"&&(Be=we,we=null),Yi(oe,we,Z,Be)}}function Yi(Z,oe,we,Be){var Ue={},We=e.dispatch("beforesend","progress","load","error"),wt={},tt=new XMLHttpRequest,zt=null;self.XDomainRequest&&!("withCredentials"in tt)&&/^(http(s)?:)?\/\//.test(Z)&&(tt=new XDomainRequest),"onload"in tt?tt.onload=tt.onerror=or:tt.onreadystatechange=function(){tt.readyState>3&&or()};function or(){var lr=tt.status,Dr;if(!lr&&hi(tt)||lr>=200&&lr<300||lr===304){try{Dr=we.call(Ue,tt)}catch(Ir){We.error.call(Ue,Ir);return}We.load.call(Ue,Dr)}else We.error.call(Ue,tt)}return tt.onprogress=function(lr){var Dr=e.event;e.event=lr;try{We.progress.call(Ue,tt)}finally{e.event=Dr}},Ue.header=function(lr,Dr){return lr=(lr+"").toLowerCase(),arguments.length<2?wt[lr]:(Dr==null?delete wt[lr]:wt[lr]=Dr+"",Ue)},Ue.mimeType=function(lr){return arguments.length?(oe=lr==null?null:lr+"",Ue):oe},Ue.responseType=function(lr){return arguments.length?(zt=lr,Ue):zt},Ue.response=function(lr){return we=lr,Ue},["get","post"].forEach(function(lr){Ue[lr]=function(){return Ue.send.apply(Ue,[lr].concat(r(arguments)))}}),Ue.send=function(lr,Dr,Ir){if(arguments.length===2&&typeof Dr=="function"&&(Ir=Dr,Dr=null),tt.open(lr,Z,!0),oe!=null&&!("accept"in wt)&&(wt.accept=oe+",*/*"),tt.setRequestHeader)for(var oi in wt)tt.setRequestHeader(oi,wt[oi]);return oe!=null&&tt.overrideMimeType&&tt.overrideMimeType(oe),zt!=null&&(tt.responseType=zt),Ir!=null&&Ue.on("error",Ir).on("load",function(ui){Ir(null,ui)}),We.beforesend.call(Ue,tt),tt.send(Dr==null?null:Dr),Ue},Ue.abort=function(){return tt.abort(),Ue},e.rebind(Ue,We,"on"),Be==null?Ue:Ue.get(an(Be))}function an(Z){return Z.length===1?function(oe,we){Z(oe==null?we:null)}:Z}function hi(Z){var oe=Z.responseType;return oe&&oe!=="text"?Z.response:Z.responseText}e.dsv=function(Z,oe){var we=new RegExp('["'+Z+` ]`),Be=Z.charCodeAt(0);function Ue(or,lr,Dr){arguments.length<3&&(Dr=lr,lr=null);var Ir=Yi(or,oe,lr==null?We:wt(lr),Dr);return Ir.row=function(oi){return arguments.length?Ir.response((lr=oi)==null?We:wt(oi)):lr},Ir}function We(or){return Ue.parse(or.responseText)}function wt(or){return function(lr){return Ue.parse(lr.responseText,or)}}Ue.parse=function(or,lr){var Dr;return Ue.parseRows(or,function(Ir,oi){if(Dr)return Dr(Ir,oi-1);var ui=function(qr){for(var Kr={},ii=Ir.length,vi=0;vi=ui)return Ir;if(vi)return vi=!1,Dr;var un=qr;if(or.charCodeAt(un)===34){for(var dn=un;dn++24?(isFinite(oe)&&(clearTimeout(Sa),Sa=setTimeout(ho,oe)),Fn=0):(Fn=1,go(ho))}e.timer.flush=function(){Mo(),xo()};function Mo(){for(var Z=Date.now(),oe=Ji;oe;)Z>=oe.t&&oe.c(Z-oe.t)&&(oe.c=null),oe=oe.n;return Z}function xo(){for(var Z,oe=Ji,we=1/0;oe;)oe.c?(oe.t=0;--tt)qr.push(Ue[or[Dr[tt]][2]]);for(tt=+oi;tt1&&Vt(Z[we[Be-2]],Z[we[Be-1]],Z[Ue])<=0;)--Be;we[Be++]=Ue}return we.slice(0,Be)}function Xs(Z,oe){return Z[0]-oe[0]||Z[1]-oe[1]}e.geom.polygon=function(Z){return ie(Z,wl),Z};var wl=e.geom.polygon.prototype=[];wl.area=function(){for(var Z=-1,oe=this.length,we,Be=this[oe-1],Ue=0;++ZYe)tt=tt.L;else if(wt=oe-vo(tt,we),wt>Ye){if(!tt.R){Be=tt;break}tt=tt.R}else{We>-Ye?(Be=tt.P,Ue=tt):wt>-Ye?(Be=tt,Ue=tt.N):Be=Ue=tt;break}var zt=ms(Z);if(Hs.insert(Be,zt),!(!Be&&!Ue)){if(Be===Ue){ko(Be),Ue=ms(Be.site),Hs.insert(zt,Ue),zt.edge=Ue.edge=cf(Be.site,zt.site),Zn(Be),Zn(Ue);return}if(!Ue){zt.edge=cf(Be.site,zt.site);return}ko(Be),ko(Ue);var or=Be.site,lr=or.x,Dr=or.y,Ir=Z.x-lr,oi=Z.y-Dr,ui=Ue.site,qr=ui.x-lr,Kr=ui.y-Dr,ii=2*(Ir*Kr-oi*qr),vi=Ir*Ir+oi*oi,ci=qr*qr+Kr*Kr,Jr={x:(Kr*vi-oi*ci)/ii+lr,y:(Ir*ci-qr*vi)/ii+Dr};Al(Ue.edge,or,ui,Jr),zt.edge=cf(or,Z,null,Jr),Ue.edge=cf(Z,ui,null,Jr),Zn(Be),Zn(Ue)}}function Rl(Z,oe){var we=Z.site,Be=we.x,Ue=we.y,We=Ue-oe;if(!We)return Be;var wt=Z.P;if(!wt)return-1/0;we=wt.site;var tt=we.x,zt=we.y,or=zt-oe;if(!or)return tt;var lr=tt-Be,Dr=1/We-1/or,Ir=lr/or;return Dr?(-Ir+Math.sqrt(Ir*Ir-2*Dr*(lr*lr/(-2*or)-zt+or/2+Ue-We/2)))/Dr+Be:(Be+tt)/2}function vo(Z,oe){var we=Z.N;if(we)return Rl(we,oe);var Be=Z.site;return Be.y===oe?Be.x:1/0}function Zl(Z){this.site=Z,this.edges=[]}Zl.prototype.prepare=function(){for(var Z=this.edges,oe=Z.length,we;oe--;)we=Z[oe].edge,(!we.b||!we.a)&&Z.splice(oe,1);return Z.sort(Xl),Z.length};function Ks(Z){for(var oe=Z[0][0],we=Z[1][0],Be=Z[0][1],Ue=Z[1][1],We,wt,tt,zt,or=Ys,lr=or.length,Dr,Ir,oi,ui,qr,Kr;lr--;)if(Dr=or[lr],!(!Dr||!Dr.prepare()))for(oi=Dr.edges,ui=oi.length,Ir=0;IrYe||p(zt-wt)>Ye)&&(oi.splice(Ir,0,new Gc(rh(Dr.site,Kr,p(tt-oe)Ye?{x:oe,y:p(We-oe)Ye?{x:p(wt-Ue)Ye?{x:we,y:p(We-we)Ye?{x:p(wt-Be)=-Ve)){var Ir=zt*zt+or*or,oi=lr*lr+Kr*Kr,ui=(Kr*Ir-or*oi)/Dr,qr=(zt*oi-lr*Ir)/Dr,Kr=qr+tt,ii=Hu.pop()||new Ec;ii.arc=Z,ii.site=Ue,ii.x=ui+wt,ii.y=Kr+Math.sqrt(ui*ui+qr*qr),ii.cy=Kr,Z.circle=ii;for(var vi=null,ci=Ql._;ci;)if(ii.y0)){if(qr/=oi,oi<0){if(qr0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}if(qr=we-tt,!(!oi&&qr<0)){if(qr/=oi,oi<0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}else if(oi>0){if(qr0)){if(qr/=ui,ui<0){if(qr0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}if(qr=Be-zt,!(!ui&&qr<0)){if(qr/=ui,ui<0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}else if(ui>0){if(qr0&&(Ue.a={x:tt+Dr*oi,y:zt+Dr*ui}),Ir<1&&(Ue.b={x:tt+Ir*oi,y:zt+Ir*ui}),Ue}}}}}}function Tl(Z){for(var oe=ml,we=Co(Z[0][0],Z[0][1],Z[1][0],Z[1][1]),Be=oe.length,Ue;Be--;)Ue=oe[Be],(!uf(Ue,Z)||!we(Ue)||p(Ue.a.x-Ue.b.x)=We)return;if(lr>Ir){if(!Be)Be={x:ui,y:wt};else if(Be.y>=tt)return;we={x:ui,y:tt}}else{if(!Be)Be={x:ui,y:tt};else if(Be.y1)if(lr>Ir){if(!Be)Be={x:(wt-ii)/Kr,y:wt};else if(Be.y>=tt)return;we={x:(tt-ii)/Kr,y:tt}}else{if(!Be)Be={x:(tt-ii)/Kr,y:tt};else if(Be.y=We)return;we={x:We,y:Kr*We+ii}}else{if(!Be)Be={x:We,y:Kr*We+ii};else if(Be.x=lr&&ii.x<=Ir&&ii.y>=Dr&&ii.y<=oi?[[lr,oi],[Ir,oi],[Ir,Dr],[lr,Dr]]:[];vi.point=zt[qr]}),or}function tt(zt){return zt.map(function(or,lr){return{x:Math.round(Be(or,lr)/Ye)*Ye,y:Math.round(Ue(or,lr)/Ye)*Ye,i:lr}})}return wt.links=function(zt){return jc(tt(zt)).edges.filter(function(or){return or.l&&or.r}).map(function(or){return{source:zt[or.l.i],target:zt[or.r.i]}})},wt.triangles=function(zt){var or=[];return jc(tt(zt)).cells.forEach(function(lr,Dr){for(var Ir=lr.site,oi=lr.edges.sort(Xl),ui=-1,qr=oi.length,Kr,ii,vi=oi[qr-1].edge,ci=vi.l===Ir?vi.r:vi.l;++uici&&(ci=lr.x),lr.y>Jr&&(Jr=lr.y),oi.push(lr.x),ui.push(lr.y);else for(qr=0;qrci&&(ci=un),dn>Jr&&(Jr=dn),oi.push(un),ui.push(dn)}var En=ci-ii,Nn=Jr-vi;En>Nn?Jr=vi+En:ci=ii+Nn;function ga(wa,io,Ss,_s,Ns,pn,za,Lo){if(!(isNaN(Ss)||isNaN(_s)))if(wa.leaf){var Fo=wa.x,js=wa.y;if(Fo!=null)if(p(Fo-Ss)+p(js-_s)<.01)ya(wa,io,Ss,_s,Ns,pn,za,Lo);else{var xl=wa.point;wa.x=wa.y=wa.point=null,ya(wa,xl,Fo,js,Ns,pn,za,Lo),ya(wa,io,Ss,_s,Ns,pn,za,Lo)}else wa.x=Ss,wa.y=_s,wa.point=io}else ya(wa,io,Ss,_s,Ns,pn,za,Lo)}function ya(wa,io,Ss,_s,Ns,pn,za,Lo){var Fo=(Ns+za)*.5,js=(pn+Lo)*.5,xl=Ss>=Fo,fu=_s>=js,dl=fu<<1|xl;wa.leaf=!1,wa=wa.nodes[dl]||(wa.nodes[dl]=Hl()),xl?Ns=Fo:za=Fo,fu?pn=js:Lo=js,ga(wa,io,Ss,_s,Ns,pn,za,Lo)}var so=Hl();if(so.add=function(wa){ga(so,wa,+Dr(wa,++qr),+Ir(wa,qr),ii,vi,ci,Jr)},so.visit=function(wa){Js(wa,so,ii,vi,ci,Jr)},so.find=function(wa){return hc(so,wa[0],wa[1],ii,vi,ci,Jr)},qr=-1,oe==null){for(;++qrWe||Ir>wt||oi=un,Nn=we>=dn,ga=Nn<<1|En,ya=ga+4;gawe&&(We=oe.slice(we,We),tt[wt]?tt[wt]+=We:tt[++wt]=We),(Be=Be[0])===(Ue=Ue[0])?tt[wt]?tt[wt]+=Ue:tt[++wt]=Ue:(tt[++wt]=null,zt.push({i:wt,x:$s(Be,Ue)})),we=dc.lastIndex;return we=0&&!(Be=e.interpolators[we](Z,oe)););return Be}e.interpolators=[function(Z,oe){var we=typeof oe;return(we==="string"?Hr.has(oe.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(oe)?Cc:hs:oe instanceof Wn?Cc:Array.isArray(oe)?ec:we==="object"&&isNaN(oe)?ws:$s)(Z,oe)}],e.interpolateArray=ec;function ec(Z,oe){var we=[],Be=[],Ue=Z.length,We=oe.length,wt=Math.min(Z.length,oe.length),tt;for(tt=0;tt=0?Z.slice(0,oe):Z,Be=oe>=0?Z.slice(oe+1):"in";return we=ov.get(we)||Ps,Be=wo.get(Be)||H,Od(Be(we.apply(null,t.call(arguments,1))))};function Od(Z){return function(oe){return oe<=0?0:oe>=1?1:Z(oe)}}function $o(Z){return function(oe){return 1-Z(1-oe)}}function Ja(Z){return function(oe){return .5*(oe<.5?Z(2*oe):2-Z(2-2*oe))}}function Ef(Z){return Z*Z}function tc(Z){return Z*Z*Z}function uu(Z){if(Z<=0)return 0;if(Z>=1)return 1;var oe=Z*Z,we=oe*Z;return 4*(Z<.5?we:3*(Z-oe)+we-.75)}function Mh(Z){return function(oe){return Math.pow(oe,Z)}}function Wc(Z){return 1-Math.cos(Z*xe)}function kf(Z){return Math.pow(2,10*(Z-1))}function Ml(Z){return 1-Math.sqrt(1-Z*Z)}function Yh(Z,oe){var we;return arguments.length<2&&(oe=.45),arguments.length?we=oe/ht*Math.asin(1/Z):(Z=1,we=oe/4),function(Be){return 1+Z*Math.pow(2,-10*Be)*Math.sin((Be-we)*ht/oe)}}function Eh(Z){return Z||(Z=1.70158),function(oe){return oe*oe*((Z+1)*oe-Z)}}function nh(Z){return Z<1/2.75?7.5625*Z*Z:Z<2/2.75?7.5625*(Z-=1.5/2.75)*Z+.75:Z<2.5/2.75?7.5625*(Z-=2.25/2.75)*Z+.9375:7.5625*(Z-=2.625/2.75)*Z+.984375}e.interpolateHcl=hf;function hf(Z,oe){Z=e.hcl(Z),oe=e.hcl(oe);var we=Z.h,Be=Z.c,Ue=Z.l,We=oe.h-we,wt=oe.c-Be,tt=oe.l-Ue;return isNaN(wt)&&(wt=0,Be=isNaN(Be)?oe.c:Be),isNaN(We)?(We=0,we=isNaN(we)?oe.h:we):We>180?We-=360:We<-180&&(We+=360),function(zt){return Fr(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateHsl=kh;function kh(Z,oe){Z=e.hsl(Z),oe=e.hsl(oe);var we=Z.h,Be=Z.s,Ue=Z.l,We=oe.h-we,wt=oe.s-Be,tt=oe.l-Ue;return isNaN(wt)&&(wt=0,Be=isNaN(Be)?oe.s:Be),isNaN(We)?(We=0,we=isNaN(we)?oe.h:we):We>180?We-=360:We<-180&&(We+=360),function(zt){return jt(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateLab=Kh;function Kh(Z,oe){Z=e.lab(Z),oe=e.lab(oe);var we=Z.l,Be=Z.a,Ue=Z.b,We=oe.l-we,wt=oe.a-Be,tt=oe.b-Ue;return function(zt){return Gi(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateRound=rc;function rc(Z,oe){return oe-=Z,function(we){return Math.round(Z+oe*we)}}e.transform=function(Z){var oe=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(we){if(we!=null){oe.setAttribute("transform",we);var Be=oe.transform.baseVal.consolidate()}return new ah(Be?Be.matrix:Nf)})(Z)};function ah(Z){var oe=[Z.a,Z.b],we=[Z.c,Z.d],Be=df(oe),Ue=Zc(oe,we),We=df(Cu(we,oe,-Ue))||0;oe[0]*we[1]180?oe+=360:oe-Z>180&&(Z+=360),Be.push({i:we.push(Xc(we)+"rotate(",null,")")-2,x:$s(Z,oe)})):oe&&we.push(Xc(we)+"rotate("+oe+")")}function Bd(Z,oe,we,Be){Z!==oe?Be.push({i:we.push(Xc(we)+"skewX(",null,")")-2,x:$s(Z,oe)}):oe&&we.push(Xc(we)+"skewX("+oe+")")}function Jh(Z,oe,we,Be){if(Z[0]!==oe[0]||Z[1]!==oe[1]){var Ue=we.push(Xc(we)+"scale(",null,",",null,")");Be.push({i:Ue-4,x:$s(Z[0],oe[0])},{i:Ue-2,x:$s(Z[1],oe[1])})}else(oe[0]!==1||oe[1]!==1)&&we.push(Xc(we)+"scale("+oe+")")}function Cf(Z,oe){var we=[],Be=[];return Z=e.transform(Z),oe=e.transform(oe),ds(Z.translate,oe.translate,we,Be),Ch(Z.rotate,oe.rotate,we,Be),Bd(Z.skew,oe.skew,we,Be),Jh(Z.scale,oe.scale,we,Be),Z=oe=null,function(Ue){for(var We=-1,wt=Be.length,tt;++We0?We=Jr:(we.c=null,we.t=NaN,we=null,oe.end({type:"end",alpha:We=0})):Jr>0&&(oe.start({type:"start",alpha:We=Jr}),we=Oo(Z.tick)),Z):We},Z.start=function(){var Jr,un=oi.length,dn=ui.length,En=Be[0],Nn=Be[1],ga,ya;for(Jr=0;Jr=0;)We.push(lr=or[zt]),lr.parent=tt,lr.depth=tt.depth+1;we&&(tt.value=0),tt.children=or}else we&&(tt.value=+we.call(Be,tt,tt.depth)||0),delete tt.children;return vc(Ue,function(Dr){var Ir,oi;Z&&(Ir=Dr.children)&&Ir.sort(Z),we&&(oi=Dr.parent)&&(oi.value+=Dr.value)}),wt}return Be.sort=function(Ue){return arguments.length?(Z=Ue,Be):Z},Be.children=function(Ue){return arguments.length?(oe=Ue,Be):oe},Be.value=function(Ue){return arguments.length?(we=Ue,Be):we},Be.revalue=function(Ue){return we&&(Pc(Ue,function(We){We.children&&(We.value=0)}),vc(Ue,function(We){var wt;We.children||(We.value=+we.call(Be,We,We.depth)||0),(wt=We.parent)&&(wt.value+=We.value)})),Ue},Be};function Gu(Z,oe){return e.rebind(Z,oe,"sort","children","value"),Z.nodes=Z,Z.links=Iu,Z}function Pc(Z,oe){for(var we=[Z];(Z=we.pop())!=null;)if(oe(Z),(Ue=Z.children)&&(Be=Ue.length))for(var Be,Ue;--Be>=0;)we.push(Ue[Be])}function vc(Z,oe){for(var we=[Z],Be=[];(Z=we.pop())!=null;)if(Be.push(Z),(wt=Z.children)&&(We=wt.length))for(var Ue=-1,We,wt;++UeUe&&(Ue=tt),Be.push(tt)}for(wt=0;wtBe&&(we=oe,Be=Ue);return we}function Is(Z){return Z.reduce(Pf,0)}function Pf(Z,oe){return Z+oe[1]}e.layout.histogram=function(){var Z=!0,oe=Number,we=Vf,Be=Ic;function Ue(We,Ir){for(var tt=[],zt=We.map(oe,this),or=we.call(this,zt,Ir),lr=Be.call(this,or,zt,Ir),Dr,Ir=-1,oi=zt.length,ui=lr.length-1,qr=Z?1:1/oi,Kr;++Ir0)for(Ir=-1;++Ir=or[0]&&Kr<=or[1]&&(Dr=tt[e.bisect(lr,Kr,1,ui)-1],Dr.y+=qr,Dr.push(We[Ir]));return tt}return Ue.value=function(We){return arguments.length?(oe=We,Ue):oe},Ue.range=function(We){return arguments.length?(we=ti(We),Ue):we},Ue.bins=function(We){return arguments.length?(Be=typeof We=="number"?function(wt){return ju(wt,We)}:ti(We),Ue):Be},Ue.frequency=function(We){return arguments.length?(Z=!!We,Ue):Z},Ue};function Ic(Z,oe){return ju(Z,Math.ceil(Math.log(oe.length)/Math.LN2+1))}function ju(Z,oe){for(var we=-1,Be=+Z[0],Ue=(Z[1]-Be)/oe,We=[];++we<=oe;)We[we]=Ue*we+Be;return We}function Vf(Z){return[e.min(Z),e.max(Z)]}e.layout.pack=function(){var Z=e.layout.hierarchy().sort(pc),oe=0,we=[1,1],Be;function Ue(We,wt){var tt=Z.call(this,We,wt),zt=tt[0],or=we[0],lr=we[1],Dr=Be==null?Math.sqrt:typeof Be=="function"?Be:function(){return Be};if(zt.x=zt.y=0,vc(zt,function(oi){oi.r=+Dr(oi.value)}),vc(zt,Ih),oe){var Ir=oe*(Be?1:Math.max(2*zt.r/or,2*zt.r/lr))/2;vc(zt,function(oi){oi.r+=Ir}),vc(zt,Ih),vc(zt,function(oi){oi.r-=Ir})}return gc(zt,or/2,lr/2,Be?1:1/Math.max(2*zt.r/or,2*zt.r/lr)),tt}return Ue.size=function(We){return arguments.length?(we=We,Ue):we},Ue.radius=function(We){return arguments.length?(Be=We==null||typeof We=="function"?We:+We,Ue):Be},Ue.padding=function(We){return arguments.length?(oe=+We,Ue):oe},Gu(Ue,Z)};function pc(Z,oe){return Z.value-oe.value}function pf(Z,oe){var we=Z._pack_next;Z._pack_next=oe,oe._pack_prev=Z,oe._pack_next=we,we._pack_prev=oe}function Ph(Z,oe){Z._pack_next=oe,oe._pack_prev=Z}function Dl(Z,oe){var we=oe.x-Z.x,Be=oe.y-Z.y,Ue=Z.r+oe.r;return .999*Ue*Ue>we*we+Be*Be}function Ih(Z){if(!(oe=Z.children)||!(Ir=oe.length))return;var oe,we=1/0,Be=-1/0,Ue=1/0,We=-1/0,wt,tt,zt,or,lr,Dr,Ir;function oi(Jr){we=Math.min(Jr.x-Jr.r,we),Be=Math.max(Jr.x+Jr.r,Be),Ue=Math.min(Jr.y-Jr.r,Ue),We=Math.max(Jr.y+Jr.r,We)}if(oe.forEach(Wu),wt=oe[0],wt.x=-wt.r,wt.y=0,oi(wt),Ir>1&&(tt=oe[1],tt.x=tt.r,tt.y=0,oi(tt),Ir>2))for(zt=oe[2],hl(wt,tt,zt),oi(zt),pf(wt,zt),wt._pack_prev=zt,pf(zt,tt),tt=wt._pack_next,or=3;orKr.x&&(Kr=un),un.depth>ii.depth&&(ii=un)});var vi=oe(qr,Kr)/2-qr.x,ci=we[0]/(Kr.x+oe(Kr,qr)/2+vi),Jr=we[1]/(ii.depth||1);Pc(oi,function(un){un.x=(un.x+vi)*ci,un.y=un.depth*Jr})}return Ir}function We(lr){for(var Dr={A:null,children:[lr]},Ir=[Dr],oi;(oi=Ir.pop())!=null;)for(var ui=oi.children,qr,Kr=0,ii=ui.length;Kr0&&(nc(gt(qr,lr,Ir),lr,un),ii+=un,vi+=un),ci+=qr.m,ii+=oi.m,Jr+=Kr.m,vi+=ui.m;qr&&!Kc(ui)&&(ui.t=qr,ui.m+=ci-vi),oi&&!mc(Kr)&&(Kr.t=oi,Kr.m+=ii-Jr,Ir=lr)}return Ir}function or(lr){lr.x*=we[0],lr.y=lr.depth*we[1]}return Ue.separation=function(lr){return arguments.length?(oe=lr,Ue):oe},Ue.size=function(lr){return arguments.length?(Be=(we=lr)==null?or:null,Ue):Be?null:we},Ue.nodeSize=function(lr){return arguments.length?(Be=(we=lr)==null?null:or,Ue):Be?we:null},Gu(Ue,Z)};function iu(Z,oe){return Z.parent==oe.parent?1:2}function mc(Z){var oe=Z.children;return oe.length?oe[0]:Z.t}function Kc(Z){var oe=Z.children,we;return(we=oe.length)?oe[we-1]:Z.t}function nc(Z,oe,we){var Be=we/(oe.i-Z.i);oe.c-=Be,oe.s+=we,Z.c+=Be,oe.z+=we,oe.m+=we}function gf(Z){for(var oe=0,we=0,Be=Z.children,Ue=Be.length,We;--Ue>=0;)We=Be[Ue],We.z+=oe,We.m+=oe,oe+=We.s+(we+=We.c)}function gt(Z,oe,we){return Z.a.parent===oe.parent?Z.a:we}e.layout.cluster=function(){var Z=e.layout.hierarchy().sort(null).value(null),oe=iu,we=[1,1],Be=!1;function Ue(We,wt){var tt=Z.call(this,We,wt),zt=tt[0],or,lr=0;vc(zt,function(qr){var Kr=qr.children;Kr&&Kr.length?(qr.x=wr(Kr),qr.y=Bt(Kr)):(qr.x=or?lr+=oe(qr,or):0,qr.y=0,or=qr)});var Dr=vr(zt),Ir=Ur(zt),oi=Dr.x-oe(Dr,Ir)/2,ui=Ir.x+oe(Ir,Dr)/2;return vc(zt,Be?function(qr){qr.x=(qr.x-zt.x)*we[0],qr.y=(zt.y-qr.y)*we[1]}:function(qr){qr.x=(qr.x-oi)/(ui-oi)*we[0],qr.y=(1-(zt.y?qr.y/zt.y:1))*we[1]}),tt}return Ue.separation=function(We){return arguments.length?(oe=We,Ue):oe},Ue.size=function(We){return arguments.length?(Be=(we=We)==null,Ue):Be?null:we},Ue.nodeSize=function(We){return arguments.length?(Be=(we=We)!=null,Ue):Be?we:null},Gu(Ue,Z)};function Bt(Z){return 1+e.max(Z,function(oe){return oe.y})}function wr(Z){return Z.reduce(function(oe,we){return oe+we.x},0)/Z.length}function vr(Z){var oe=Z.children;return oe&&oe.length?vr(oe[0]):Z}function Ur(Z){var oe=Z.children,we;return oe&&(we=oe.length)?Ur(oe[we-1]):Z}e.layout.treemap=function(){var Z=e.layout.hierarchy(),oe=Math.round,we=[1,1],Be=null,Ue=fi,We=!1,wt,tt="squarify",zt=.5*(1+Math.sqrt(5));function or(qr,Kr){for(var ii=-1,vi=qr.length,ci,Jr;++ii0;)vi.push(Jr=ci[Nn-1]),vi.area+=Jr.area,tt!=="squarify"||(dn=Ir(vi,En))<=un?(ci.pop(),un=dn):(vi.area-=vi.pop().area,oi(vi,En,ii,!1),En=Math.min(ii.dx,ii.dy),vi.length=vi.area=0,un=1/0);vi.length&&(oi(vi,En,ii,!0),vi.length=vi.area=0),Kr.forEach(lr)}}function Dr(qr){var Kr=qr.children;if(Kr&&Kr.length){var ii=Ue(qr),vi=Kr.slice(),ci,Jr=[];for(or(vi,ii.dx*ii.dy/qr.value),Jr.area=0;ci=vi.pop();)Jr.push(ci),Jr.area+=ci.area,ci.z!=null&&(oi(Jr,ci.z?ii.dx:ii.dy,ii,!vi.length),Jr.length=Jr.area=0);Kr.forEach(Dr)}}function Ir(qr,Kr){for(var ii=qr.area,vi,ci=0,Jr=1/0,un=-1,dn=qr.length;++unci&&(ci=vi));return ii*=ii,Kr*=Kr,ii?Math.max(Kr*ci*zt/ii,ii/(Kr*Jr*zt)):1/0}function oi(qr,Kr,ii,vi){var ci=-1,Jr=qr.length,un=ii.x,dn=ii.y,En=Kr?oe(qr.area/Kr):0,Nn;if(Kr==ii.dx){for((vi||En>ii.dy)&&(En=ii.dy);++ciii.dx)&&(En=ii.dx);++ci1);return Z+oe*Be*Math.sqrt(-2*Math.log(We)/We)}},logNormal:function(){var Z=e.random.normal.apply(e,arguments);return function(){return Math.exp(Z())}},bates:function(Z){var oe=e.random.irwinHall(Z);return function(){return oe()/Z}},irwinHall:function(Z){return function(){for(var oe=0,we=0;we2?mi:hn,or=Be?Lu:pd;return Ue=zt(Z,oe,or,we),We=zt(oe,Z,or,Sl),tt}function tt(zt){return Ue(zt)}return tt.invert=function(zt){return We(zt)},tt.domain=function(zt){return arguments.length?(Z=zt.map(Number),wt()):Z},tt.range=function(zt){return arguments.length?(oe=zt,wt()):oe},tt.rangeRound=function(zt){return tt.range(zt).interpolate(rc)},tt.clamp=function(zt){return arguments.length?(Be=zt,wt()):Be},tt.interpolate=function(zt){return arguments.length?(we=zt,wt()):we},tt.ticks=function(zt){return qa(Z,zt)},tt.tickFormat=function(zt,or){return d3_scale_linearTickFormat(Z,zt,or)},tt.nice=function(zt){return Ta(Z,zt),wt()},tt.copy=function(){return Pn(Z,oe,we,Be)},wt()}function Ma(Z,oe){return e.rebind(Z,oe,"range","rangeRound","interpolate","clamp")}function Ta(Z,oe){return Ti(Z,qi(Ea(Z,oe)[2])),Ti(Z,qi(Ea(Z,oe)[2])),Z}function Ea(Z,oe){oe==null&&(oe=10);var we=Fi(Z),Be=we[1]-we[0],Ue=Math.pow(10,Math.floor(Math.log(Be/oe)/Math.LN10)),We=oe/Be*Ue;return We<=.15?Ue*=10:We<=.35?Ue*=5:We<=.75&&(Ue*=2),we[0]=Math.ceil(we[0]/Ue)*Ue,we[1]=Math.floor(we[1]/Ue)*Ue+Ue*.5,we[2]=Ue,we}function qa(Z,oe){return e.range.apply(e,Ea(Z,oe))}var Cn={s:1,g:1,p:1,r:1,e:1};function sn(Z){return-Math.floor(Math.log(Z)/Math.LN10+.01)}function Ua(Z,oe){var we=sn(oe[2]);return Z in Cn?Math.abs(we-sn(Math.max(p(oe[0]),p(oe[1]))))+ +(Z!=="e"):we-(Z==="%")*2}e.scale.log=function(){return mo(e.scale.linear().domain([0,1]),10,!0,[1,10])};function mo(Z,oe,we,Be){function Ue(tt){return(we?Math.log(tt<0?0:tt):-Math.log(tt>0?0:-tt))/Math.log(oe)}function We(tt){return we?Math.pow(oe,tt):-Math.pow(oe,-tt)}function wt(tt){return Z(Ue(tt))}return wt.invert=function(tt){return We(Z.invert(tt))},wt.domain=function(tt){return arguments.length?(we=tt[0]>=0,Z.domain((Be=tt.map(Number)).map(Ue)),wt):Be},wt.base=function(tt){return arguments.length?(oe=+tt,Z.domain(Be.map(Ue)),wt):oe},wt.nice=function(){var tt=Ti(Be.map(Ue),we?Math:Xo);return Z.domain(tt),Be=tt.map(We),wt},wt.ticks=function(){var tt=Fi(Be),zt=[],or=tt[0],lr=tt[1],Dr=Math.floor(Ue(or)),Ir=Math.ceil(Ue(lr)),oi=oe%1?2:oe;if(isFinite(Ir-Dr)){if(we){for(;Dr0;ui--)zt.push(We(Dr)*ui);for(Dr=0;zt[Dr]lr;Ir--);zt=zt.slice(Dr,Ir)}return zt},wt.copy=function(){return mo(Z.copy(),oe,we,Be)},Ma(wt,Z)}var Xo={floor:function(Z){return-Math.ceil(-Z)},ceil:function(Z){return-Math.floor(-Z)}};e.scale.pow=function(){return Ts(e.scale.linear(),1,[0,1])};function Ts(Z,oe,we){var Be=Qo(oe),Ue=Qo(1/oe);function We(wt){return Z(Be(wt))}return We.invert=function(wt){return Ue(Z.invert(wt))},We.domain=function(wt){return arguments.length?(Z.domain((we=wt.map(Number)).map(Be)),We):we},We.ticks=function(wt){return qa(we,wt)},We.tickFormat=function(wt,tt){return d3_scale_linearTickFormat(we,wt,tt)},We.nice=function(wt){return We.domain(Ta(we,wt))},We.exponent=function(wt){return arguments.length?(Be=Qo(oe=wt),Ue=Qo(1/oe),Z.domain(we.map(Be)),We):oe},We.copy=function(){return Ts(Z.copy(),oe,we)},Ma(We,Z)}function Qo(Z){return function(oe){return oe<0?-Math.pow(-oe,Z):Math.pow(oe,Z)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return ys([],{t:"range",a:[[]]})};function ys(Z,oe){var we,Be,Ue;function We(tt){return Be[((we.get(tt)||(oe.t==="range"?we.set(tt,Z.push(tt)):NaN))-1)%Be.length]}function wt(tt,zt){return e.range(Z.length).map(function(or){return tt+zt*or})}return We.domain=function(tt){if(!arguments.length)return Z;Z=[],we=new A;for(var zt=-1,or=tt.length,lr;++zt0?we[We-1]:Z[0],WeIr?0:1;if(lr=Le)return zt(lr,ui)+(or?zt(or,1-ui):"")+"Z";var qr,Kr,ii,vi,ci=0,Jr=0,un,dn,En,Nn,ga,ya,so,wa,io=[];if((vi=(+wt.apply(this,arguments)||0)/2)&&(ii=Be===Ru?Math.sqrt(or*or+lr*lr):+Be.apply(this,arguments),ui||(Jr*=-1),lr&&(Jr=Qr(ii/lr*Math.sin(vi))),or&&(ci=Qr(ii/or*Math.sin(vi)))),lr){un=lr*Math.cos(Dr+Jr),dn=lr*Math.sin(Dr+Jr),En=lr*Math.cos(Ir-Jr),Nn=lr*Math.sin(Ir-Jr);var Ss=Math.abs(Ir-Dr-2*Jr)<=Xe?0:1;if(Jr&&Dc(un,dn,En,Nn)===ui^Ss){var _s=(Dr+Ir)/2;un=lr*Math.cos(_s),dn=lr*Math.sin(_s),En=Nn=null}}else un=dn=0;if(or){ga=or*Math.cos(Ir-ci),ya=or*Math.sin(Ir-ci),so=or*Math.cos(Dr+ci),wa=or*Math.sin(Dr+ci);var Ns=Math.abs(Dr-Ir+2*ci)<=Xe?0:1;if(ci&&Dc(ga,ya,so,wa)===1-ui^Ns){var pn=(Dr+Ir)/2;ga=or*Math.cos(pn),ya=or*Math.sin(pn),so=wa=null}}else ga=ya=0;if(oi>Ye&&(qr=Math.min(Math.abs(lr-or)/2,+we.apply(this,arguments)))>.001){Kr=or0?0:1}function Da(Z,oe,we,Be,Ue){var We=Z[0]-oe[0],wt=Z[1]-oe[1],tt=(Ue?Be:-Be)/Math.sqrt(We*We+wt*wt),zt=tt*wt,or=-tt*We,lr=Z[0]+zt,Dr=Z[1]+or,Ir=oe[0]+zt,oi=oe[1]+or,ui=(lr+Ir)/2,qr=(Dr+oi)/2,Kr=Ir-lr,ii=oi-Dr,vi=Kr*Kr+ii*ii,ci=we-Be,Jr=lr*oi-Ir*Dr,un=(ii<0?-1:1)*Math.sqrt(Math.max(0,ci*ci*vi-Jr*Jr)),dn=(Jr*ii-Kr*un)/vi,En=(-Jr*Kr-ii*un)/vi,Nn=(Jr*ii+Kr*un)/vi,ga=(-Jr*Kr+ii*un)/vi,ya=dn-ui,so=En-qr,wa=Nn-ui,io=ga-qr;return ya*ya+so*so>wa*wa+io*io&&(dn=Nn,En=ga),[[dn-zt,En-or],[dn*we/ci,En*we/ci]]}function eo(){return!0}function $c(Z){var oe=zs,we=ks,Be=eo,Ue=_c,We=Ue.key,wt=.7;function tt(zt){var or=[],lr=[],Dr=-1,Ir=zt.length,oi,ui=ti(oe),qr=ti(we);function Kr(){or.push("M",Ue(Z(lr),wt))}for(;++Dr1?Z.join("L"):Z+"Z"}function le(Z){return Z.join("L")+"Z"}function w(Z){for(var oe=0,we=Z.length,Be=Z[0],Ue=[Be[0],",",Be[1]];++oe1&&Ue.push("H",Be[0]),Ue.join("")}function B(Z){for(var oe=0,we=Z.length,Be=Z[0],Ue=[Be[0],",",Be[1]];++oe1){tt=oe[1],We=Z[zt],zt++,Be+="C"+(Ue[0]+wt[0])+","+(Ue[1]+wt[1])+","+(We[0]-tt[0])+","+(We[1]-tt[1])+","+We[0]+","+We[1];for(var or=2;or9&&(We=we*3/Math.sqrt(We),wt[tt]=We*Be,wt[tt+1]=We*Ue));for(tt=-1;++tt<=zt;)We=(Z[Math.min(zt,tt+1)][0]-Z[Math.max(0,tt-1)][0])/(6*(1+wt[tt]*wt[tt])),oe.push([We||0,wt[tt]*We||0]);return oe}function Mt(Z){return Z.length<3?_c(Z):Z[0]+je(Z,et(Z))}e.svg.line.radial=function(){var Z=$c(Dt);return Z.radius=Z.x,delete Z.x,Z.angle=Z.y,delete Z.y,Z};function Dt(Z){for(var oe,we=-1,Be=Z.length,Ue,We;++weXe)+",1 "+Dr}function or(lr,Dr,Ir,oi){return"Q 0,0 "+oi}return We.radius=function(lr){return arguments.length?(we=ti(lr),We):we},We.source=function(lr){return arguments.length?(Z=ti(lr),We):Z},We.target=function(lr){return arguments.length?(oe=ti(lr),We):oe},We.startAngle=function(lr){return arguments.length?(Be=ti(lr),We):Be},We.endAngle=function(lr){return arguments.length?(Ue=ti(lr),We):Ue},We};function Rr(Z){return Z.radius}e.svg.diagonal=function(){var Z=tr,oe=mr,we=zr;function Be(Ue,We){var wt=Z.call(this,Ue,We),tt=oe.call(this,Ue,We),zt=(wt.y+tt.y)/2,or=[wt,{x:wt.x,y:zt},{x:tt.x,y:zt},tt];return or=or.map(we),"M"+or[0]+"C"+or[1]+" "+or[2]+" "+or[3]}return Be.source=function(Ue){return arguments.length?(Z=ti(Ue),Be):Z},Be.target=function(Ue){return arguments.length?(oe=ti(Ue),Be):oe},Be.projection=function(Ue){return arguments.length?(we=Ue,Be):we},Be};function zr(Z){return[Z.x,Z.y]}e.svg.diagonal.radial=function(){var Z=e.svg.diagonal(),oe=zr,we=Z.projection;return Z.projection=function(Be){return arguments.length?we(Xr(oe=Be)):oe},Z};function Xr(Z){return function(){var oe=Z.apply(this,arguments),we=oe[0],Be=oe[1]-xe;return[we*Math.cos(Be),we*Math.sin(Be)]}}e.svg.symbol=function(){var Z=Li,oe=di;function we(Be,Ue){return(Qi.get(Z.call(this,Be,Ue))||Ci)(oe.call(this,Be,Ue))}return we.type=function(Be){return arguments.length?(Z=ti(Be),we):Z},we.size=function(Be){return arguments.length?(oe=ti(Be),we):oe},we};function di(){return 64}function Li(){return"circle"}function Ci(Z){var oe=Math.sqrt(Z/Xe);return"M0,"+oe+"A"+oe+","+oe+" 0 1,1 0,"+-oe+"A"+oe+","+oe+" 0 1,1 0,"+oe+"Z"}var Qi=e.map({circle:Ci,cross:function(Z){var oe=Math.sqrt(Z/5)/2;return"M"+-3*oe+","+-oe+"H"+-oe+"V"+-3*oe+"H"+oe+"V"+-oe+"H"+3*oe+"V"+oe+"H"+oe+"V"+3*oe+"H"+-oe+"V"+oe+"H"+-3*oe+"Z"},diamond:function(Z){var oe=Math.sqrt(Z/(2*pa)),we=oe*pa;return"M0,"+-oe+"L"+we+",0 0,"+oe+" "+-we+",0Z"},square:function(Z){var oe=Math.sqrt(Z)/2;return"M"+-oe+","+-oe+"L"+oe+","+-oe+" "+oe+","+oe+" "+-oe+","+oe+"Z"},"triangle-down":function(Z){var oe=Math.sqrt(Z/Mn),we=oe*Mn/2;return"M0,"+we+"L"+oe+","+-we+" "+-oe+","+-we+"Z"},"triangle-up":function(Z){var oe=Math.sqrt(Z/Mn),we=oe*Mn/2;return"M0,"+-we+"L"+oe+","+we+" "+-oe+","+we+"Z"}});e.svg.symbolTypes=Qi.keys();var Mn=Math.sqrt(3),pa=Math.tan(30*Se);Ce.transition=function(Z){for(var oe=Ro||++co,we=po(Z),Be=[],Ue,We,wt=Ds||{time:Date.now(),ease:uu,delay:0,duration:250},tt=-1,zt=this.length;++tt0;)Dr[--vi].call(Z,ii);if(Kr>=1)return wt.event&&wt.event.end.call(Z,Z.__data__,oe),--We.count?delete We[Be]:delete Z[we],1}wt||(tt=Ue.time,zt=Oo(Ir,0,tt),wt=We[Be]={tween:new A,time:tt,timer:zt,delay:Ue.delay,duration:Ue.duration,ease:Ue.ease,index:oe},Ue=null,++We.count)}e.svg.axis=function(){var Z=e.scale.linear(),oe=Gl,we=6,Be=6,Ue=3,We=[10],wt=null,tt;function zt(or){or.each(function(){var lr=e.select(this),Dr=this.__chart__||Z,Ir=this.__chart__=Z.copy(),oi=wt==null?Ir.ticks?Ir.ticks.apply(Ir,We):Ir.domain():wt,ui=tt==null?Ir.tickFormat?Ir.tickFormat.apply(Ir,We):H:tt,qr=lr.selectAll(".tick").data(oi,Ir),Kr=qr.enter().insert("g",".domain").attr("class","tick").style("opacity",Ye),ii=e.transition(qr.exit()).style("opacity",Ye).remove(),vi=e.transition(qr.order()).style("opacity",1),ci=Math.max(we,0)+Ue,Jr,un=Xi(Ir),dn=lr.selectAll(".domain").data([0]),En=(dn.enter().append("path").attr("class","domain"),e.transition(dn));Kr.append("line"),Kr.append("text");var Nn=Kr.select("line"),ga=vi.select("line"),ya=qr.select("text").text(ui),so=Kr.select("text"),wa=vi.select("text"),io=oe==="top"||oe==="left"?-1:1,Ss,_s,Ns,pn;if(oe==="bottom"||oe==="top"?(Jr=cu,Ss="x",Ns="y",_s="x2",pn="y2",ya.attr("dy",io<0?"0em":".71em").style("text-anchor","middle"),En.attr("d","M"+un[0]+","+io*Be+"V0H"+un[1]+"V"+io*Be)):(Jr=el,Ss="y",Ns="x",_s="y2",pn="x2",ya.attr("dy",".32em").style("text-anchor",io<0?"end":"start"),En.attr("d","M"+io*Be+","+un[0]+"H0V"+un[1]+"H"+io*Be)),Nn.attr(pn,io*we),so.attr(Ns,io*ci),ga.attr(_s,0).attr(pn,io*we),wa.attr(Ss,0).attr(Ns,io*ci),Ir.rangeBand){var za=Ir,Lo=za.rangeBand()/2;Dr=Ir=function(Fo){return za(Fo)+Lo}}else Dr.rangeBand?Dr=Ir:ii.call(Jr,Ir,Dr);Kr.call(Jr,Dr,Ir),vi.call(Jr,Ir,Ir)})}return zt.scale=function(or){return arguments.length?(Z=or,zt):Z},zt.orient=function(or){return arguments.length?(oe=or in Zu?or+"":Gl,zt):oe},zt.ticks=function(){return arguments.length?(We=r(arguments),zt):We},zt.tickValues=function(or){return arguments.length?(wt=or,zt):wt},zt.tickFormat=function(or){return arguments.length?(tt=or,zt):tt},zt.tickSize=function(or){var lr=arguments.length;return lr?(we=+or,Be=+arguments[lr-1],zt):we},zt.innerTickSize=function(or){return arguments.length?(we=+or,zt):we},zt.outerTickSize=function(or){return arguments.length?(Be=+or,zt):Be},zt.tickPadding=function(or){return arguments.length?(Ue=+or,zt):Ue},zt.tickSubdivide=function(){return arguments.length&&zt},zt};var Gl="bottom",Zu={top:1,right:1,bottom:1,left:1};function cu(Z,oe,we){Z.attr("transform",function(Be){var Ue=oe(Be);return"translate("+(isFinite(Ue)?Ue:we(Be))+",0)"})}function el(Z,oe,we){Z.attr("transform",function(Be){var Ue=oe(Be);return"translate(0,"+(isFinite(Ue)?Ue:we(Be))+")"})}e.svg.brush=function(){var Z=ke(lr,"brushstart","brush","brushend"),oe=null,we=null,Be=[0,0],Ue=[0,0],We,wt,tt=!0,zt=!0,or=zc[0];function lr(qr){qr.each(function(){var Kr=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",ui).on("touchstart.brush",ui),ii=Kr.selectAll(".background").data([0]);ii.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Kr.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var vi=Kr.selectAll(".resize").data(or,H);vi.exit().remove(),vi.enter().append("g").attr("class",function(dn){return"resize "+dn}).style("cursor",function(dn){return au[dn]}).append("rect").attr("x",function(dn){return/[ew]$/.test(dn)?-3:null}).attr("y",function(dn){return/^[ns]/.test(dn)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),vi.style("display",lr.empty()?"none":null);var ci=e.transition(Kr),Jr=e.transition(ii),un;oe&&(un=Xi(oe),Jr.attr("x",un[0]).attr("width",un[1]-un[0]),Ir(ci)),we&&(un=Xi(we),Jr.attr("y",un[0]).attr("height",un[1]-un[0]),oi(ci)),Dr(ci)})}lr.event=function(qr){qr.each(function(){var Kr=Z.of(this,arguments),ii={x:Be,y:Ue,i:We,j:wt},vi=this.__chart__||ii;this.__chart__=ii,Ro?e.select(this).transition().each("start.brush",function(){We=vi.i,wt=vi.j,Be=vi.x,Ue=vi.y,Kr({type:"brushstart"})}).tween("brush:brush",function(){var ci=ec(Be,ii.x),Jr=ec(Ue,ii.y);return We=wt=null,function(un){Be=ii.x=ci(un),Ue=ii.y=Jr(un),Kr({type:"brush",mode:"resize"})}}).each("end.brush",function(){We=ii.i,wt=ii.j,Kr({type:"brush",mode:"resize"}),Kr({type:"brushend"})}):(Kr({type:"brushstart"}),Kr({type:"brush",mode:"resize"}),Kr({type:"brushend"}))})};function Dr(qr){qr.selectAll(".resize").attr("transform",function(Kr){return"translate("+Be[+/e$/.test(Kr)]+","+Ue[+/^s/.test(Kr)]+")"})}function Ir(qr){qr.select(".extent").attr("x",Be[0]),qr.selectAll(".extent,.n>rect,.s>rect").attr("width",Be[1]-Be[0])}function oi(qr){qr.select(".extent").attr("y",Ue[0]),qr.selectAll(".extent,.e>rect,.w>rect").attr("height",Ue[1]-Ue[0])}function ui(){var qr=this,Kr=e.select(e.event.target),ii=Z.of(qr,arguments),vi=e.select(qr),ci=Kr.datum(),Jr=!/^(n|s)$/.test(ci)&&oe,un=!/^(e|w)$/.test(ci)&&we,dn=Kr.classed("extent"),En=Or(qr),Nn,ga=e.mouse(qr),ya,so=e.select(a(qr)).on("keydown.brush",Ss).on("keyup.brush",_s);if(e.event.changedTouches?so.on("touchmove.brush",Ns).on("touchend.brush",za):so.on("mousemove.brush",Ns).on("mouseup.brush",za),vi.interrupt().selectAll("*").interrupt(),dn)ga[0]=Be[0]-ga[0],ga[1]=Ue[0]-ga[1];else if(ci){var wa=+/w$/.test(ci),io=+/^n/.test(ci);ya=[Be[1-wa]-ga[0],Ue[1-io]-ga[1]],ga[0]=Be[wa],ga[1]=Ue[io]}else e.event.altKey&&(Nn=ga.slice());vi.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Kr.style("cursor")),ii({type:"brushstart"}),Ns();function Ss(){e.event.keyCode==32&&(dn||(Nn=null,ga[0]-=Be[1],ga[1]-=Ue[1],dn=2),_e())}function _s(){e.event.keyCode==32&&dn==2&&(ga[0]+=Be[1],ga[1]+=Ue[1],dn=0,_e())}function Ns(){var Lo=e.mouse(qr),Fo=!1;ya&&(Lo[0]+=ya[0],Lo[1]+=ya[1]),dn||(e.event.altKey?(Nn||(Nn=[(Be[0]+Be[1])/2,(Ue[0]+Ue[1])/2]),ga[0]=Be[+(Lo[0]{(function(e,t){typeof a6=="object"&&typeof hee!="undefined"?t(a6):(e=e||self,t(e.d3=e.d3||{}))})(a6,function(e){"use strict";var t=new Date,r=new Date;function n(Ke,xt,bt,Lt){function St(Et){return Ke(Et=arguments.length===0?new Date:new Date(+Et)),Et}return St.floor=function(Et){return Ke(Et=new Date(+Et)),Et},St.ceil=function(Et){return Ke(Et=new Date(Et-1)),xt(Et,1),Ke(Et),Et},St.round=function(Et){var dt=St(Et),Ht=St.ceil(Et);return Et-dt0))return $t;do $t.push(fr=new Date(+Et)),xt(Et,Ht),Ke(Et);while(fr=dt)for(;Ke(dt),!Et(dt);)dt.setTime(dt-1)},function(dt,Ht){if(dt>=dt)if(Ht<0)for(;++Ht<=0;)for(;xt(dt,-1),!Et(dt););else for(;--Ht>=0;)for(;xt(dt,1),!Et(dt););})},bt&&(St.count=function(Et,dt){return t.setTime(+Et),r.setTime(+dt),Ke(t),Ke(r),Math.floor(bt(t,r))},St.every=function(Et){return Et=Math.floor(Et),!isFinite(Et)||!(Et>0)?null:Et>1?St.filter(Lt?function(dt){return Lt(dt)%Et===0}:function(dt){return St.count(0,dt)%Et===0}):St}),St}var i=n(function(){},function(Ke,xt){Ke.setTime(+Ke+xt)},function(Ke,xt){return xt-Ke});i.every=function(Ke){return Ke=Math.floor(Ke),!isFinite(Ke)||!(Ke>0)?null:Ke>1?n(function(xt){xt.setTime(Math.floor(xt/Ke)*Ke)},function(xt,bt){xt.setTime(+xt+bt*Ke)},function(xt,bt){return(bt-xt)/Ke}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,c=6048e5,f=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds())},function(Ke,xt){Ke.setTime(+Ke+xt*o)},function(Ke,xt){return(xt-Ke)/o},function(Ke){return Ke.getUTCSeconds()}),h=f.range,d=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds()-Ke.getSeconds()*o)},function(Ke,xt){Ke.setTime(+Ke+xt*s)},function(Ke,xt){return(xt-Ke)/s},function(Ke){return Ke.getMinutes()}),v=d.range,x=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds()-Ke.getSeconds()*o-Ke.getMinutes()*s)},function(Ke,xt){Ke.setTime(+Ke+xt*l)},function(Ke,xt){return(xt-Ke)/l},function(Ke){return Ke.getHours()}),b=x.range,p=n(function(Ke){Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setDate(Ke.getDate()+xt)},function(Ke,xt){return(xt-Ke-(xt.getTimezoneOffset()-Ke.getTimezoneOffset())*s)/u},function(Ke){return Ke.getDate()-1}),E=p.range;function k(Ke){return n(function(xt){xt.setDate(xt.getDate()-(xt.getDay()+7-Ke)%7),xt.setHours(0,0,0,0)},function(xt,bt){xt.setDate(xt.getDate()+bt*7)},function(xt,bt){return(bt-xt-(bt.getTimezoneOffset()-xt.getTimezoneOffset())*s)/c})}var A=k(0),L=k(1),_=k(2),C=k(3),M=k(4),g=k(5),P=k(6),T=A.range,F=L.range,q=_.range,V=C.range,H=M.range,X=g.range,G=P.range,N=n(function(Ke){Ke.setDate(1),Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setMonth(Ke.getMonth()+xt)},function(Ke,xt){return xt.getMonth()-Ke.getMonth()+(xt.getFullYear()-Ke.getFullYear())*12},function(Ke){return Ke.getMonth()}),W=N.range,re=n(function(Ke){Ke.setMonth(0,1),Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setFullYear(Ke.getFullYear()+xt)},function(Ke,xt){return xt.getFullYear()-Ke.getFullYear()},function(Ke){return Ke.getFullYear()});re.every=function(Ke){return!isFinite(Ke=Math.floor(Ke))||!(Ke>0)?null:n(function(xt){xt.setFullYear(Math.floor(xt.getFullYear()/Ke)*Ke),xt.setMonth(0,1),xt.setHours(0,0,0,0)},function(xt,bt){xt.setFullYear(xt.getFullYear()+bt*Ke)})};var ae=re.range,_e=n(function(Ke){Ke.setUTCSeconds(0,0)},function(Ke,xt){Ke.setTime(+Ke+xt*s)},function(Ke,xt){return(xt-Ke)/s},function(Ke){return Ke.getUTCMinutes()}),Me=_e.range,ke=n(function(Ke){Ke.setUTCMinutes(0,0,0)},function(Ke,xt){Ke.setTime(+Ke+xt*l)},function(Ke,xt){return(xt-Ke)/l},function(Ke){return Ke.getUTCHours()}),ge=ke.range,ie=n(function(Ke){Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCDate(Ke.getUTCDate()+xt)},function(Ke,xt){return(xt-Ke)/u},function(Ke){return Ke.getUTCDate()-1}),Te=ie.range;function Ee(Ke){return n(function(xt){xt.setUTCDate(xt.getUTCDate()-(xt.getUTCDay()+7-Ke)%7),xt.setUTCHours(0,0,0,0)},function(xt,bt){xt.setUTCDate(xt.getUTCDate()+bt*7)},function(xt,bt){return(bt-xt)/c})}var Ae=Ee(0),ze=Ee(1),Ce=Ee(2),me=Ee(3),Re=Ee(4),ce=Ee(5),Ge=Ee(6),nt=Ae.range,ct=ze.range,qt=Ce.range,rt=me.range,ot=Re.range,Rt=ce.range,kt=Ge.range,Ct=n(function(Ke){Ke.setUTCDate(1),Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCMonth(Ke.getUTCMonth()+xt)},function(Ke,xt){return xt.getUTCMonth()-Ke.getUTCMonth()+(xt.getUTCFullYear()-Ke.getUTCFullYear())*12},function(Ke){return Ke.getUTCMonth()}),Yt=Ct.range,xr=n(function(Ke){Ke.setUTCMonth(0,1),Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCFullYear(Ke.getUTCFullYear()+xt)},function(Ke,xt){return xt.getUTCFullYear()-Ke.getUTCFullYear()},function(Ke){return Ke.getUTCFullYear()});xr.every=function(Ke){return!isFinite(Ke=Math.floor(Ke))||!(Ke>0)?null:n(function(xt){xt.setUTCFullYear(Math.floor(xt.getUTCFullYear()/Ke)*Ke),xt.setUTCMonth(0,1),xt.setUTCHours(0,0,0,0)},function(xt,bt){xt.setUTCFullYear(xt.getUTCFullYear()+bt*Ke)})};var er=xr.range;e.timeDay=p,e.timeDays=E,e.timeFriday=g,e.timeFridays=X,e.timeHour=x,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=v,e.timeMonday=L,e.timeMondays=F,e.timeMonth=N,e.timeMonths=W,e.timeSaturday=P,e.timeSaturdays=G,e.timeSecond=f,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=H,e.timeTuesday=_,e.timeTuesdays=q,e.timeWednesday=C,e.timeWednesdays=V,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=ae,e.utcDay=ie,e.utcDays=Te,e.utcFriday=ce,e.utcFridays=Rt,e.utcHour=ke,e.utcHours=ge,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=_e,e.utcMinutes=Me,e.utcMonday=ze,e.utcMondays=ct,e.utcMonth=Ct,e.utcMonths=Yt,e.utcSaturday=Ge,e.utcSaturdays=kt,e.utcSecond=f,e.utcSeconds=h,e.utcSunday=Ae,e.utcSundays=nt,e.utcThursday=Re,e.utcThursdays=ot,e.utcTuesday=Ce,e.utcTuesdays=qt,e.utcWednesday=me,e.utcWednesdays=rt,e.utcWeek=Ae,e.utcWeeks=nt,e.utcYear=xr,e.utcYears=er,Object.defineProperty(e,"__esModule",{value:!0})})});var e3=ye((o6,dee)=>{(function(e,t){typeof o6=="object"&&typeof dee!="undefined"?t(o6,gq()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(o6,function(e,t){"use strict";function r(Ne){if(0<=Ne.y&&Ne.y<100){var Ye=new Date(-1,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L);return Ye.setFullYear(Ne.y),Ye}return new Date(Ne.y,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L)}function n(Ne){if(0<=Ne.y&&Ne.y<100){var Ye=new Date(Date.UTC(-1,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L));return Ye.setUTCFullYear(Ne.y),Ye}return new Date(Date.UTC(Ne.y,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L))}function i(Ne,Ye,Ve){return{y:Ne,m:Ye,d:Ve,H:0,M:0,S:0,L:0}}function a(Ne){var Ye=Ne.dateTime,Ve=Ne.date,Xe=Ne.time,ht=Ne.periods,Le=Ne.days,xe=Ne.shortDays,Se=Ne.months,lt=Ne.shortMonths,Gt=h(ht),Vt=d(ht),ar=h(Le),Qr=d(Le),ai=h(xe),jr=d(xe),ri=h(Se),bi=d(Se),nn=h(lt),Wi=d(lt),Ni={a:Si,A:Mi,b:Pi,B:Gi,c:null,d:N,e:N,f:Me,H:W,I:re,j:ae,L:_e,m:ke,M:ge,p:Ki,q:ka,Q:dt,s:Ht,S:ie,u:Te,U:Ee,V:Ae,w:ze,W:Ce,x:null,X:null,y:me,Y:Re,Z:ce,"%":Et},_n={a:jn,A:la,b:Fa,B:Ra,c:null,d:Ge,e:Ge,f:ot,H:nt,I:ct,j:qt,L:rt,m:Rt,M:kt,p:jo,q:oa,Q:dt,s:Ht,S:Ct,u:Yt,U:xr,V:er,w:Ke,W:xt,x:null,X:null,y:bt,Y:Lt,Z:St,"%":Et},$i={a:jt,A:Zt,b:yr,B:Fr,c:Zr,d:M,e:M,f:V,H:P,I:P,j:g,L:q,m:C,M:T,p:ft,q:_,Q:X,s:G,S:F,u:x,U:b,V:p,w:v,W:E,x:Vr,X:gi,y:A,Y:k,Z:L,"%":H};Ni.x=zn(Ve,Ni),Ni.X=zn(Xe,Ni),Ni.c=zn(Ye,Ni),_n.x=zn(Ve,_n),_n.X=zn(Xe,_n),_n.c=zn(Ye,_n);function zn(Sn,Ha){return function(oo){var xn=[],_t=-1,br=0,Hr=Sn.length,ti,zi,Yi;for(oo instanceof Date||(oo=new Date(+oo));++_t53)return null;"w"in xn||(xn.w=1),"Z"in xn?(br=n(i(xn.y,0,1)),Hr=br.getUTCDay(),br=Hr>4||Hr===0?t.utcMonday.ceil(br):t.utcMonday(br),br=t.utcDay.offset(br,(xn.V-1)*7),xn.y=br.getUTCFullYear(),xn.m=br.getUTCMonth(),xn.d=br.getUTCDate()+(xn.w+6)%7):(br=r(i(xn.y,0,1)),Hr=br.getDay(),br=Hr>4||Hr===0?t.timeMonday.ceil(br):t.timeMonday(br),br=t.timeDay.offset(br,(xn.V-1)*7),xn.y=br.getFullYear(),xn.m=br.getMonth(),xn.d=br.getDate()+(xn.w+6)%7)}else("W"in xn||"U"in xn)&&("w"in xn||(xn.w="u"in xn?xn.u%7:"W"in xn?1:0),Hr="Z"in xn?n(i(xn.y,0,1)).getUTCDay():r(i(xn.y,0,1)).getDay(),xn.m=0,xn.d="W"in xn?(xn.w+6)%7+xn.W*7-(Hr+5)%7:xn.w+xn.U*7-(Hr+6)%7);return"Z"in xn?(xn.H+=xn.Z/100|0,xn.M+=xn.Z%100,n(xn)):r(xn)}}function It(Sn,Ha,oo,xn){for(var _t=0,br=Ha.length,Hr=oo.length,ti,zi;_t=Hr)return-1;if(ti=Ha.charCodeAt(_t++),ti===37){if(ti=Ha.charAt(_t++),zi=$i[ti in o?Ha.charAt(_t++):ti],!zi||(xn=zi(Sn,oo,xn))<0)return-1}else if(ti!=oo.charCodeAt(xn++))return-1}return xn}function ft(Sn,Ha,oo){var xn=Gt.exec(Ha.slice(oo));return xn?(Sn.p=Vt[xn[0].toLowerCase()],oo+xn[0].length):-1}function jt(Sn,Ha,oo){var xn=ai.exec(Ha.slice(oo));return xn?(Sn.w=jr[xn[0].toLowerCase()],oo+xn[0].length):-1}function Zt(Sn,Ha,oo){var xn=ar.exec(Ha.slice(oo));return xn?(Sn.w=Qr[xn[0].toLowerCase()],oo+xn[0].length):-1}function yr(Sn,Ha,oo){var xn=nn.exec(Ha.slice(oo));return xn?(Sn.m=Wi[xn[0].toLowerCase()],oo+xn[0].length):-1}function Fr(Sn,Ha,oo){var xn=ri.exec(Ha.slice(oo));return xn?(Sn.m=bi[xn[0].toLowerCase()],oo+xn[0].length):-1}function Zr(Sn,Ha,oo){return It(Sn,Ye,Ha,oo)}function Vr(Sn,Ha,oo){return It(Sn,Ve,Ha,oo)}function gi(Sn,Ha,oo){return It(Sn,Xe,Ha,oo)}function Si(Sn){return xe[Sn.getDay()]}function Mi(Sn){return Le[Sn.getDay()]}function Pi(Sn){return lt[Sn.getMonth()]}function Gi(Sn){return Se[Sn.getMonth()]}function Ki(Sn){return ht[+(Sn.getHours()>=12)]}function ka(Sn){return 1+~~(Sn.getMonth()/3)}function jn(Sn){return xe[Sn.getUTCDay()]}function la(Sn){return Le[Sn.getUTCDay()]}function Fa(Sn){return lt[Sn.getUTCMonth()]}function Ra(Sn){return Se[Sn.getUTCMonth()]}function jo(Sn){return ht[+(Sn.getUTCHours()>=12)]}function oa(Sn){return 1+~~(Sn.getUTCMonth()/3)}return{format:function(Sn){var Ha=zn(Sn+="",Ni);return Ha.toString=function(){return Sn},Ha},parse:function(Sn){var Ha=Wn(Sn+="",!1);return Ha.toString=function(){return Sn},Ha},utcFormat:function(Sn){var Ha=zn(Sn+="",_n);return Ha.toString=function(){return Sn},Ha},utcParse:function(Sn){var Ha=Wn(Sn+="",!0);return Ha.toString=function(){return Sn},Ha}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function c(Ne,Ye,Ve){var Xe=Ne<0?"-":"",ht=(Xe?-Ne:Ne)+"",Le=ht.length;return Xe+(Le68?1900:2e3),Ve+Xe[0].length):-1}function L(Ne,Ye,Ve){var Xe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ye.slice(Ve,Ve+6));return Xe?(Ne.Z=Xe[1]?0:-(Xe[2]+(Xe[3]||"00")),Ve+Xe[0].length):-1}function _(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+1));return Xe?(Ne.q=Xe[0]*3-3,Ve+Xe[0].length):-1}function C(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.m=Xe[0]-1,Ve+Xe[0].length):-1}function M(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.d=+Xe[0],Ve+Xe[0].length):-1}function g(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+3));return Xe?(Ne.m=0,Ne.d=+Xe[0],Ve+Xe[0].length):-1}function P(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.H=+Xe[0],Ve+Xe[0].length):-1}function T(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.M=+Xe[0],Ve+Xe[0].length):-1}function F(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.S=+Xe[0],Ve+Xe[0].length):-1}function q(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+3));return Xe?(Ne.L=+Xe[0],Ve+Xe[0].length):-1}function V(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+6));return Xe?(Ne.L=Math.floor(Xe[0]/1e3),Ve+Xe[0].length):-1}function H(Ne,Ye,Ve){var Xe=l.exec(Ye.slice(Ve,Ve+1));return Xe?Ve+Xe[0].length:-1}function X(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve));return Xe?(Ne.Q=+Xe[0],Ve+Xe[0].length):-1}function G(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve));return Xe?(Ne.s=+Xe[0],Ve+Xe[0].length):-1}function N(Ne,Ye){return c(Ne.getDate(),Ye,2)}function W(Ne,Ye){return c(Ne.getHours(),Ye,2)}function re(Ne,Ye){return c(Ne.getHours()%12||12,Ye,2)}function ae(Ne,Ye){return c(1+t.timeDay.count(t.timeYear(Ne),Ne),Ye,3)}function _e(Ne,Ye){return c(Ne.getMilliseconds(),Ye,3)}function Me(Ne,Ye){return _e(Ne,Ye)+"000"}function ke(Ne,Ye){return c(Ne.getMonth()+1,Ye,2)}function ge(Ne,Ye){return c(Ne.getMinutes(),Ye,2)}function ie(Ne,Ye){return c(Ne.getSeconds(),Ye,2)}function Te(Ne){var Ye=Ne.getDay();return Ye===0?7:Ye}function Ee(Ne,Ye){return c(t.timeSunday.count(t.timeYear(Ne)-1,Ne),Ye,2)}function Ae(Ne,Ye){var Ve=Ne.getDay();return Ne=Ve>=4||Ve===0?t.timeThursday(Ne):t.timeThursday.ceil(Ne),c(t.timeThursday.count(t.timeYear(Ne),Ne)+(t.timeYear(Ne).getDay()===4),Ye,2)}function ze(Ne){return Ne.getDay()}function Ce(Ne,Ye){return c(t.timeMonday.count(t.timeYear(Ne)-1,Ne),Ye,2)}function me(Ne,Ye){return c(Ne.getFullYear()%100,Ye,2)}function Re(Ne,Ye){return c(Ne.getFullYear()%1e4,Ye,4)}function ce(Ne){var Ye=Ne.getTimezoneOffset();return(Ye>0?"-":(Ye*=-1,"+"))+c(Ye/60|0,"0",2)+c(Ye%60,"0",2)}function Ge(Ne,Ye){return c(Ne.getUTCDate(),Ye,2)}function nt(Ne,Ye){return c(Ne.getUTCHours(),Ye,2)}function ct(Ne,Ye){return c(Ne.getUTCHours()%12||12,Ye,2)}function qt(Ne,Ye){return c(1+t.utcDay.count(t.utcYear(Ne),Ne),Ye,3)}function rt(Ne,Ye){return c(Ne.getUTCMilliseconds(),Ye,3)}function ot(Ne,Ye){return rt(Ne,Ye)+"000"}function Rt(Ne,Ye){return c(Ne.getUTCMonth()+1,Ye,2)}function kt(Ne,Ye){return c(Ne.getUTCMinutes(),Ye,2)}function Ct(Ne,Ye){return c(Ne.getUTCSeconds(),Ye,2)}function Yt(Ne){var Ye=Ne.getUTCDay();return Ye===0?7:Ye}function xr(Ne,Ye){return c(t.utcSunday.count(t.utcYear(Ne)-1,Ne),Ye,2)}function er(Ne,Ye){var Ve=Ne.getUTCDay();return Ne=Ve>=4||Ve===0?t.utcThursday(Ne):t.utcThursday.ceil(Ne),c(t.utcThursday.count(t.utcYear(Ne),Ne)+(t.utcYear(Ne).getUTCDay()===4),Ye,2)}function Ke(Ne){return Ne.getUTCDay()}function xt(Ne,Ye){return c(t.utcMonday.count(t.utcYear(Ne)-1,Ne),Ye,2)}function bt(Ne,Ye){return c(Ne.getUTCFullYear()%100,Ye,2)}function Lt(Ne,Ye){return c(Ne.getUTCFullYear()%1e4,Ye,4)}function St(){return"+0000"}function Et(){return"%"}function dt(Ne){return+Ne}function Ht(Ne){return Math.floor(+Ne/1e3)}var $t;fr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function fr(Ne){return $t=a(Ne),e.timeFormat=$t.format,e.timeParse=$t.parse,e.utcFormat=$t.utcFormat,e.utcParse=$t.utcParse,$t}var _r="%Y-%m-%dT%H:%M:%S.%LZ";function Br(Ne){return Ne.toISOString()}var Or=Date.prototype.toISOString?Br:e.utcFormat(_r);function Nr(Ne){var Ye=new Date(Ne);return isNaN(Ye)?null:Ye}var ut=+new Date("2000-01-01T00:00:00.000Z")?Nr:e.utcParse(_r);e.isoFormat=Or,e.isoParse=ut,e.timeFormatDefaultLocale=fr,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var mq=ye((s6,vee)=>{(function(e,t){typeof s6=="object"&&typeof vee!="undefined"?t(s6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(s6,function(e){"use strict";function t(C){return Math.abs(C=Math.round(C))>=1e21?C.toLocaleString("en").replace(/,/g,""):C.toString(10)}function r(C,M){if((g=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var g,P=C.slice(0,g);return[P.length>1?P[0]+P.slice(2):P,+C.slice(g+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(g,P){for(var T=g.length,F=[],q=0,V=C[0],H=0;T>0&&V>0&&(H+V+1>P&&(V=Math.max(1,P-H)),F.push(g.substring(T-=V,T+V)),!((H+=V+1)>P));)V=C[q=(q+1)%C.length];return F.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(g){return C[+g]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(C){if(!(M=o.exec(C)))throw new Error("invalid format: "+C);var M;return new l({fill:M[1],align:M[2],sign:M[3],symbol:M[4],zero:M[5],width:M[6],comma:M[7],precision:M[8]&&M[8].slice(1),trim:M[9],type:M[10]})}s.prototype=l.prototype;function l(C){this.fill=C.fill===void 0?" ":C.fill+"",this.align=C.align===void 0?">":C.align+"",this.sign=C.sign===void 0?"-":C.sign+"",this.symbol=C.symbol===void 0?"":C.symbol+"",this.zero=!!C.zero,this.width=C.width===void 0?void 0:+C.width,this.comma=!!C.comma,this.precision=C.precision===void 0?void 0:+C.precision,this.trim=!!C.trim,this.type=C.type===void 0?"":C.type+""}l.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(C){e:for(var M=C.length,g=1,P=-1,T;g0&&(P=0);break}return P>0?C.slice(0,P)+C.slice(T+1):C}var c;function f(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1],F=T-(c=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,q=P.length;return F===q?P:F>q?P+new Array(F-q+1).join("0"):F>0?P.slice(0,F)+"."+P.slice(F):"0."+new Array(1-F).join("0")+r(C,Math.max(0,M+F-1))[0]}function h(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1];return T<0?"0."+new Array(-T).join("0")+P:P.length>T+1?P.slice(0,T+1)+"."+P.slice(T+1):P+new Array(T-P.length+2).join("0")}var d={"%":function(C,M){return(C*100).toFixed(M)},b:function(C){return Math.round(C).toString(2)},c:function(C){return C+""},d:t,e:function(C,M){return C.toExponential(M)},f:function(C,M){return C.toFixed(M)},g:function(C,M){return C.toPrecision(M)},o:function(C){return Math.round(C).toString(8)},p:function(C,M){return h(C*100,M)},r:h,s:f,X:function(C){return Math.round(C).toString(16).toUpperCase()},x:function(C){return Math.round(C).toString(16)}};function v(C){return C}var x=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function p(C){var M=C.grouping===void 0||C.thousands===void 0?v:i(x.call(C.grouping,Number),C.thousands+""),g=C.currency===void 0?"":C.currency[0]+"",P=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",F=C.numerals===void 0?v:a(x.call(C.numerals,String)),q=C.percent===void 0?"%":C.percent+"",V=C.minus===void 0?"-":C.minus+"",H=C.nan===void 0?"NaN":C.nan+"";function X(N){N=s(N);var W=N.fill,re=N.align,ae=N.sign,_e=N.symbol,Me=N.zero,ke=N.width,ge=N.comma,ie=N.precision,Te=N.trim,Ee=N.type;Ee==="n"?(ge=!0,Ee="g"):d[Ee]||(ie===void 0&&(ie=12),Te=!0,Ee="g"),(Me||W==="0"&&re==="=")&&(Me=!0,W="0",re="=");var Ae=_e==="$"?g:_e==="#"&&/[boxX]/.test(Ee)?"0"+Ee.toLowerCase():"",ze=_e==="$"?P:/[%p]/.test(Ee)?q:"",Ce=d[Ee],me=/[defgprs%]/.test(Ee);ie=ie===void 0?6:/[gprs]/.test(Ee)?Math.max(1,Math.min(21,ie)):Math.max(0,Math.min(20,ie));function Re(ce){var Ge=Ae,nt=ze,ct,qt,rt;if(Ee==="c")nt=Ce(ce)+nt,ce="";else{ce=+ce;var ot=ce<0||1/ce<0;if(ce=isNaN(ce)?H:Ce(Math.abs(ce),ie),Te&&(ce=u(ce)),ot&&+ce==0&&ae!=="+"&&(ot=!1),Ge=(ot?ae==="("?ae:V:ae==="-"||ae==="("?"":ae)+Ge,nt=(Ee==="s"?b[8+c/3]:"")+nt+(ot&&ae==="("?")":""),me){for(ct=-1,qt=ce.length;++ctrt||rt>57){nt=(rt===46?T+ce.slice(ct+1):ce.slice(ct))+nt,ce=ce.slice(0,ct);break}}}ge&&!Me&&(ce=M(ce,1/0));var Rt=Ge.length+ce.length+nt.length,kt=Rt>1)+Ge+ce+nt+kt.slice(Rt);break;default:ce=kt+Ge+ce+nt;break}return F(ce)}return Re.toString=function(){return N+""},Re}function G(N,W){var re=X((N=s(N),N.type="f",N)),ae=Math.max(-8,Math.min(8,Math.floor(n(W)/3)))*3,_e=Math.pow(10,-ae),Me=b[8+ae/3];return function(ke){return re(_e*ke)+Me}}return{format:X,formatPrefix:G}}var E;k({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function k(C){return E=p(C),e.format=E.format,e.formatPrefix=E.formatPrefix,E}function A(C){return Math.max(0,-n(Math.abs(C)))}function L(C,M){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(M)/3)))*3-n(Math.abs(C)))}function _(C,M){return C=Math.abs(C),M=Math.abs(M)-C,Math.max(0,n(M)-n(C))+1}e.FormatSpecifier=l,e.formatDefaultLocale=k,e.formatLocale=p,e.formatSpecifier=s,e.precisionFixed=A,e.precisionPrefix=L,e.precisionRound=_,Object.defineProperty(e,"__esModule",{value:!0})})});var gee=ye((Yer,pee)=>{"use strict";pee.exports=function(e){for(var t=e.length,r,n=0;n13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var uo=ye((Ker,mee)=>{"use strict";var Get=gee();mee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&Get(r))return!1}else if(t!=="number")return!1;return e-e<1}});var es=ye((Jer,yee)=>{"use strict";yee.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var yq=ye((l6,_ee)=>{(function(e,t){typeof l6=="object"&&typeof _ee!="undefined"?t(l6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(l6,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n>2],c+=t[(s[l]&3)<<4|s[l+1]>>4],c+=t[(s[l+1]&15)<<2|s[l+2]>>6],c+=t[s[l+2]&63];return u%3===2?c=c.substring(0,c.length-1)+"=":u%3===1&&(c=c.substring(0,c.length-2)+"=="),c},a=function(o){var s=o.length*.75,l=o.length,u,c=0,f,h,d,v;o[o.length-1]==="="&&(s--,o[o.length-2]==="="&&s--);var x=new ArrayBuffer(s),b=new Uint8Array(x);for(u=0;u>4,b[c++]=(h&15)<<4|d>>2,b[c++]=(d&3)<<6|v&63;return x};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var gy=ye(($er,xee)=>{"use strict";xee.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var vv=ye(mg=>{"use strict";var jet=yq().decode,Wet=gy(),_q=Array.isArray,Zet=ArrayBuffer,Xet=DataView;function bee(e){return Zet.isView(e)&&!(e instanceof Xet)}mg.isTypedArray=bee;function u6(e){return _q(e)||bee(e)}mg.isArrayOrTypedArray=u6;function Yet(e){return!u6(e[0])}mg.isArray1D=Yet;mg.ensureArray=function(e,t){return _q(e)||(e=[]),e.length=t,e};var Md={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Md.uint8c=Md.u1c;Md.uint8=Md.u1;Md.int8=Md.i1;Md.uint16=Md.u2;Md.int16=Md.i2;Md.uint32=Md.u4;Md.int32=Md.i4;Md.float32=Md.f4;Md.float64=Md.f8;function xq(e){return e.constructor===ArrayBuffer}mg.isArrayBuffer=xq;mg.decodeTypedArraySpec=function(e){var t=[],r=Ket(e),n=r.dtype,i=Md[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;xq(o)||(o=jet(o));var s=r.shape===void 0?[o.byteLength/a]:(""+r.shape).split(",");s.reverse();var l=s.length,u,c,f=+s[0],h=a*f,d=0;if(l===1)t=new i(o);else if(l===2)for(u=+s[1],c=0;c{"use strict";var Tee=uo(),wq=vv().isArrayOrTypedArray;Eee.exports=function(t,r){if(Tee(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s{"use strict";var t3=kS(),ttt=/^\w*$/,rtt=0,kee=1,c6=2,Cee=3,ob=4;Lee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,l={};r&&r.length?(s=t3(t,r),o=s.get()):o=t,r=r||"";var u={};if(o)for(a=0;a2)return l[d]=l[d]|c6,f.set(h,null);if(c){for(a=d;a{"use strict";var itt=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,ntt=/^[^\.\[\]]+$/;Iee.exports=function(e,t){for(;t;){var r=e.match(itt);if(r)e=r[1];else if(e.match(ntt))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var f6=ye((itr,Dee)=>{"use strict";var att=uo();Dee.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return att(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var qee=ye((ntr,Fee)=>{"use strict";var zee=vv().isArrayOrTypedArray,CS=gy();Fee.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(zee(i)&&zee(a)&&CS(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s{"use strict";function ott(e,t){var r=e%t;return r<0?r+t:r}function stt(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Oee.exports={mod:ott,modHalf:stt}});var id=ye((otr,h6)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(me,Re){if(me=me||"",Re=Re||{},me instanceof l)return me;if(!(this instanceof l))return new l(me,Re);var ce=u(me);this._originalInput=me,this._r=ce.r,this._g=ce.g,this._b=ce.b,this._a=ce.a,this._roundA=i(100*this._a)/100,this._format=Re.format||ce.format,this._gradientType=Re.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=ce.ok,this._tc_id=n++}l.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var me=this.toRgb();return(me.r*299+me.g*587+me.b*114)/1e3},getLuminance:function(){var me=this.toRgb(),Re,ce,Ge,nt,ct,qt;return Re=me.r/255,ce=me.g/255,Ge=me.b/255,Re<=.03928?nt=Re/12.92:nt=e.pow((Re+.055)/1.055,2.4),ce<=.03928?ct=ce/12.92:ct=e.pow((ce+.055)/1.055,2.4),Ge<=.03928?qt=Ge/12.92:qt=e.pow((Ge+.055)/1.055,2.4),.2126*nt+.7152*ct+.0722*qt},setAlpha:function(me){return this._a=N(me),this._roundA=i(100*this._a)/100,this},toHsv:function(){var me=d(this._r,this._g,this._b);return{h:me.h*360,s:me.s,v:me.v,a:this._a}},toHsvString:function(){var me=d(this._r,this._g,this._b),Re=i(me.h*360),ce=i(me.s*100),Ge=i(me.v*100);return this._a==1?"hsv("+Re+", "+ce+"%, "+Ge+"%)":"hsva("+Re+", "+ce+"%, "+Ge+"%, "+this._roundA+")"},toHsl:function(){var me=f(this._r,this._g,this._b);return{h:me.h*360,s:me.s,l:me.l,a:this._a}},toHslString:function(){var me=f(this._r,this._g,this._b),Re=i(me.h*360),ce=i(me.s*100),Ge=i(me.l*100);return this._a==1?"hsl("+Re+", "+ce+"%, "+Ge+"%)":"hsla("+Re+", "+ce+"%, "+Ge+"%, "+this._roundA+")"},toHex:function(me){return x(this._r,this._g,this._b,me)},toHexString:function(me){return"#"+this.toHex(me)},toHex8:function(me){return b(this._r,this._g,this._b,this._a,me)},toHex8String:function(me){return"#"+this.toHex8(me)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(W(this._r,255)*100)+"%",g:i(W(this._g,255)*100)+"%",b:i(W(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%)":"rgba("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:X[x(this._r,this._g,this._b,!0)]||!1},toFilter:function(me){var Re="#"+p(this._r,this._g,this._b,this._a),ce=Re,Ge=this._gradientType?"GradientType = 1, ":"";if(me){var nt=l(me);ce="#"+p(nt._r,nt._g,nt._b,nt._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ge+"startColorstr="+Re+",endColorstr="+ce+")"},toString:function(me){var Re=!!me;me=me||this._format;var ce=!1,Ge=this._a<1&&this._a>=0,nt=!Re&&Ge&&(me==="hex"||me==="hex6"||me==="hex3"||me==="hex4"||me==="hex8"||me==="name");return nt?me==="name"&&this._a===0?this.toName():this.toRgbString():(me==="rgb"&&(ce=this.toRgbString()),me==="prgb"&&(ce=this.toPercentageRgbString()),(me==="hex"||me==="hex6")&&(ce=this.toHexString()),me==="hex3"&&(ce=this.toHexString(!0)),me==="hex4"&&(ce=this.toHex8String(!0)),me==="hex8"&&(ce=this.toHex8String()),me==="name"&&(ce=this.toName()),me==="hsl"&&(ce=this.toHslString()),me==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(me,Re){var ce=me.apply(null,[this].concat([].slice.call(Re)));return this._r=ce._r,this._g=ce._g,this._b=ce._b,this.setAlpha(ce._a),this},lighten:function(){return this._applyModification(L,arguments)},brighten:function(){return this._applyModification(_,arguments)},darken:function(){return this._applyModification(C,arguments)},desaturate:function(){return this._applyModification(E,arguments)},saturate:function(){return this._applyModification(k,arguments)},greyscale:function(){return this._applyModification(A,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(me,Re){return me.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(q,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(V,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},l.fromRatio=function(me,Re){if(typeof me=="object"){var ce={};for(var Ge in me)me.hasOwnProperty(Ge)&&(Ge==="a"?ce[Ge]=me[Ge]:ce[Ge]=ge(me[Ge]));me=ce}return l(me,Re)};function u(me){var Re={r:0,g:0,b:0},ce=1,Ge=null,nt=null,ct=null,qt=!1,rt=!1;return typeof me=="string"&&(me=ze(me)),typeof me=="object"&&(Ae(me.r)&&Ae(me.g)&&Ae(me.b)?(Re=c(me.r,me.g,me.b),qt=!0,rt=String(me.r).substr(-1)==="%"?"prgb":"rgb"):Ae(me.h)&&Ae(me.s)&&Ae(me.v)?(Ge=ge(me.s),nt=ge(me.v),Re=v(me.h,Ge,nt),qt=!0,rt="hsv"):Ae(me.h)&&Ae(me.s)&&Ae(me.l)&&(Ge=ge(me.s),ct=ge(me.l),Re=h(me.h,Ge,ct),qt=!0,rt="hsl"),me.hasOwnProperty("a")&&(ce=me.a)),ce=N(ce),{ok:qt,format:me.format||rt,r:a(255,o(Re.r,0)),g:a(255,o(Re.g,0)),b:a(255,o(Re.b,0)),a:ce}}function c(me,Re,ce){return{r:W(me,255)*255,g:W(Re,255)*255,b:W(ce,255)*255}}function f(me,Re,ce){me=W(me,255),Re=W(Re,255),ce=W(ce,255);var Ge=o(me,Re,ce),nt=a(me,Re,ce),ct,qt,rt=(Ge+nt)/2;if(Ge==nt)ct=qt=0;else{var ot=Ge-nt;switch(qt=rt>.5?ot/(2-Ge-nt):ot/(Ge+nt),Ge){case me:ct=(Re-ce)/ot+(Re1&&(Ct-=1),Ct<1/6?Rt+(kt-Rt)*6*Ct:Ct<1/2?kt:Ct<2/3?Rt+(kt-Rt)*(2/3-Ct)*6:Rt}if(Re===0)Ge=nt=ct=ce;else{var rt=ce<.5?ce*(1+Re):ce+Re-ce*Re,ot=2*ce-rt;Ge=qt(ot,rt,me+1/3),nt=qt(ot,rt,me),ct=qt(ot,rt,me-1/3)}return{r:Ge*255,g:nt*255,b:ct*255}}function d(me,Re,ce){me=W(me,255),Re=W(Re,255),ce=W(ce,255);var Ge=o(me,Re,ce),nt=a(me,Re,ce),ct,qt,rt=Ge,ot=Ge-nt;if(qt=Ge===0?0:ot/Ge,Ge==nt)ct=0;else{switch(Ge){case me:ct=(Re-ce)/ot+(Re>1)+720)%360;--Re;)Ge.h=(Ge.h+nt)%360,ct.push(l(Ge));return ct}function V(me,Re){Re=Re||6;for(var ce=l(me).toHsv(),Ge=ce.h,nt=ce.s,ct=ce.v,qt=[],rt=1/Re;Re--;)qt.push(l({h:Ge,s:nt,v:ct})),ct=(ct+rt)%1;return qt}l.mix=function(me,Re,ce){ce=ce===0?0:ce||50;var Ge=l(me).toRgb(),nt=l(Re).toRgb(),ct=ce/100,qt={r:(nt.r-Ge.r)*ct+Ge.r,g:(nt.g-Ge.g)*ct+Ge.g,b:(nt.b-Ge.b)*ct+Ge.b,a:(nt.a-Ge.a)*ct+Ge.a};return l(qt)},l.readability=function(me,Re){var ce=l(me),Ge=l(Re);return(e.max(ce.getLuminance(),Ge.getLuminance())+.05)/(e.min(ce.getLuminance(),Ge.getLuminance())+.05)},l.isReadable=function(me,Re,ce){var Ge=l.readability(me,Re),nt,ct;switch(ct=!1,nt=Ce(ce),nt.level+nt.size){case"AAsmall":case"AAAlarge":ct=Ge>=4.5;break;case"AAlarge":ct=Ge>=3;break;case"AAAsmall":ct=Ge>=7;break}return ct},l.mostReadable=function(me,Re,ce){var Ge=null,nt=0,ct,qt,rt,ot;ce=ce||{},qt=ce.includeFallbackColors,rt=ce.level,ot=ce.size;for(var Rt=0;Rtnt&&(nt=ct,Ge=l(Re[Rt]));return l.isReadable(me,Ge,{level:rt,size:ot})||!qt?Ge:(ce.includeFallbackColors=!1,l.mostReadable(me,["#fff","#000"],ce))};var H=l.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},X=l.hexNames=G(H);function G(me){var Re={};for(var ce in me)me.hasOwnProperty(ce)&&(Re[me[ce]]=ce);return Re}function N(me){return me=parseFloat(me),(isNaN(me)||me<0||me>1)&&(me=1),me}function W(me,Re){_e(me)&&(me="100%");var ce=Me(me);return me=a(Re,o(0,parseFloat(me))),ce&&(me=parseInt(me*Re,10)/100),e.abs(me-Re)<1e-6?1:me%Re/parseFloat(Re)}function re(me){return a(1,o(0,me))}function ae(me){return parseInt(me,16)}function _e(me){return typeof me=="string"&&me.indexOf(".")!=-1&&parseFloat(me)===1}function Me(me){return typeof me=="string"&&me.indexOf("%")!=-1}function ke(me){return me.length==1?"0"+me:""+me}function ge(me){return me<=1&&(me=me*100+"%"),me}function ie(me){return e.round(parseFloat(me)*255).toString(16)}function Te(me){return ae(me)/255}var Ee=function(){var me="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+Re+")|(?:"+me+")",Ge="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?",nt="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?";return{CSS_UNIT:new RegExp(ce),rgb:new RegExp("rgb"+Ge),rgba:new RegExp("rgba"+nt),hsl:new RegExp("hsl"+Ge),hsla:new RegExp("hsla"+nt),hsv:new RegExp("hsv"+Ge),hsva:new RegExp("hsva"+nt),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Ae(me){return!!Ee.CSS_UNIT.exec(me)}function ze(me){me=me.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(H[me])me=H[me],Re=!0;else if(me=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Ee.rgb.exec(me))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Ee.rgba.exec(me))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Ee.hsl.exec(me))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Ee.hsla.exec(me))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Ee.hsv.exec(me))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Ee.hsva.exec(me))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Ee.hex8.exec(me))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),a:Te(ce[4]),format:Re?"name":"hex8"}:(ce=Ee.hex6.exec(me))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),format:Re?"name":"hex"}:(ce=Ee.hex4.exec(me))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),a:Te(ce[4]+""+ce[4]),format:Re?"name":"hex8"}:(ce=Ee.hex3.exec(me))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),format:Re?"name":"hex"}:!1}function Ce(me){var Re,ce;return me=me||{level:"AA",size:"small"},Re=(me.level||"AA").toUpperCase(),ce=(me.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:Re,size:ce}}typeof h6!="undefined"&&h6.exports?h6.exports=l:window.tinycolor=l})(Math)});var no=ye(IS=>{"use strict";var Bee=gy(),LS=Array.isArray;function ltt(e,t){var r,n;for(r=0;r{"use strict";Nee.exports=function(e){var t=e.variantValues,r=e.editType,n=e.colorEditType;n===void 0&&(n=r);var i={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(i.valType="enumerated",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:n},weight:i,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(a.size.dflt="auto"),e.autoColor&&(a.color.dflt="auto"),e.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,e.noFontVariant||(a.variant.arrayOk=!0),e.noFontTextcase||(a.textcase.arrayOk=!0),e.noFontLineposition||(a.lineposition.arrayOk=!0),e.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}});var RS=ye((utr,Uee)=>{"use strict";Uee.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var N1=ye((ctr,Gee)=>{"use strict";var Vee=RS(),Hee=Su(),Tq=Hee({editType:"none"});Tq.family.dflt=Vee.HOVERFONT;Tq.size.dflt=Vee.HOVERFONTSIZE;Gee.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:Tq,grouptitlefont:Hee({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i3=ye((ftr,jee)=>{"use strict";var utt=Su(),d6=N1().hoverlabel,v6=no().extendFlat;jee.exports={hoverlabel:{bgcolor:v6({},d6.bgcolor,{arrayOk:!0}),bordercolor:v6({},d6.bordercolor,{arrayOk:!0}),font:utt({arrayOk:!0,editType:"none"}),align:v6({},d6.align,{arrayOk:!0}),namelength:v6({},d6.namelength,{arrayOk:!0}),editType:"none"}}});var vl=ye((htr,Wee)=>{"use strict";var ctt=Su(),ftt=i3();Wee.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:ctt({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:ftt.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var sb=ye((dtr,Yee)=>{"use strict";var htt=id(),p6={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},Zee=p6.RdBu;function dtt(e,t){if(t||(t=Zee),!e)return t;function r(){try{e=p6[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),Xee(e)?e:t}function Xee(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r{"use strict";lb.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];lb.defaultLine="#444";lb.lightLine="#eee";lb.background="#fff";lb.borderLine="#BEC8D9";lb.lightFraction=100*10/11});var va=ye((ptr,Kee)=>{"use strict";var xp=id(),ptt=uo(),gtt=vv().isTypedArray,nd=Kee.exports={},g6=dh();nd.defaults=g6.defaults;var mtt=nd.defaultLine=g6.defaultLine;nd.lightLine=g6.lightLine;var Sq=nd.background=g6.background;nd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};nd.rgb=function(e){return nd.tinyRGB(xp(e))};nd.opacity=function(e){return e?xp(e).getAlpha():0};nd.addOpacity=function(e,t){var r=xp(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};nd.combine=function(e,t){var r=xp(e).toRgb();if(r.a===1)return xp(e).toRgbString();var n=xp(t||Sq).toRgb(),i=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},a={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return xp(a).toRgbString()};nd.interpolate=function(e,t,r){var n=xp(e).toRgb(),i=xp(t).toRgb(),a={r:r*n.r+(1-r)*i.r,g:r*n.g+(1-r)*i.g,b:r*n.b+(1-r)*i.b};return xp(a).toRgbString()};nd.contrast=function(e,t,r){var n=xp(e);n.getAlpha()!==1&&(n=xp(nd.combine(e,Sq)));var i=n.isDark()?t?n.lighten(t):Sq:r?n.darken(r):mtt;return i.toString()};nd.stroke=function(e,t){var r=xp(t);e.style({stroke:nd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};nd.fill=function(e,t){var r=xp(t);e.style({fill:nd.tinyRGB(r),"fill-opacity":r.getAlpha()})};nd.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r=0)))return e;if(a===3)n[a]>1&&(n[a]=1);else if(n[a]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return i?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var U1=ye((gtr,Jee)=>{"use strict";Jee.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n3=ye($ee=>{"use strict";$ee.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var rte=ye(bp=>{"use strict";var Mq=uo(),Qee=id(),ete=no().extendFlat,ytt=vl(),_tt=sb(),xtt=va(),btt=U1().DESELECTDIM,a3=kS(),tte=n3().counter,wtt=r3().modHalf,dm=vv().isArrayOrTypedArray,V1=vv().isTypedArraySpec,H1=vv().decodeTypedArraySpec;bp.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dm(e)?e:V1(e)?H1(e):r)}},enumerated:{coerceFunction:function(e,t,r,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,n=0;nn.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}V1(e)&&(e=H1(e)),e%1||!Mq(e)||n.min!==void 0&&en.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,n){if(typeof e!="string"){var i=typeof e=="number";n.strict===!0||!i?t.set(r):t.set(String(e))}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),Qee(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return Qee(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(_tt.get(e,r))}},angle:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),e==="auto"?t.set("auto"):Mq(e)?t.set(wtt(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||tte(r);if(typeof e=="string"&&i.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!tte(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a{"use strict";var ite={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},nte={};function ate(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),ate(n,t[r]))}}ate(ite,nte);ote.exports={configAttributes:ite,dfltConfig:nte}});var kq=ye((xtr,ste)=>{"use strict";var Eq=xa(),Ttt=uo(),DS=[];ste.exports=function(e,t){if(DS.indexOf(e)!==-1)return;DS.push(e);var r=1e3;Ttt(t)?r=t:t==="long"&&(r=3e3);var n=Eq.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(DS);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=DS.indexOf(s);l!==-1&&DS.splice(l,1),Eq.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=Eq.select(this);s.append("button").classed("notifier-close",!0).html("×").on("click",function(){s.transition().call(a)});for(var l=s.append("p"),u=o.split(//g),c=0;c{"use strict";var o3=ub().dfltConfig,Cq=kq(),Lq=lte.exports={};Lq.log=function(){var e;if(o3.logging>1){var t=["LOG:"];for(e=0;e1){var r=[];for(e=0;e"),"long")}};Lq.warn=function(){var e;if(o3.logging>0){var t=["WARN:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}};Lq.error=function(){var e;if(o3.logging>0){var t=["ERROR:"];for(e=0;e0){var r=[];for(e=0;e"),"stick")}}});var y6=ye((wtr,ute)=>{"use strict";ute.exports=function(){}});var Pq=ye((Ttr,cte)=>{"use strict";cte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i{fte.exports=Att;function Att(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var vte=ye((Str,dte)=>{dte.exports=Stt;function Stt(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var gte=ye((Mtr,pte)=>{pte.exports=Mtt;function Mtt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Iq=ye((Etr,mte)=>{mte.exports=Ett;function Ett(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var _te=ye((ktr,yte)=>{yte.exports=ktt;function ktt(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var bte=ye((Ctr,xte)=>{xte.exports=Ctt;function Ctt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],x=t[13],b=t[14],p=t[15],E=r*s-n*o,k=r*l-i*o,A=r*u-a*o,L=n*l-i*s,_=n*u-a*s,C=i*u-a*l,M=c*x-f*v,g=c*b-h*v,P=c*p-d*v,T=f*b-h*x,F=f*p-d*x,q=h*p-d*b,V=E*q-k*F+A*T+L*P-_*g+C*M;return V?(V=1/V,e[0]=(s*q-l*F+u*T)*V,e[1]=(i*F-n*q-a*T)*V,e[2]=(x*C-b*_+p*L)*V,e[3]=(h*_-f*C-d*L)*V,e[4]=(l*P-o*q-u*g)*V,e[5]=(r*q-i*P+a*g)*V,e[6]=(b*A-v*C-p*k)*V,e[7]=(c*C-h*A+d*k)*V,e[8]=(o*F-s*P+u*M)*V,e[9]=(n*P-r*F-a*M)*V,e[10]=(v*_-x*A+p*E)*V,e[11]=(f*A-c*_-d*E)*V,e[12]=(s*g-o*T-l*M)*V,e[13]=(r*T-n*g+i*M)*V,e[14]=(x*k-v*L-b*E)*V,e[15]=(c*L-f*k+h*E)*V,e):null}});var Tte=ye((Ltr,wte)=>{wte.exports=Ltt;function Ltt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],x=t[13],b=t[14],p=t[15];return e[0]=s*(h*p-d*b)-f*(l*p-u*b)+x*(l*d-u*h),e[1]=-(n*(h*p-d*b)-f*(i*p-a*b)+x*(i*d-a*h)),e[2]=n*(l*p-u*b)-s*(i*p-a*b)+x*(i*u-a*l),e[3]=-(n*(l*d-u*h)-s*(i*d-a*h)+f*(i*u-a*l)),e[4]=-(o*(h*p-d*b)-c*(l*p-u*b)+v*(l*d-u*h)),e[5]=r*(h*p-d*b)-c*(i*p-a*b)+v*(i*d-a*h),e[6]=-(r*(l*p-u*b)-o*(i*p-a*b)+v*(i*u-a*l)),e[7]=r*(l*d-u*h)-o*(i*d-a*h)+c*(i*u-a*l),e[8]=o*(f*p-d*x)-c*(s*p-u*x)+v*(s*d-u*f),e[9]=-(r*(f*p-d*x)-c*(n*p-a*x)+v*(n*d-a*f)),e[10]=r*(s*p-u*x)-o*(n*p-a*x)+v*(n*u-a*s),e[11]=-(r*(s*d-u*f)-o*(n*d-a*f)+c*(n*u-a*s)),e[12]=-(o*(f*b-h*x)-c*(s*b-l*x)+v*(s*h-l*f)),e[13]=r*(f*b-h*x)-c*(n*b-i*x)+v*(n*h-i*f),e[14]=-(r*(s*b-l*x)-o*(n*b-i*x)+v*(n*l-i*s)),e[15]=r*(s*h-l*f)-o*(n*h-i*f)+c*(n*l-i*s),e}});var Ste=ye((Ptr,Ate)=>{Ate.exports=Ptt;function Ptt(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],c=e[9],f=e[10],h=e[11],d=e[12],v=e[13],x=e[14],b=e[15],p=t*o-r*a,E=t*s-n*a,k=t*l-i*a,A=r*s-n*o,L=r*l-i*o,_=n*l-i*s,C=u*v-c*d,M=u*x-f*d,g=u*b-h*d,P=c*x-f*v,T=c*b-h*v,F=f*b-h*x;return p*F-E*T+k*P+A*g-L*M+_*C}});var Ete=ye((Itr,Mte)=>{Mte.exports=Itt;function Itt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],h=t[9],d=t[10],v=t[11],x=t[12],b=t[13],p=t[14],E=t[15],k=r[0],A=r[1],L=r[2],_=r[3];return e[0]=k*n+A*s+L*f+_*x,e[1]=k*i+A*l+L*h+_*b,e[2]=k*a+A*u+L*d+_*p,e[3]=k*o+A*c+L*v+_*E,k=r[4],A=r[5],L=r[6],_=r[7],e[4]=k*n+A*s+L*f+_*x,e[5]=k*i+A*l+L*h+_*b,e[6]=k*a+A*u+L*d+_*p,e[7]=k*o+A*c+L*v+_*E,k=r[8],A=r[9],L=r[10],_=r[11],e[8]=k*n+A*s+L*f+_*x,e[9]=k*i+A*l+L*h+_*b,e[10]=k*a+A*u+L*d+_*p,e[11]=k*o+A*c+L*v+_*E,k=r[12],A=r[13],L=r[14],_=r[15],e[12]=k*n+A*s+L*f+_*x,e[13]=k*i+A*l+L*h+_*b,e[14]=k*a+A*u+L*d+_*p,e[15]=k*o+A*c+L*v+_*E,e}});var Cte=ye((Rtr,kte)=>{kte.exports=Rtt;function Rtt(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,l,u,c,f,h,d,v,x,b,p;return t===e?(e[12]=t[0]*n+t[4]*i+t[8]*a+t[12],e[13]=t[1]*n+t[5]*i+t[9]*a+t[13],e[14]=t[2]*n+t[6]*i+t[10]*a+t[14],e[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],l=t[2],u=t[3],c=t[4],f=t[5],h=t[6],d=t[7],v=t[8],x=t[9],b=t[10],p=t[11],e[0]=o,e[1]=s,e[2]=l,e[3]=u,e[4]=c,e[5]=f,e[6]=h,e[7]=d,e[8]=v,e[9]=x,e[10]=b,e[11]=p,e[12]=o*n+c*i+v*a+t[12],e[13]=s*n+f*i+x*a+t[13],e[14]=l*n+h*i+b*a+t[14],e[15]=u*n+d*i+p*a+t[15]),e}});var Pte=ye((Dtr,Lte)=>{Lte.exports=Dtt;function Dtt(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Rte=ye((ztr,Ite)=>{Ite.exports=ztt;function ztt(e,t,r,n){var i=n[0],a=n[1],o=n[2],s=Math.sqrt(i*i+a*a+o*o),l,u,c,f,h,d,v,x,b,p,E,k,A,L,_,C,M,g,P,T,F,q,V,H;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,l=Math.sin(r),u=Math.cos(r),c=1-u,f=t[0],h=t[1],d=t[2],v=t[3],x=t[4],b=t[5],p=t[6],E=t[7],k=t[8],A=t[9],L=t[10],_=t[11],C=i*i*c+u,M=a*i*c+o*l,g=o*i*c-a*l,P=i*a*c-o*l,T=a*a*c+u,F=o*a*c+i*l,q=i*o*c+a*l,V=a*o*c-i*l,H=o*o*c+u,e[0]=f*C+x*M+k*g,e[1]=h*C+b*M+A*g,e[2]=d*C+p*M+L*g,e[3]=v*C+E*M+_*g,e[4]=f*P+x*T+k*F,e[5]=h*P+b*T+A*F,e[6]=d*P+p*T+L*F,e[7]=v*P+E*T+_*F,e[8]=f*q+x*V+k*H,e[9]=h*q+b*V+A*H,e[10]=d*q+p*V+L*H,e[11]=v*q+E*V+_*H,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var zte=ye((Ftr,Dte)=>{Dte.exports=Ftt;function Ftt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+h*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=h*i-l*n,e}});var qte=ye((qtr,Fte)=>{Fte.exports=qtt;function qtt(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-c*n,e[2]=s*i-f*n,e[3]=l*i-h*n,e[8]=a*n+u*i,e[9]=o*n+c*i,e[10]=s*n+f*i,e[11]=l*n+h*i,e}});var Bte=ye((Otr,Ote)=>{Ote.exports=Ott;function Ott(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+h*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=h*i-l*n,e}});var Ute=ye((Btr,Nte)=>{Nte.exports=Btt;function Btt(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var Hte=ye((Ntr,Vte)=>{Vte.exports=Ntt;function Ntt(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,l=i+i,u=a+a,c=n*s,f=n*l,h=n*u,d=i*l,v=i*u,x=a*u,b=o*s,p=o*l,E=o*u;return e[0]=1-(d+x),e[1]=f+E,e[2]=h-p,e[3]=0,e[4]=f-E,e[5]=1-(c+x),e[6]=v+b,e[7]=0,e[8]=h+p,e[9]=v-b,e[10]=1-(c+d),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var jte=ye((Utr,Gte)=>{Gte.exports=Utt;function Utt(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Zte=ye((Vtr,Wte)=>{Wte.exports=Vtt;function Vtt(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Yte=ye((Htr,Xte)=>{Xte.exports=Htt;function Htt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Jte=ye((Gtr,Kte)=>{Kte.exports=Gtt;function Gtt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Qte=ye((jtr,$te)=>{$te.exports=jtt;function jtt(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Rq=ye((Wtr,ere)=>{ere.exports=Wtt;function Wtt(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,l=i+i,u=r*o,c=n*o,f=n*s,h=i*o,d=i*s,v=i*l,x=a*o,b=a*s,p=a*l;return e[0]=1-f-v,e[1]=c+p,e[2]=h-b,e[3]=0,e[4]=c-p,e[5]=1-u-v,e[6]=d+x,e[7]=0,e[8]=h+b,e[9]=d-x,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var rre=ye((Ztr,tre)=>{tre.exports=Ztt;function Ztt(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}});var nre=ye((Xtr,ire)=>{ire.exports=Xtt;function Xtt(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var ore=ye((Ytr,are)=>{are.exports=Ytt;function Ytt(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-s)*l*.5),e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var lre=ye((Ktr,sre)=>{sre.exports=Ktt;function Ktt(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}});var cre=ye((Jtr,ure)=>{var Jtt=Iq();ure.exports=$tt;function $tt(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v=t[0],x=t[1],b=t[2],p=n[0],E=n[1],k=n[2],A=r[0],L=r[1],_=r[2];return Math.abs(v-A)<1e-6&&Math.abs(x-L)<1e-6&&Math.abs(b-_)<1e-6?Jtt(e):(c=v-A,f=x-L,h=b-_,d=1/Math.sqrt(c*c+f*f+h*h),c*=d,f*=d,h*=d,i=E*h-k*f,a=k*c-p*h,o=p*f-E*c,d=Math.sqrt(i*i+a*a+o*o),d?(d=1/d,i*=d,a*=d,o*=d):(i=0,a=0,o=0),s=f*o-h*a,l=h*i-c*o,u=c*a-f*i,d=Math.sqrt(s*s+l*l+u*u),d?(d=1/d,s*=d,l*=d,u*=d):(s=0,l=0,u=0),e[0]=i,e[1]=s,e[2]=c,e[3]=0,e[4]=a,e[5]=l,e[6]=f,e[7]=0,e[8]=o,e[9]=u,e[10]=h,e[11]=0,e[12]=-(i*v+a*x+o*b),e[13]=-(s*v+l*x+u*b),e[14]=-(c*v+f*x+h*b),e[15]=1,e)}});var hre=ye(($tr,fre)=>{fre.exports=Qtt;function Qtt(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Dq=ye((Qtr,dre)=>{dre.exports={create:hte(),clone:vte(),copy:gte(),identity:Iq(),transpose:_te(),invert:bte(),adjoint:Tte(),determinant:Ste(),multiply:Ete(),translate:Cte(),scale:Pte(),rotate:Rte(),rotateX:zte(),rotateY:qte(),rotateZ:Bte(),fromRotation:Ute(),fromRotationTranslation:Hte(),fromScaling:jte(),fromTranslation:Zte(),fromXRotation:Yte(),fromYRotation:Jte(),fromZRotation:Qte(),fromQuat:Rq(),frustum:rre(),perspective:nre(),perspectiveFromFieldOfView:ore(),ortho:lre(),lookAt:cre(),str:hre()}});var _6=ye(Xf=>{"use strict";var ert=Dq();Xf.init2dArray=function(e,t){for(var r=new Array(e),n=0;n{"use strict";var trt=xa(),vre=G1(),rrt=_6(),irt=Dq();function nrt(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function art(e){var t=trt.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function pre(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function ort(e,t){gre("global",e,t)}function gre(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);if(!(i&&i.matches(".no-inline-styles"))){i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a?a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):vre.warn("addStyleRule failed"):vre.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function srt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&pre(r)}function lrt(e,t,r,n,i,a){var o=n.split(":"),s=i.split(":"),l="data-btn-style-event-added";a||(a=document),a.querySelectorAll(e).forEach(function(u){u.getAttribute(l)||(u.addEventListener("mouseenter",function(){var c=this.querySelector(r);c&&(c.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var c=this.querySelector(r);c&&(t&&this.matches(t)?c.style[o[0]]=o[1]:c.style[s[0]]=s[1])}),u.setAttribute(l,!0))})}function urt(e){var t=yre(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=mre(n);if(i){var a=rrt.convertCssMatrix(i);r=irt.multiply(r,r,a)}}),r}function mre(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function yre(e){for(var t=[];crt(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function crt(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function frt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}_re.exports={getGraphDiv:nrt,isPlotDiv:art,removeElement:pre,addStyleRule:ort,addRelatedStyleRule:gre,deleteRelatedStyleRule:srt,setStyleOnHover:lrt,getFullTransformMatrix:urt,getElementTransformMatrix:mre,getElementAndAncestors:yre,equalDomRects:frt}});var FS=ye((rrr,xre)=>{"use strict";xre.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var Bu=ye((irr,Ere)=>{"use strict";var wre=no().extendFlat,hrt=gy(),Tre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},Are={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},drt=Tre.flags.slice().concat(["fullReplot"]),vrt=Are.flags.slice().concat("layoutReplot");Ere.exports={traces:Tre,layout:Are,traceFlags:function(){return bre(drt)},layoutFlags:function(){return bre(vrt)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i{"use strict";zq.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};zq.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Fq=ye((arr,kre)=>{"use strict";kre.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Wo=ye(x6=>{"use strict";var Cre=Fq(),orr=Cre.FORMAT_LINK,srr=Cre.DATE_FORMAT_LINK;function qq(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var n=[],i=0;i{"use strict";function j1(e,t){return t?t.d2l(e):e}function Lre(e,t){return t?t.l2d(e):e}function prt(e){return e.x0}function grt(e){return e.x1}function mrt(e){return e.y0}function yrt(e){return e.y1}function Pre(e){return e.x0shift||0}function Ire(e){return e.x1shift||0}function Rre(e){return e.y0shift||0}function Dre(e){return e.y1shift||0}function b6(e,t){return j1(e.x1,t)+Ire(e)-j1(e.x0,t)-Pre(e)}function w6(e,t,r){return j1(e.y1,r)+Dre(e)-j1(e.y0,r)-Rre(e)}function _rt(e,t){return Math.abs(b6(e,t))}function xrt(e,t,r){return Math.abs(w6(e,t,r))}function brt(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(b6(e,t),2)+Math.pow(w6(e,t,r),2))}function wrt(e,t){return Lre((j1(e.x1,t)+Ire(e)+j1(e.x0,t)+Pre(e))/2,t)}function Trt(e,t,r){return Lre((j1(e.y1,r)+Dre(e)+j1(e.y0,r)+Rre(e))/2,r)}function Art(e,t,r){return e.type!=="line"?void 0:w6(e,t,r)/b6(e,t)}zre.exports={x0:prt,x1:grt,y0:mrt,y1:yrt,slope:Art,dx:b6,dy:w6,width:_rt,height:xrt,length:brt,xcenter:wrt,ycenter:Trt}});var Ore=ye((crr,qre)=>{"use strict";var Srt=Bu().overrideAll,cb=vl(),Fre=Su(),Mrt=Ed().dash,W1=no().extendFlat,Ert=Wo().shapeTexttemplateAttrs,krt=T6();qre.exports=Srt({newshape:{visible:W1({},cb.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:W1({},cb.legend,{}),legendgroup:W1({},cb.legendgroup,{}),legendgrouptitle:{text:W1({},cb.legendgrouptitle.text,{}),font:Fre({})},legendrank:W1({},cb.legendrank,{}),legendwidth:W1({},cb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:W1({},Mrt,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:W1({},cb.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:Ert({newshape:!0},{keys:Object.keys(krt)}),font:Fre({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Nre=ye((frr,Bre)=>{"use strict";var Crt=Ed().dash,Lrt=no().extendFlat;Bre.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:Lrt({},Crt,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var A6=ye((hrr,Ure)=>{"use strict";Ure.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var s3=ye((drr,jre)=>{"use strict";var Oq=Su(),Prt=FS(),S6=dh(),Vre=Ore(),Hre=Nre(),Irt=A6(),Gre=no().extendFlat,M6=Oq({editType:"calc"});M6.family.dflt='"Open Sans", verdana, arial, sans-serif';M6.size.dflt=12;M6.color.dflt=S6.defaultLine;jre.exports={font:M6,title:{text:{valType:"string",editType:"layoutstyle"},font:Oq({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:Oq({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Gre(Irt({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:S6.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:S6.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:S6.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:Vre.newshape,activeshape:Vre.activeshape,newselection:Hre.newselection,activeselection:Hre.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Gre({},Prt.transition,{editType:"none"})}});var Wre=Ll(()=>{});var Rrt={};var Zre=Ll(()=>{Wre()});var ba=ye(qs=>{"use strict";var l3=G1(),Xre=y6(),Yre=Pq(),Drt=gy(),zrt=zS().addStyleRule,Kre=no(),Frt=vl(),qrt=s3(),Ort=Kre.extendFlat,Bq=Kre.extendDeepAll;qs.modules={};qs.allCategories={};qs.allTypes=[];qs.subplotsRegistry={};qs.componentsRegistry={};qs.layoutArrayContainers=[];qs.layoutArrayRegexes=[];qs.traceLayoutAttributes={};qs.localeRegistry={};qs.apiMethodRegistry={};qs.collectableSubplotTypes=null;qs.register=function(t){if(qs.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r{"use strict";var Grt=e3().timeFormat,sie=uo(),Nq=G1(),X1=r3().mod,f3=es(),_0=f3.BADNUM,wp=f3.ONEDAY,qS=f3.ONEHOUR,Z1=f3.ONEMIN,c3=f3.ONESEC,OS=f3.EPOCHJD,my=ba(),tie=e3().utcFormat,jrt=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,Wrt=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,rie=new Date().getFullYear()-70;function yy(e){return e&&my.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Yf.dateTick0=function(e,t){var r=Zrt(e,!!t);if(t<2)return r;var n=Yf.dateTime2ms(r,e);return n+=wp*(t-1),Yf.ms2DateTime(n,0,e)};function Zrt(e,t){return yy(e)?t?my.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:my.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}Yf.dfltRange=function(e){return yy(e)?my.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Yf.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var k6,C6;Yf.dateTime2ms=function(e,t){if(Yf.isJSDate(e)){var r=e.getTimezoneOffset()*Z1,n=(e.getUTCMinutes()-e.getMinutes())*Z1+(e.getUTCSeconds()-e.getSeconds())*c3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*Z1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=k6&&e<=C6?e:_0}if(typeof e!="string"&&typeof e!="number")return _0;e=String(e);var a=yy(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.substr(1),t="");var s=a&&t.substr(0,7)==="chinese",l=e.match(s?Wrt:jrt);if(!l)return _0;var u=l[1],c=l[3]||"1",f=Number(l[5]||1),h=Number(l[7]||0),d=Number(l[9]||0),v=Number(l[11]||0);if(a){if(u.length===2)return _0;u=Number(u);var x;try{var b=my.getComponentMethod("calendars","getCal")(t);if(s){var p=c.charAt(c.length-1)==="i";c=parseInt(c,10),x=b.newDate(u,b.toMonthIndex(u,c,p),f)}else x=b.newDate(u,Number(c),f)}catch(k){return _0}return x?(x.toJD()-OS)*wp+h*qS+d*Z1+v*c3:_0}u.length===2?u=(Number(u)+2e3-rie)%100+rie:u=Number(u),c-=1;var E=new Date(Date.UTC(2e3,c,f,h,d));return E.setUTCFullYear(u),E.getUTCMonth()!==c||E.getUTCDate()!==f?_0:E.getTime()+v*c3};k6=Yf.MIN_MS=Yf.dateTime2ms("-9999");C6=Yf.MAX_MS=Yf.dateTime2ms("9999-12-31 23:59:59.9999");Yf.isDateTime=function(e,t){return Yf.dateTime2ms(e,t)!==_0};function u3(e,t){return String(e+Math.pow(10,t)).substr(1)}var E6=90*wp,iie=3*qS,nie=5*Z1;Yf.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=k6&&e<=C6))return _0;t||(t=0);var n=Math.floor(X1(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,l,u,c;if(yy(r)){var f=Math.floor(i/wp)+OS,h=Math.floor(X1(e,wp));try{a=my.getComponentMethod("calendars","getCal")(r).fromJD(f).formatDate("yyyy-mm-dd")}catch(d){a=tie("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t=k6+wp&&e<=C6-wp))return _0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=Grt("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return lie(n,i,a,o,s)};function lie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+u3(t,2)+":"+u3(r,2),(n||i)&&(e+=":"+u3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+u3(i,a)}return e}Yf.cleanDate=function(e,t,r){if(e===_0)return t;if(Yf.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(yy(r))return Nq.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=Yf.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!Yf.isDateTime(e,r))return Nq.error("unrecognized date",e),t;return e};var Xrt=/%\d?f/g,Yrt=/%h/g,Krt={1:"1",2:"1",3:"2",4:"2"};function aie(e,t,r,n){e=e.replace(Xrt,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(Yrt,function(){return Krt[r("%q")(i)]}),yy(n))try{e=my.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var Jrt=[59,59.9,59.99,59.999,59.9999];function $rt(e,t){var r=X1(e+.05,wp),n=u3(Math.floor(r/qS),2)+":"+u3(X1(Math.floor(r/Z1),60),2);if(t!=="M"){sie(t)||(t=0);var i=Math.min(X1(e/c3,60),Jrt[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}Yf.formatDate=function(e,t,r,n,i,a){if(i=yy(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+` diff --git a/package-lock.json b/package-lock.json index 9dd1d3a14a0..e011d80e3d8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "plotly.js", - "version": "3.0.3", + "version": "3.0.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "plotly.js", - "version": "3.0.3", + "version": "3.0.2", "license": "MIT", "dependencies": { "@plotly/d3": "3.8.2", diff --git a/package.json b/package.json index abd6f1014fd..58c136fc172 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "plotly.js", - "version": "3.0.3", + "version": "3.0.2", "description": "The open source javascript graphing library that powers plotly", "license": "MIT", "main": "./lib/index.js", diff --git a/src/version.js b/src/version.js index 760528263e3..0e2bbf385df 100644 --- a/src/version.js +++ b/src/version.js @@ -1,4 +1,4 @@ 'use strict'; // package version injected by `npm run preprocess` -exports.version = '3.0.3'; +exports.version = '3.0.2';